sync
[gir-1.1] / Gtk-2.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.1"
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="2.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="2.0"
20              shared-library="libgtk-x11-2.0.so.0"
21              c:prefix="Gtk">
22     <alias name="Allocation" target="Gdk.Rectangle" c:type="GtkAllocation"/>
23     <alias name="ClassInitFunc"
24            target="GObject.BaseInitFunc"
25            c:type="GtkClassInitFunc"/>
26     <alias name="EnumValue" target="GObject.EnumValue" c:type="GtkEnumValue"/>
27     <alias name="FlagValue" target="GObject.FlagsValue" c:type="GtkFlagValue"/>
28     <alias name="FundamentalType" target="GType" c:type="GtkFundamentalType"/>
29     <alias name="ObjectInitFunc"
30            target="GObject.InstanceInitFunc"
31            c:type="GtkObjectInitFunc"/>
32     <alias name="SignalMarshaller"
33            target="GObject.SignalCMarshaller"
34            c:type="GtkSignalMarshaller"/>
35     <alias name="Type" target="GType" c:type="GtkType"/>
36     <alias name="TypeClass" target="GObject.TypeClass" c:type="GtkTypeClass"/>
37     <alias name="TypeObject"
38            target="GObject.TypeInstance"
39            c:type="GtkTypeObject"/>
40     <constant name="ARG_READWRITE" value="0">
41       <type name="int"/>
42     </constant>
43     <class name="AboutDialog"
44            c:type="GtkAboutDialog"
45            parent="Dialog"
46            glib:type-name="GtkAboutDialog"
47            glib:get-type="gtk_about_dialog_get_type"
48            glib:type-struct="AboutDialogClass">
49       <doc xml:whitespace="preserve">The &lt;structname&gt;GtkAboutDialog&lt;/structname&gt; struct contains
50 only private fields and should not be directly accessed.</doc>
51       <implements name="Atk.ImplementorIface"/>
52       <implements name="Buildable"/>
53       <constructor name="new"
54                    c:identifier="gtk_about_dialog_new"
55                    version="2.6">
56         <doc xml:whitespace="preserve">Creates a new #GtkAboutDialog.</doc>
57         <return-value transfer-ownership="full">
58           <doc xml:whitespace="preserve">a newly created #GtkAboutDialog</doc>
59           <type name="AboutDialog" c:type="GtkWidget*"/>
60         </return-value>
61       </constructor>
62       <function name="set_email_hook"
63                 c:identifier="gtk_about_dialog_set_email_hook"
64                 version="2.6">
65         <doc xml:whitespace="preserve">Installs a global function to be called whenever the user activates an
66 email link in an about dialog.
67 Since 2.18 there exists a default function which uses gtk_show_uri(). To
68 deactivate it, you can pass %NULL for @func.</doc>
69         <return-value transfer-ownership="full">
70           <doc xml:whitespace="preserve">the previous email hook.</doc>
71           <type name="AboutDialogActivateLinkFunc"
72                 c:type="GtkAboutDialogActivateLinkFunc"/>
73         </return-value>
74         <parameters>
75           <parameter name="func"
76                      transfer-ownership="none"
77                      scope="notified"
78                      closure="1"
79                      destroy="2">
80             <doc xml:whitespace="preserve">a function to call when an email link is activated.</doc>
81             <type name="AboutDialogActivateLinkFunc"
82                   c:type="GtkAboutDialogActivateLinkFunc"/>
83           </parameter>
84           <parameter name="data" transfer-ownership="none">
85             <doc xml:whitespace="preserve">data to pass to @func</doc>
86             <type name="any" c:type="gpointer"/>
87           </parameter>
88           <parameter name="destroy" transfer-ownership="none" scope="call">
89             <doc xml:whitespace="preserve">#GDestroyNotify for @data</doc>
90             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
91           </parameter>
92         </parameters>
93       </function>
94       <function name="set_url_hook"
95                 c:identifier="gtk_about_dialog_set_url_hook"
96                 version="2.6">
97         <doc xml:whitespace="preserve">Installs a global function to be called whenever the user activates a
98 URL link in an about dialog.
99 Since 2.18 there exists a default function which uses gtk_show_uri(). To
100 deactivate it, you can pass %NULL for @func.</doc>
101         <return-value transfer-ownership="full">
102           <doc xml:whitespace="preserve">the previous URL hook.</doc>
103           <type name="AboutDialogActivateLinkFunc"
104                 c:type="GtkAboutDialogActivateLinkFunc"/>
105         </return-value>
106         <parameters>
107           <parameter name="func"
108                      transfer-ownership="none"
109                      scope="notified"
110                      closure="1"
111                      destroy="2">
112             <doc xml:whitespace="preserve">a function to call when a URL link is activated.</doc>
113             <type name="AboutDialogActivateLinkFunc"
114                   c:type="GtkAboutDialogActivateLinkFunc"/>
115           </parameter>
116           <parameter name="data" transfer-ownership="none">
117             <doc xml:whitespace="preserve">data to pass to @func</doc>
118             <type name="any" c:type="gpointer"/>
119           </parameter>
120           <parameter name="destroy" transfer-ownership="none" scope="call">
121             <doc xml:whitespace="preserve">#GDestroyNotify for @data</doc>
122             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
123           </parameter>
124         </parameters>
125       </function>
126       <method name="get_name"
127               c:identifier="gtk_about_dialog_get_name"
128               version="2.6"
129               deprecated="Use gtk_about_dialog_get_program_name() instead."
130               deprecated-version="2.12">
131         <doc xml:whitespace="preserve">Returns the program name displayed in the about dialog.
132 dialog and must not be modified.</doc>
133         <return-value transfer-ownership="none">
134           <doc xml:whitespace="preserve">The program name. The string is owned by the about</doc>
135           <type name="utf8" c:type="gchar*"/>
136         </return-value>
137       </method>
138       <method name="set_name"
139               c:identifier="gtk_about_dialog_set_name"
140               version="2.6"
141               deprecated="Use gtk_about_dialog_set_program_name() instead."
142               deprecated-version="2.12">
143         <doc xml:whitespace="preserve">Sets the name to display in the about dialog.
144 If this is not set, it defaults to g_get_application_name().</doc>
145         <return-value transfer-ownership="none">
146           <type name="none" c:type="void"/>
147         </return-value>
148         <parameters>
149           <parameter name="name" transfer-ownership="none" allow-none="1">
150             <doc xml:whitespace="preserve">the program name</doc>
151             <type name="utf8" c:type="gchar*"/>
152           </parameter>
153         </parameters>
154       </method>
155       <method name="get_program_name"
156               c:identifier="gtk_about_dialog_get_program_name"
157               version="2.12">
158         <doc xml:whitespace="preserve">Returns the program name displayed in the about dialog.
159 dialog and must not be modified.</doc>
160         <return-value transfer-ownership="none">
161           <doc xml:whitespace="preserve">The program name. The string is owned by the about</doc>
162           <type name="utf8" c:type="gchar*"/>
163         </return-value>
164       </method>
165       <method name="set_program_name"
166               c:identifier="gtk_about_dialog_set_program_name"
167               version="2.12">
168         <doc xml:whitespace="preserve">Sets the name to display in the about dialog.
169 If this is not set, it defaults to g_get_application_name().</doc>
170         <return-value transfer-ownership="none">
171           <type name="none" c:type="void"/>
172         </return-value>
173         <parameters>
174           <parameter name="name" transfer-ownership="none">
175             <doc xml:whitespace="preserve">the program name</doc>
176             <type name="utf8" c:type="gchar*"/>
177           </parameter>
178         </parameters>
179       </method>
180       <method name="get_version"
181               c:identifier="gtk_about_dialog_get_version"
182               version="2.6">
183         <doc xml:whitespace="preserve">Returns the version string.
184 dialog and must not be modified.</doc>
185         <return-value transfer-ownership="none">
186           <doc xml:whitespace="preserve">The version string. The string is owned by the about</doc>
187           <type name="utf8" c:type="gchar*"/>
188         </return-value>
189       </method>
190       <method name="set_version"
191               c:identifier="gtk_about_dialog_set_version"
192               version="2.6">
193         <doc xml:whitespace="preserve">Sets the version string to display in the about dialog.</doc>
194         <return-value transfer-ownership="none">
195           <type name="none" c:type="void"/>
196         </return-value>
197         <parameters>
198           <parameter name="version" transfer-ownership="none" allow-none="1">
199             <doc xml:whitespace="preserve">the version string</doc>
200             <type name="utf8" c:type="gchar*"/>
201           </parameter>
202         </parameters>
203       </method>
204       <method name="get_copyright"
205               c:identifier="gtk_about_dialog_get_copyright"
206               version="2.6">
207         <doc xml:whitespace="preserve">Returns the copyright string.
208 dialog and must not be modified.</doc>
209         <return-value transfer-ownership="none">
210           <doc xml:whitespace="preserve">The copyright string. The string is owned by the about</doc>
211           <type name="utf8" c:type="gchar*"/>
212         </return-value>
213       </method>
214       <method name="set_copyright"
215               c:identifier="gtk_about_dialog_set_copyright"
216               version="2.6">
217         <doc xml:whitespace="preserve">Sets the copyright string to display in the about dialog.
218 This should be a short string of one or two lines.</doc>
219         <return-value transfer-ownership="none">
220           <type name="none" c:type="void"/>
221         </return-value>
222         <parameters>
223           <parameter name="copyright" transfer-ownership="none">
224             <doc xml:whitespace="preserve">(allow-none) the copyright string</doc>
225             <type name="utf8" c:type="gchar*"/>
226           </parameter>
227         </parameters>
228       </method>
229       <method name="get_comments"
230               c:identifier="gtk_about_dialog_get_comments"
231               version="2.6">
232         <doc xml:whitespace="preserve">Returns the comments string.
233 dialog and must not be modified.</doc>
234         <return-value transfer-ownership="none">
235           <doc xml:whitespace="preserve">The comments. The string is owned by the about</doc>
236           <type name="utf8" c:type="gchar*"/>
237         </return-value>
238       </method>
239       <method name="set_comments"
240               c:identifier="gtk_about_dialog_set_comments"
241               version="2.6">
242         <doc xml:whitespace="preserve">Sets the comments string to display in the about dialog.
243 This should be a short string of one or two lines.</doc>
244         <return-value transfer-ownership="none">
245           <type name="none" c:type="void"/>
246         </return-value>
247         <parameters>
248           <parameter name="comments" transfer-ownership="none" allow-none="1">
249             <doc xml:whitespace="preserve">a comments string</doc>
250             <type name="utf8" c:type="gchar*"/>
251           </parameter>
252         </parameters>
253       </method>
254       <method name="get_license"
255               c:identifier="gtk_about_dialog_get_license"
256               version="2.6">
257         <doc xml:whitespace="preserve">Returns the license information.
258 dialog and must not be modified.</doc>
259         <return-value transfer-ownership="none">
260           <doc xml:whitespace="preserve">The license information. The string is owned by the about</doc>
261           <type name="utf8" c:type="gchar*"/>
262         </return-value>
263       </method>
264       <method name="set_license"
265               c:identifier="gtk_about_dialog_set_license"
266               version="2.6">
267         <doc xml:whitespace="preserve">Sets the license information to be displayed in the secondary
268 license dialog. If @license is %NULL, the license button is
269 hidden.</doc>
270         <return-value transfer-ownership="none">
271           <type name="none" c:type="void"/>
272         </return-value>
273         <parameters>
274           <parameter name="license" transfer-ownership="none" allow-none="1">
275             <doc xml:whitespace="preserve">the license information or %NULL</doc>
276             <type name="utf8" c:type="gchar*"/>
277           </parameter>
278         </parameters>
279       </method>
280       <method name="get_wrap_license"
281               c:identifier="gtk_about_dialog_get_wrap_license"
282               version="2.8">
283         <doc xml:whitespace="preserve">Returns whether the license text in @about is
284 automatically wrapped.</doc>
285         <return-value transfer-ownership="none">
286           <doc xml:whitespace="preserve">%TRUE if the license text is wrapped</doc>
287           <type name="boolean" c:type="gboolean"/>
288         </return-value>
289       </method>
290       <method name="set_wrap_license"
291               c:identifier="gtk_about_dialog_set_wrap_license"
292               version="2.8">
293         <doc xml:whitespace="preserve">Sets whether the license text in @about is
294 automatically wrapped.</doc>
295         <return-value transfer-ownership="none">
296           <type name="none" c:type="void"/>
297         </return-value>
298         <parameters>
299           <parameter name="wrap_license" transfer-ownership="none">
300             <doc xml:whitespace="preserve">whether to wrap the license</doc>
301             <type name="boolean" c:type="gboolean"/>
302           </parameter>
303         </parameters>
304       </method>
305       <method name="get_website"
306               c:identifier="gtk_about_dialog_get_website"
307               version="2.6">
308         <doc xml:whitespace="preserve">Returns the website URL.
309 dialog and must not be modified.</doc>
310         <return-value transfer-ownership="none">
311           <doc xml:whitespace="preserve">The website URL. The string is owned by the about</doc>
312           <type name="utf8" c:type="gchar*"/>
313         </return-value>
314       </method>
315       <method name="set_website"
316               c:identifier="gtk_about_dialog_set_website"
317               version="2.6">
318         <doc xml:whitespace="preserve">Sets the URL to use for the website link.
319 Note that that the hook functions need to be set up
320 before calling this function.</doc>
321         <return-value transfer-ownership="none">
322           <type name="none" c:type="void"/>
323         </return-value>
324         <parameters>
325           <parameter name="website" transfer-ownership="none" allow-none="1">
326             <doc xml:whitespace="preserve">//"</doc>
327             <type name="utf8" c:type="gchar*"/>
328           </parameter>
329         </parameters>
330       </method>
331       <method name="get_website_label"
332               c:identifier="gtk_about_dialog_get_website_label"
333               version="2.6">
334         <doc xml:whitespace="preserve">Returns the label used for the website link.
335 owned by the about dialog and must not be modified.</doc>
336         <return-value transfer-ownership="none">
337           <doc xml:whitespace="preserve">The label used for the website link. The string is</doc>
338           <type name="utf8" c:type="gchar*"/>
339         </return-value>
340       </method>
341       <method name="set_website_label"
342               c:identifier="gtk_about_dialog_set_website_label"
343               version="2.6">
344         <doc xml:whitespace="preserve">Sets the label to be used for the website link.
345 It defaults to the website URL.</doc>
346         <return-value transfer-ownership="none">
347           <type name="none" c:type="void"/>
348         </return-value>
349         <parameters>
350           <parameter name="website_label" transfer-ownership="none">
351             <doc xml:whitespace="preserve">the label used for the website link</doc>
352             <type name="utf8" c:type="gchar*"/>
353           </parameter>
354         </parameters>
355       </method>
356       <method name="get_authors"
357               c:identifier="gtk_about_dialog_get_authors"
358               version="2.6">
359         <doc xml:whitespace="preserve">Returns the string which are displayed in the authors tab
360 of the secondary credits dialog.
361 the authors. The array is owned by the about dialog
362 and must not be modified.</doc>
363         <return-value transfer-ownership="full">
364           <doc xml:whitespace="preserve">A %NULL-terminated string array containing</doc>
365           <array c:type="gchar**">
366             <type name="utf8"/>
367           </array>
368         </return-value>
369       </method>
370       <method name="set_authors"
371               c:identifier="gtk_about_dialog_set_authors"
372               version="2.6">
373         <doc xml:whitespace="preserve">Sets the strings which are displayed in the authors tab
374 of the secondary credits dialog.</doc>
375         <return-value transfer-ownership="none">
376           <type name="none" c:type="void"/>
377         </return-value>
378         <parameters>
379           <parameter name="authors" transfer-ownership="none">
380             <doc xml:whitespace="preserve">a %NULL-terminated array of strings</doc>
381             <array c:type="gchar**">
382               <type name="utf8"/>
383             </array>
384           </parameter>
385         </parameters>
386       </method>
387       <method name="get_documenters"
388               c:identifier="gtk_about_dialog_get_documenters"
389               version="2.6">
390         <doc xml:whitespace="preserve">Returns the string which are displayed in the documenters
391 tab of the secondary credits dialog.
392 the documenters. The array is owned by the about dialog
393 and must not be modified.</doc>
394         <return-value transfer-ownership="full">
395           <doc xml:whitespace="preserve">A %NULL-terminated string array containing</doc>
396           <array c:type="gchar**">
397             <type name="utf8"/>
398           </array>
399         </return-value>
400       </method>
401       <method name="set_documenters"
402               c:identifier="gtk_about_dialog_set_documenters"
403               version="2.6">
404         <doc xml:whitespace="preserve">Sets the strings which are displayed in the documenters tab
405 of the secondary credits dialog.</doc>
406         <return-value transfer-ownership="none">
407           <type name="none" c:type="void"/>
408         </return-value>
409         <parameters>
410           <parameter name="documenters" transfer-ownership="none">
411             <doc xml:whitespace="preserve">a %NULL-terminated array of strings</doc>
412             <array c:type="gchar**">
413               <type name="utf8"/>
414             </array>
415           </parameter>
416         </parameters>
417       </method>
418       <method name="get_artists"
419               c:identifier="gtk_about_dialog_get_artists"
420               version="2.6">
421         <doc xml:whitespace="preserve">Returns the string which are displayed in the artists tab
422 of the secondary credits dialog.
423 the artists. The array is owned by the about dialog
424 and must not be modified.</doc>
425         <return-value transfer-ownership="full">
426           <doc xml:whitespace="preserve">A %NULL-terminated string array containing</doc>
427           <array c:type="gchar**">
428             <type name="utf8"/>
429           </array>
430         </return-value>
431       </method>
432       <method name="set_artists"
433               c:identifier="gtk_about_dialog_set_artists"
434               version="2.6">
435         <doc xml:whitespace="preserve">Sets the strings which are displayed in the artists tab
436 of the secondary credits dialog.</doc>
437         <return-value transfer-ownership="none">
438           <type name="none" c:type="void"/>
439         </return-value>
440         <parameters>
441           <parameter name="artists" transfer-ownership="none">
442             <doc xml:whitespace="preserve">a %NULL-terminated array of strings</doc>
443             <array c:type="gchar**">
444               <type name="utf8"/>
445             </array>
446           </parameter>
447         </parameters>
448       </method>
449       <method name="get_translator_credits"
450               c:identifier="gtk_about_dialog_get_translator_credits"
451               version="2.6">
452         <doc xml:whitespace="preserve">Returns the translator credits string which is displayed
453 in the translators tab of the secondary credits dialog.
454 owned by the about dialog and must not be modified.</doc>
455         <return-value transfer-ownership="none">
456           <doc xml:whitespace="preserve">The translator credits string. The string is</doc>
457           <type name="utf8" c:type="gchar*"/>
458         </return-value>
459       </method>
460       <method name="set_translator_credits"
461               c:identifier="gtk_about_dialog_set_translator_credits"
462               version="2.6">
463         <doc xml:whitespace="preserve">Sets the translator credits string which is displayed in
464 the translators tab of the secondary credits dialog.
465 The intended use for this string is to display the translator
466 of the language which is currently used in the user interface.
467 Using gettext(), a simple way to achieve that is to mark the
468 string for translation:
469 |[
470 gtk_about_dialog_set_translator_credits (about, _("translator-credits"));
471 ]|
472 It is a good idea to use the customary msgid "translator-credits" for this
473 purpose, since translators will already know the purpose of that msgid, and
474 since #GtkAboutDialog will detect if "translator-credits" is untranslated
475 and hide the tab.</doc>
476         <return-value transfer-ownership="none">
477           <type name="none" c:type="void"/>
478         </return-value>
479         <parameters>
480           <parameter name="translator_credits"
481                      transfer-ownership="none"
482                      allow-none="1">
483             <doc xml:whitespace="preserve">the translator credits</doc>
484             <type name="utf8" c:type="gchar*"/>
485           </parameter>
486         </parameters>
487       </method>
488       <method name="get_logo"
489               c:identifier="gtk_about_dialog_get_logo"
490               version="2.6">
491         <doc xml:whitespace="preserve">Returns the pixbuf displayed as logo in the about dialog.
492 owned by the about dialog. If you want to keep a reference
493 to it, you have to call g_object_ref() on it.</doc>
494         <return-value transfer-ownership="full">
495           <doc xml:whitespace="preserve">the pixbuf displayed as logo. The pixbuf is</doc>
496           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
497         </return-value>
498       </method>
499       <method name="set_logo"
500               c:identifier="gtk_about_dialog_set_logo"
501               version="2.6">
502         <doc xml:whitespace="preserve">Sets the pixbuf to be displayed as logo in the about dialog.
503 If it is %NULL, the default window icon set with
504 gtk_window_set_default_icon() will be used.</doc>
505         <return-value transfer-ownership="none">
506           <type name="none" c:type="void"/>
507         </return-value>
508         <parameters>
509           <parameter name="logo" transfer-ownership="none" allow-none="1">
510             <doc xml:whitespace="preserve">a #GdkPixbuf, or %NULL</doc>
511             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
512           </parameter>
513         </parameters>
514       </method>
515       <method name="get_logo_icon_name"
516               c:identifier="gtk_about_dialog_get_logo_icon_name"
517               version="2.6">
518         <doc xml:whitespace="preserve">Returns the icon name displayed as logo in the about dialog.
519 owned by the dialog. If you want to keep a reference
520 to it, you have to call g_strdup() on it.</doc>
521         <return-value transfer-ownership="none">
522           <doc xml:whitespace="preserve">the icon name displayed as logo. The string is</doc>
523           <type name="utf8" c:type="gchar*"/>
524         </return-value>
525       </method>
526       <method name="set_logo_icon_name"
527               c:identifier="gtk_about_dialog_set_logo_icon_name"
528               version="2.6">
529         <doc xml:whitespace="preserve">Sets the pixbuf to be displayed as logo in the about dialog.
530 If it is %NULL, the default window icon set with
531 gtk_window_set_default_icon() will be used.</doc>
532         <return-value transfer-ownership="none">
533           <type name="none" c:type="void"/>
534         </return-value>
535         <parameters>
536           <parameter name="icon_name" transfer-ownership="none" allow-none="1">
537             <doc xml:whitespace="preserve">an icon name, or %NULL</doc>
538             <type name="utf8" c:type="gchar*"/>
539           </parameter>
540         </parameters>
541       </method>
542       <property name="artists"
543                 version="2.6"
544                 writable="1"
545                 transfer-ownership="none">
546         <doc xml:whitespace="preserve">The people who contributed artwork to the program, as a %NULL-terminated
547 array of strings. Each string may contain email addresses and URLs, which
548 will be displayed as links, see the introduction for more details.</doc>
549         <type name="GObject.Strv" c:type="GStrv"/>
550       </property>
551       <property name="authors"
552                 version="2.6"
553                 writable="1"
554                 transfer-ownership="none">
555         <doc xml:whitespace="preserve">The authors of the program, as a %NULL-terminated array of strings.
556 Each string may contain email addresses and URLs, which will be displayed
557 as links, see the introduction for more details.</doc>
558         <type name="GObject.Strv" c:type="GStrv"/>
559       </property>
560       <property name="comments"
561                 version="2.6"
562                 writable="1"
563                 transfer-ownership="none">
564         <doc xml:whitespace="preserve">Comments about the program. This string is displayed in a label
565 in the main dialog, thus it should be a short explanation of
566 the main purpose of the program, not a detailed list of features.</doc>
567         <type name="utf8" c:type="gchararray"/>
568       </property>
569       <property name="copyright"
570                 version="2.6"
571                 writable="1"
572                 transfer-ownership="none">
573         <doc xml:whitespace="preserve">Copyright information for the program.</doc>
574         <type name="utf8" c:type="gchararray"/>
575       </property>
576       <property name="documenters"
577                 version="2.6"
578                 writable="1"
579                 transfer-ownership="none">
580         <doc xml:whitespace="preserve">The people documenting the program, as a %NULL-terminated array of strings.
581 Each string may contain email addresses and URLs, which will be displayed
582 as links, see the introduction for more details.</doc>
583         <type name="GObject.Strv" c:type="GStrv"/>
584       </property>
585       <property name="license"
586                 version="2.6"
587                 writable="1"
588                 transfer-ownership="none">
589         <doc xml:whitespace="preserve">The license of the program. This string is displayed in a
590 text view in a secondary dialog, therefore it is fine to use
591 a long multi-paragraph text. Note that the text is only wrapped
592 in the text view if the "wrap-license" property is set to %TRUE;
593 otherwise the text itself must contain the intended linebreaks.</doc>
594         <type name="utf8" c:type="gchararray"/>
595       </property>
596       <property name="logo"
597                 version="2.6"
598                 writable="1"
599                 transfer-ownership="none">
600         <doc xml:whitespace="preserve">A logo for the about box. If this is not set, it defaults to
601 gtk_window_get_default_icon_list().</doc>
602         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf"/>
603       </property>
604       <property name="logo-icon-name"
605                 version="2.6"
606                 writable="1"
607                 transfer-ownership="none">
608         <doc xml:whitespace="preserve">A named icon to use as the logo for the about box. This property
609 overrides the #GtkAboutDialog:logo property.</doc>
610         <type name="utf8" c:type="gchararray"/>
611       </property>
612       <property name="program-name"
613                 version="2.12"
614                 writable="1"
615                 transfer-ownership="none">
616         <doc xml:whitespace="preserve">The name of the program.
617 If this is not set, it defaults to g_get_application_name().</doc>
618         <type name="utf8" c:type="gchararray"/>
619       </property>
620       <property name="translator-credits"
621                 version="2.6"
622                 writable="1"
623                 transfer-ownership="none">
624         <doc xml:whitespace="preserve">Credits to the translators. This string should be marked as translatable.
625 The string may contain email addresses and URLs, which will be displayed
626 as links, see the introduction for more details.</doc>
627         <type name="utf8" c:type="gchararray"/>
628       </property>
629       <property name="version"
630                 version="2.6"
631                 writable="1"
632                 transfer-ownership="none">
633         <doc xml:whitespace="preserve">The version of the program.</doc>
634         <type name="utf8" c:type="gchararray"/>
635       </property>
636       <property name="website"
637                 version="2.6"
638                 writable="1"
639                 transfer-ownership="none">
640         <doc xml:whitespace="preserve">The URL for the link to the website of the program.
641 This should be a string starting with "http://.</doc>
642         <type name="utf8" c:type="gchararray"/>
643       </property>
644       <property name="website-label"
645                 version="2.6"
646                 writable="1"
647                 transfer-ownership="none">
648         <doc xml:whitespace="preserve">The label for the link to the website of the program. If this is not set,
649 it defaults to the URL specified in the #GtkAboutDialog:website property.</doc>
650         <type name="utf8" c:type="gchararray"/>
651       </property>
652       <property name="wrap-license"
653                 version="2.8"
654                 writable="1"
655                 transfer-ownership="none">
656         <doc xml:whitespace="preserve">Whether to wrap the text in the license dialog.</doc>
657         <type name="boolean" c:type="gboolean"/>
658       </property>
659       <field name="parent_instance">
660         <type name="Dialog" c:type="GtkDialog"/>
661       </field>
662       <field name="private_data">
663         <type name="any" c:type="gpointer"/>
664       </field>
665     </class>
666     <callback name="AboutDialogActivateLinkFunc"
667               c:type="GtkAboutDialogActivateLinkFunc">
668       <doc xml:whitespace="preserve">The type of a function which is called when a URL or email
669 link is activated.</doc>
670       <return-value transfer-ownership="none">
671         <type name="none" c:type="void"/>
672       </return-value>
673       <parameters>
674         <parameter name="about" transfer-ownership="none">
675           <doc xml:whitespace="preserve">the #GtkAboutDialog in which the link was activated</doc>
676           <type name="AboutDialog" c:type="GtkAboutDialog*"/>
677         </parameter>
678         <parameter name="link_" transfer-ownership="none">
679           <doc xml:whitespace="preserve">the URL or email address to which the activated link points</doc>
680           <type name="utf8" c:type="gchar*"/>
681         </parameter>
682         <parameter name="data" transfer-ownership="none">
683           <doc xml:whitespace="preserve">user data that was passed when the function was registered with gtk_about_dialog_set_email_hook() or gtk_about_dialog_set_url_hook()</doc>
684           <type name="any" c:type="gpointer"/>
685         </parameter>
686       </parameters>
687     </callback>
688     <record name="AboutDialogClass"
689             c:type="GtkAboutDialogClass"
690             glib:is-gtype-struct-for="AboutDialog">
691       <field name="parent_class">
692         <type name="DialogClass" c:type="GtkDialogClass"/>
693       </field>
694       <field name="gtk_reserved1">
695         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
696           <return-value transfer-ownership="none">
697             <type name="none" c:type="void"/>
698           </return-value>
699         </callback>
700       </field>
701       <field name="gtk_reserved2">
702         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
703           <return-value transfer-ownership="none">
704             <type name="none" c:type="void"/>
705           </return-value>
706         </callback>
707       </field>
708       <field name="gtk_reserved3">
709         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
710           <return-value transfer-ownership="none">
711             <type name="none" c:type="void"/>
712           </return-value>
713         </callback>
714       </field>
715       <field name="gtk_reserved4">
716         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
717           <return-value transfer-ownership="none">
718             <type name="none" c:type="void"/>
719           </return-value>
720         </callback>
721       </field>
722     </record>
723     <bitfield name="AccelFlags"
724               glib:type-name="GtkAccelFlags"
725               glib:get-type="gtk_accel_flags_get_type"
726               c:type="GtkAccelFlags">
727       <member name="visible"
728               value="1"
729               c:identifier="GTK_ACCEL_VISIBLE"
730               glib:nick="visible"/>
731       <member name="locked"
732               value="2"
733               c:identifier="GTK_ACCEL_LOCKED"
734               glib:nick="locked"/>
735       <member name="mask"
736               value="7"
737               c:identifier="GTK_ACCEL_MASK"
738               glib:nick="mask"/>
739     </bitfield>
740     <class name="AccelGroup"
741            c:type="GtkAccelGroup"
742            parent="GObject.Object"
743            glib:type-name="GtkAccelGroup"
744            glib:get-type="gtk_accel_group_get_type"
745            glib:type-struct="AccelGroupClass">
746       <doc xml:whitespace="preserve">An object representing and maintaining a group of accelerators.</doc>
747       <constructor name="new" c:identifier="gtk_accel_group_new">
748         <doc xml:whitespace="preserve">Creates a new #GtkAccelGroup.</doc>
749         <return-value transfer-ownership="full">
750           <doc xml:whitespace="preserve">a new #GtkAccelGroup object</doc>
751           <type name="AccelGroup" c:type="GtkAccelGroup*"/>
752         </return-value>
753       </constructor>
754       <function name="from_accel_closure"
755                 c:identifier="gtk_accel_group_from_accel_closure">
756         <doc xml:whitespace="preserve">Finds the #GtkAccelGroup to which @closure is connected; 
757 see gtk_accel_group_connect().</doc>
758         <return-value transfer-ownership="full">
759           <doc xml:whitespace="preserve">the #GtkAccelGroup to which @closure is connected, or %NULL.</doc>
760           <type name="AccelGroup" c:type="GtkAccelGroup*"/>
761         </return-value>
762         <parameters>
763           <parameter name="closure" transfer-ownership="none">
764             <doc xml:whitespace="preserve">a #GClosure</doc>
765             <type name="GObject.Closure" c:type="GClosure*"/>
766           </parameter>
767         </parameters>
768       </function>
769       <method name="get_is_locked"
770               c:identifier="gtk_accel_group_get_is_locked"
771               version="2.14">
772         <doc xml:whitespace="preserve">Locks are added and removed using gtk_accel_group_lock() and
773 gtk_accel_group_unlock().
774 %FALSE otherwise.</doc>
775         <return-value transfer-ownership="none">
776           <doc xml:whitespace="preserve">%TRUE if there are 1 or more locks on the @accel_group,</doc>
777           <type name="boolean" c:type="gboolean"/>
778         </return-value>
779       </method>
780       <method name="get_modifier_mask"
781               c:identifier="gtk_accel_group_get_modifier_mask"
782               version="2.14">
783         <doc xml:whitespace="preserve">Gets a #GdkModifierType representing the mask for this</doc>
784         <return-value transfer-ownership="full">
785           <doc xml:whitespace="preserve">the modifier mask for this accel group.</doc>
786           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
787         </return-value>
788       </method>
789       <method name="lock" c:identifier="gtk_accel_group_lock">
790         <doc xml:whitespace="preserve">Locks the given accelerator group.
791 Locking an acelerator group prevents the accelerators contained
792 within it to be changed during runtime. Refer to
793 gtk_accel_map_change_entry() about runtime accelerator changes.
794 If called more than once, @accel_group remains locked until
795 gtk_accel_group_unlock() has been called an equivalent number
796 of times.</doc>
797         <return-value transfer-ownership="none">
798           <type name="none" c:type="void"/>
799         </return-value>
800       </method>
801       <method name="unlock" c:identifier="gtk_accel_group_unlock">
802         <doc xml:whitespace="preserve">Undoes the last call to gtk_accel_group_lock() on this @accel_group.</doc>
803         <return-value transfer-ownership="none">
804           <type name="none" c:type="void"/>
805         </return-value>
806       </method>
807       <method name="connect" c:identifier="gtk_accel_group_connect">
808         <doc xml:whitespace="preserve">Installs an accelerator in this group. When @accel_group is being activated
809 in response to a call to gtk_accel_groups_activate(), @closure will be
810 invoked if the @accel_key and @accel_mods from gtk_accel_groups_activate()
811 match those of this connection.
812 The signature used for the @closure is that of #GtkAccelGroupActivate.
813 Note that, due to implementation details, a single closure can only be
814 connected to one accelerator group.</doc>
815         <return-value transfer-ownership="none">
816           <type name="none" c:type="void"/>
817         </return-value>
818         <parameters>
819           <parameter name="accel_key" transfer-ownership="none">
820             <doc xml:whitespace="preserve">key value of the accelerator</doc>
821             <type name="uint" c:type="guint"/>
822           </parameter>
823           <parameter name="accel_mods" transfer-ownership="none">
824             <doc xml:whitespace="preserve">modifier combination of the accelerator</doc>
825             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
826           </parameter>
827           <parameter name="accel_flags" transfer-ownership="none">
828             <doc xml:whitespace="preserve">a flag mask to configure this accelerator</doc>
829             <type name="AccelFlags" c:type="GtkAccelFlags"/>
830           </parameter>
831           <parameter name="closure" transfer-ownership="none">
832             <doc xml:whitespace="preserve">closure to be executed upon accelerator activation</doc>
833             <type name="GObject.Closure" c:type="GClosure*"/>
834           </parameter>
835         </parameters>
836       </method>
837       <method name="connect_by_path"
838               c:identifier="gtk_accel_group_connect_by_path">
839         <doc xml:whitespace="preserve">Installs an accelerator in this group, using an accelerator path to look
840 up the appropriate key and modifiers (see gtk_accel_map_add_entry()).
841 When @accel_group is being activated in response to a call to
842 gtk_accel_groups_activate(), @closure will be invoked if the @accel_key and
843 for the path.
844 The signature used for the @closure is that of #GtkAccelGroupActivate.
845 Note that @accel_path string will be stored in a #GQuark. Therefore, if you
846 pass a static string, you can save some memory by interning it first with 
847 g_intern_static_string().</doc>
848         <return-value transfer-ownership="none">
849           <type name="none" c:type="void"/>
850         </return-value>
851         <parameters>
852           <parameter name="accel_path" transfer-ownership="none">
853             <doc xml:whitespace="preserve">path used for determining key and modifiers.</doc>
854             <type name="utf8" c:type="gchar*"/>
855           </parameter>
856           <parameter name="closure" transfer-ownership="none">
857             <doc xml:whitespace="preserve">closure to be executed upon accelerator activation</doc>
858             <type name="GObject.Closure" c:type="GClosure*"/>
859           </parameter>
860         </parameters>
861       </method>
862       <method name="disconnect" c:identifier="gtk_accel_group_disconnect">
863         <doc xml:whitespace="preserve">Removes an accelerator previously installed through
864 gtk_accel_group_connect().
865 Since 2.20 @closure can be %NULL.</doc>
866         <return-value transfer-ownership="none">
867           <doc xml:whitespace="preserve">%TRUE if the closure was found and got disconnected</doc>
868           <type name="boolean" c:type="gboolean"/>
869         </return-value>
870         <parameters>
871           <parameter name="closure" transfer-ownership="none" allow-none="1">
872             <doc xml:whitespace="preserve">the closure to remove from this accelerator group, or %NULL to remove all closures</doc>
873             <type name="GObject.Closure" c:type="GClosure*"/>
874           </parameter>
875         </parameters>
876       </method>
877       <method name="disconnect_key"
878               c:identifier="gtk_accel_group_disconnect_key">
879         <doc xml:whitespace="preserve">Removes an accelerator previously installed through
880 gtk_accel_group_connect().</doc>
881         <return-value transfer-ownership="none">
882           <doc xml:whitespace="preserve">%TRUE if there was an accelerator which could be removed, %FALSE otherwise</doc>
883           <type name="boolean" c:type="gboolean"/>
884         </return-value>
885         <parameters>
886           <parameter name="accel_key" transfer-ownership="none">
887             <doc xml:whitespace="preserve">key value of the accelerator</doc>
888             <type name="uint" c:type="guint"/>
889           </parameter>
890           <parameter name="accel_mods" transfer-ownership="none">
891             <doc xml:whitespace="preserve">modifier combination of the accelerator</doc>
892             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
893           </parameter>
894         </parameters>
895       </method>
896       <method name="activate" c:identifier="gtk_accel_group_activate">
897         <doc xml:whitespace="preserve">Finds the first accelerator in @accel_group 
898 that matches @accel_key and @accel_mods, and
899 activates it.</doc>
900         <return-value transfer-ownership="none">
901           <doc xml:whitespace="preserve">%TRUE if an accelerator was activated and handled this keypress</doc>
902           <type name="boolean" c:type="gboolean"/>
903         </return-value>
904         <parameters>
905           <parameter name="accel_quark" transfer-ownership="none">
906             <doc xml:whitespace="preserve">the quark for the accelerator name</doc>
907             <type name="GLib.Quark" c:type="GQuark"/>
908           </parameter>
909           <parameter name="acceleratable" transfer-ownership="none">
910             <doc xml:whitespace="preserve">the #GObject, usually a #GtkWindow, on which to activate the accelerator.</doc>
911             <type name="GObject.Object" c:type="GObject*"/>
912           </parameter>
913           <parameter name="accel_key" transfer-ownership="none">
914             <doc xml:whitespace="preserve">accelerator keyval from a key event</doc>
915             <type name="uint" c:type="guint"/>
916           </parameter>
917           <parameter name="accel_mods" transfer-ownership="none">
918             <doc xml:whitespace="preserve">keyboard state mask from a key event</doc>
919             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
920           </parameter>
921         </parameters>
922       </method>
923       <method name="find" c:identifier="gtk_accel_group_find">
924         <doc xml:whitespace="preserve">Finds the first entry in an accelerator group for which</doc>
925         <return-value transfer-ownership="full">
926           <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>
927           <type name="AccelKey" c:type="GtkAccelKey*"/>
928         </return-value>
929         <parameters>
930           <parameter name="find_func"
931                      transfer-ownership="none"
932                      scope="call"
933                      closure="2">
934             <doc xml:whitespace="preserve">a function to filter the entries of @accel_group with</doc>
935             <type name="AccelGroupFindFunc" c:type="GtkAccelGroupFindFunc"/>
936           </parameter>
937           <parameter name="data" transfer-ownership="none">
938             <doc xml:whitespace="preserve">data to pass to @find_func</doc>
939             <type name="any" c:type="gpointer"/>
940           </parameter>
941         </parameters>
942       </method>
943       <method name="query" c:identifier="gtk_accel_group_query">
944         <doc xml:whitespace="preserve">Queries an accelerator group for all entries matching @accel_key and</doc>
945         <return-value transfer-ownership="full">
946           <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>
947           <type name="AccelGroupEntry" c:type="GtkAccelGroupEntry*"/>
948         </return-value>
949         <parameters>
950           <parameter name="accel_key" transfer-ownership="none">
951             <doc xml:whitespace="preserve">key value of the accelerator</doc>
952             <type name="uint" c:type="guint"/>
953           </parameter>
954           <parameter name="accel_mods" transfer-ownership="none">
955             <doc xml:whitespace="preserve">modifier combination of the accelerator</doc>
956             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
957           </parameter>
958           <parameter name="n_entries"
959                      direction="out"
960                      caller-allocates="0"
961                      transfer-ownership="full"
962                      allow-none="1">
963             <doc xml:whitespace="preserve">location to return the number of entries found, or %NULL</doc>
964             <type name="uint" c:type="guint*"/>
965           </parameter>
966         </parameters>
967       </method>
968       <property name="is-locked" transfer-ownership="none">
969         <type name="boolean" c:type="gboolean"/>
970       </property>
971       <property name="modifier-mask" transfer-ownership="none">
972         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
973       </property>
974       <field name="parent">
975         <type name="GObject.Object" c:type="GObject"/>
976       </field>
977       <field name="lock_count">
978         <type name="uint" c:type="guint"/>
979       </field>
980       <field name="modifier_mask">
981         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
982       </field>
983       <field name="acceleratables">
984         <type name="GLib.SList" c:type="GSList*">
985           <type name="any" c:type="gpointer"/>
986         </type>
987       </field>
988       <field name="n_accels">
989         <type name="uint" c:type="guint"/>
990       </field>
991       <field name="priv_accels">
992         <type name="AccelGroupEntry" c:type="GtkAccelGroupEntry*"/>
993       </field>
994       <glib:signal name="accel-activate">
995         <doc xml:whitespace="preserve">The accel-activate signal is an implementation detail of
996 #GtkAccelGroup and not meant to be used by applications.</doc>
997         <return-value transfer-ownership="full">
998           <doc xml:whitespace="preserve">%TRUE if the accelerator was activated</doc>
999           <type name="boolean" c:type="gboolean"/>
1000         </return-value>
1001         <parameters>
1002           <parameter name="acceleratable" transfer-ownership="none">
1003             <doc xml:whitespace="preserve">the object on which the accelerator was activated</doc>
1004             <type name="GObject.Object" c:type="GObject"/>
1005           </parameter>
1006           <parameter name="keyval" transfer-ownership="none">
1007             <doc xml:whitespace="preserve">the accelerator keyval</doc>
1008             <type name="uint" c:type="guint"/>
1009           </parameter>
1010           <parameter name="modifier" transfer-ownership="none">
1011             <doc xml:whitespace="preserve">the modifier combination of the accelerator</doc>
1012             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1013           </parameter>
1014         </parameters>
1015       </glib:signal>
1016       <glib:signal name="accel-changed">
1017         <doc xml:whitespace="preserve">The accel-changed signal is emitted when a #GtkAccelGroupEntry
1018 is added to or removed from the accel group. 
1019 Widgets like #GtkAccelLabel which display an associated 
1020 accelerator should connect to this signal, and rebuild 
1021 their visual representation if the @accel_closure is theirs.</doc>
1022         <return-value transfer-ownership="full">
1023           <type name="none" c:type="void"/>
1024         </return-value>
1025         <parameters>
1026           <parameter name="keyval" transfer-ownership="none">
1027             <doc xml:whitespace="preserve">the accelerator keyval</doc>
1028             <type name="uint" c:type="guint"/>
1029           </parameter>
1030           <parameter name="modifier" transfer-ownership="none">
1031             <doc xml:whitespace="preserve">the modifier combination of the accelerator</doc>
1032             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1033           </parameter>
1034           <parameter name="accel_closure" transfer-ownership="none">
1035             <doc xml:whitespace="preserve">the #GClosure of the accelerator</doc>
1036             <type name="GObject.Closure" c:type="GClosure"/>
1037           </parameter>
1038         </parameters>
1039       </glib:signal>
1040     </class>
1041     <callback name="AccelGroupActivate" c:type="GtkAccelGroupActivate">
1042       <return-value transfer-ownership="none">
1043         <type name="boolean" c:type="gboolean"/>
1044       </return-value>
1045       <parameters>
1046         <parameter name="accel_group" transfer-ownership="none">
1047           <type name="AccelGroup" c:type="GtkAccelGroup*"/>
1048         </parameter>
1049         <parameter name="acceleratable" transfer-ownership="none">
1050           <type name="GObject.Object" c:type="GObject*"/>
1051         </parameter>
1052         <parameter name="keyval" transfer-ownership="none">
1053           <type name="uint" c:type="guint"/>
1054         </parameter>
1055         <parameter name="modifier" transfer-ownership="none">
1056           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1057         </parameter>
1058       </parameters>
1059     </callback>
1060     <record name="AccelGroupClass"
1061             c:type="GtkAccelGroupClass"
1062             glib:is-gtype-struct-for="AccelGroup">
1063       <field name="parent_class">
1064         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
1065       </field>
1066       <field name="accel_changed">
1067         <callback name="accel_changed" c:type="accel_changed">
1068           <return-value transfer-ownership="none">
1069             <type name="none" c:type="void"/>
1070           </return-value>
1071           <parameters>
1072             <parameter name="accel_group" transfer-ownership="none">
1073               <type name="AccelGroup" c:type="GtkAccelGroup*"/>
1074             </parameter>
1075             <parameter name="keyval" transfer-ownership="none">
1076               <type name="uint" c:type="guint"/>
1077             </parameter>
1078             <parameter name="modifier" transfer-ownership="none">
1079               <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1080             </parameter>
1081             <parameter name="accel_closure" transfer-ownership="none">
1082               <type name="GObject.Closure" c:type="GClosure*"/>
1083             </parameter>
1084           </parameters>
1085         </callback>
1086       </field>
1087       <field name="gtk_reserved1">
1088         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
1089           <return-value transfer-ownership="none">
1090             <type name="none" c:type="void"/>
1091           </return-value>
1092         </callback>
1093       </field>
1094       <field name="gtk_reserved2">
1095         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
1096           <return-value transfer-ownership="none">
1097             <type name="none" c:type="void"/>
1098           </return-value>
1099         </callback>
1100       </field>
1101       <field name="gtk_reserved3">
1102         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
1103           <return-value transfer-ownership="none">
1104             <type name="none" c:type="void"/>
1105           </return-value>
1106         </callback>
1107       </field>
1108       <field name="gtk_reserved4">
1109         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
1110           <return-value transfer-ownership="none">
1111             <type name="none" c:type="void"/>
1112           </return-value>
1113         </callback>
1114       </field>
1115     </record>
1116     <record name="AccelGroupEntry" c:type="GtkAccelGroupEntry">
1117       <field name="key" writable="1">
1118         <type name="AccelKey" c:type="GtkAccelKey"/>
1119       </field>
1120       <field name="closure" writable="1">
1121         <type name="GObject.Closure" c:type="GClosure*"/>
1122       </field>
1123       <field name="accel_path_quark" writable="1">
1124         <type name="GLib.Quark" c:type="GQuark"/>
1125       </field>
1126     </record>
1127     <callback name="AccelGroupFindFunc"
1128               c:type="GtkAccelGroupFindFunc"
1129               version="2.2">
1130       <return-value transfer-ownership="none">
1131         <type name="boolean" c:type="gboolean"/>
1132       </return-value>
1133       <parameters>
1134         <parameter name="key" transfer-ownership="none">
1135           <type name="AccelKey" c:type="GtkAccelKey*"/>
1136         </parameter>
1137         <parameter name="closure" transfer-ownership="none">
1138           <type name="GObject.Closure" c:type="GClosure*"/>
1139         </parameter>
1140         <parameter name="data" transfer-ownership="none">
1141           <type name="any" c:type="gpointer"/>
1142         </parameter>
1143       </parameters>
1144     </callback>
1145     <record name="AccelKey" c:type="GtkAccelKey">
1146       <field name="accel_key" writable="1">
1147         <type name="uint" c:type="guint"/>
1148       </field>
1149       <field name="accel_mods" writable="1">
1150         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1151       </field>
1152       <field name="accel_flags" writable="1" bits="16">
1153         <type name="uint" c:type="guint"/>
1154       </field>
1155     </record>
1156     <class name="AccelLabel"
1157            c:type="GtkAccelLabel"
1158            parent="Label"
1159            glib:type-name="GtkAccelLabel"
1160            glib:get-type="gtk_accel_label_get_type"
1161            glib:type-struct="AccelLabelClass">
1162       <doc xml:whitespace="preserve">The #GtkAccelLabel-struct struct contains private data only, and
1163 should be accessed using the functions below.</doc>
1164       <implements name="Atk.ImplementorIface"/>
1165       <implements name="Buildable"/>
1166       <constructor name="new" c:identifier="gtk_accel_label_new">
1167         <doc xml:whitespace="preserve">Creates a new #GtkAccelLabel.</doc>
1168         <return-value transfer-ownership="full">
1169           <doc xml:whitespace="preserve">a new #GtkAccelLabel.</doc>
1170           <type name="AccelLabel" c:type="GtkWidget*"/>
1171         </return-value>
1172         <parameters>
1173           <parameter name="string" transfer-ownership="none">
1174             <doc xml:whitespace="preserve">the label string. Must be non-%NULL.</doc>
1175             <type name="utf8" c:type="gchar*"/>
1176           </parameter>
1177         </parameters>
1178       </constructor>
1179       <method name="get_accel_widget"
1180               c:identifier="gtk_accel_label_get_accel_widget">
1181         <doc xml:whitespace="preserve">Fetches the widget monitored by this accelerator label. See
1182 gtk_accel_label_set_accel_widget().</doc>
1183         <return-value transfer-ownership="full">
1184           <doc xml:whitespace="preserve">the object monitored by the accelerator label, or %NULL.</doc>
1185           <type name="Widget" c:type="GtkWidget*"/>
1186         </return-value>
1187       </method>
1188       <method name="get_accel_width"
1189               c:identifier="gtk_accel_label_get_accel_width">
1190         <doc xml:whitespace="preserve">Returns the width needed to display the accelerator key(s).
1191 This is used by menus to align all of the #GtkMenuItem widgets, and shouldn't
1192 be needed by applications.</doc>
1193         <return-value transfer-ownership="none">
1194           <doc xml:whitespace="preserve">the width needed to display the accelerator key(s).</doc>
1195           <type name="uint" c:type="guint"/>
1196         </return-value>
1197       </method>
1198       <method name="set_accel_widget"
1199               c:identifier="gtk_accel_label_set_accel_widget">
1200         <doc xml:whitespace="preserve">Sets the widget to be monitored by this accelerator label.</doc>
1201         <return-value transfer-ownership="none">
1202           <type name="none" c:type="void"/>
1203         </return-value>
1204         <parameters>
1205           <parameter name="accel_widget" transfer-ownership="none">
1206             <doc xml:whitespace="preserve">the widget to be monitored.</doc>
1207             <type name="Widget" c:type="GtkWidget*"/>
1208           </parameter>
1209         </parameters>
1210       </method>
1211       <method name="set_accel_closure"
1212               c:identifier="gtk_accel_label_set_accel_closure">
1213         <doc xml:whitespace="preserve">Sets the closure to be monitored by this accelerator label. The closure
1214 must be connected to an accelerator group; see gtk_accel_group_connect().</doc>
1215         <return-value transfer-ownership="none">
1216           <type name="none" c:type="void"/>
1217         </return-value>
1218         <parameters>
1219           <parameter name="accel_closure" transfer-ownership="none">
1220             <doc xml:whitespace="preserve">the closure to monitor for accelerator changes.</doc>
1221             <type name="GObject.Closure" c:type="GClosure*"/>
1222           </parameter>
1223         </parameters>
1224       </method>
1225       <method name="refetch" c:identifier="gtk_accel_label_refetch">
1226         <doc xml:whitespace="preserve">Recreates the string representing the accelerator keys.
1227 This should not be needed since the string is automatically updated whenever
1228 accelerators are added or removed from the associated widget.</doc>
1229         <return-value transfer-ownership="none">
1230           <doc xml:whitespace="preserve">always returns %FALSE.</doc>
1231           <type name="boolean" c:type="gboolean"/>
1232         </return-value>
1233       </method>
1234       <property name="accel-closure" writable="1" transfer-ownership="none">
1235         <type name="GObject.Closure" c:type="GClosure"/>
1236       </property>
1237       <property name="accel-widget" writable="1" transfer-ownership="none">
1238         <type name="Widget" c:type="GtkWidget"/>
1239       </property>
1240       <field name="label">
1241         <type name="Label" c:type="GtkLabel"/>
1242       </field>
1243       <field name="gtk_reserved">
1244         <type name="uint" c:type="guint"/>
1245       </field>
1246       <field name="accel_padding">
1247         <type name="uint" c:type="guint"/>
1248       </field>
1249       <field name="accel_widget">
1250         <type name="Widget" c:type="GtkWidget*"/>
1251       </field>
1252       <field name="accel_closure">
1253         <type name="GObject.Closure" c:type="GClosure*"/>
1254       </field>
1255       <field name="accel_group">
1256         <type name="AccelGroup" c:type="GtkAccelGroup*"/>
1257       </field>
1258       <field name="accel_string">
1259         <type name="utf8" c:type="gchar*"/>
1260       </field>
1261       <field name="accel_string_width">
1262         <type name="uint16" c:type="guint16"/>
1263       </field>
1264     </class>
1265     <record name="AccelLabelClass"
1266             c:type="GtkAccelLabelClass"
1267             glib:is-gtype-struct-for="AccelLabel">
1268       <field name="parent_class">
1269         <type name="LabelClass" c:type="GtkLabelClass"/>
1270       </field>
1271       <field name="signal_quote1">
1272         <type name="utf8" c:type="gchar*"/>
1273       </field>
1274       <field name="signal_quote2">
1275         <type name="utf8" c:type="gchar*"/>
1276       </field>
1277       <field name="mod_name_shift">
1278         <type name="utf8" c:type="gchar*"/>
1279       </field>
1280       <field name="mod_name_control">
1281         <type name="utf8" c:type="gchar*"/>
1282       </field>
1283       <field name="mod_name_alt">
1284         <type name="utf8" c:type="gchar*"/>
1285       </field>
1286       <field name="mod_separator">
1287         <type name="utf8" c:type="gchar*"/>
1288       </field>
1289       <field name="accel_seperator">
1290         <type name="utf8" c:type="gchar*"/>
1291       </field>
1292       <field name="latin1_to_char" bits="1">
1293         <type name="uint" c:type="guint"/>
1294       </field>
1295       <field name="gtk_reserved1">
1296         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
1297           <return-value transfer-ownership="none">
1298             <type name="none" c:type="void"/>
1299           </return-value>
1300         </callback>
1301       </field>
1302       <field name="gtk_reserved2">
1303         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
1304           <return-value transfer-ownership="none">
1305             <type name="none" c:type="void"/>
1306           </return-value>
1307         </callback>
1308       </field>
1309       <field name="gtk_reserved3">
1310         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
1311           <return-value transfer-ownership="none">
1312             <type name="none" c:type="void"/>
1313           </return-value>
1314         </callback>
1315       </field>
1316       <field name="gtk_reserved4">
1317         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
1318           <return-value transfer-ownership="none">
1319             <type name="none" c:type="void"/>
1320           </return-value>
1321         </callback>
1322       </field>
1323     </record>
1324     <class name="AccelMap"
1325            c:type="GtkAccelMap"
1326            parent="GObject.Object"
1327            glib:type-name="GtkAccelMap"
1328            glib:get-type="gtk_accel_map_get_type"
1329            glib:type-struct="AccelMapClass">
1330       <function name="add_entry" c:identifier="gtk_accel_map_add_entry">
1331         <doc xml:whitespace="preserve">Registers a new accelerator with the global accelerator map.
1332 This function should only be called once per @accel_path
1333 with the canonical @accel_key and @accel_mods for this path.
1334 To change the accelerator during runtime programatically, use
1335 gtk_accel_map_change_entry().
1336 The accelerator path must consist of "&amp;lt;WINDOWTYPE&amp;gt;/Category1/Category2/.../Action",
1337 where &amp;lt;WINDOWTYPE&amp;gt; should be a unique application-specific identifier, that
1338 corresponds to the kind of window the accelerator is being used in, e.g. "Gimp-Image",
1339 "Abiword-Document" or "Gnumeric-Settings".
1340 The Category1/.../Action portion is most appropriately chosen by the action the
1341 accelerator triggers, i.e. for accelerators on menu items, choose the item's menu path,
1342 e.g. "File/Save As", "Image/View/Zoom" or "Edit/Select All".
1343 So a full valid accelerator path may look like:
1344 "&amp;lt;Gimp-Toolbox&amp;gt;/File/Dialogs/Tool Options...".
1345 Note that @accel_path string will be stored in a #GQuark. Therefore, if you
1346 pass a static string, you can save some memory by interning it first with 
1347 g_intern_static_string().</doc>
1348         <return-value transfer-ownership="none">
1349           <type name="none" c:type="void"/>
1350         </return-value>
1351         <parameters>
1352           <parameter name="accel_path" transfer-ownership="none">
1353             <doc xml:whitespace="preserve">valid accelerator path</doc>
1354             <type name="utf8" c:type="gchar*"/>
1355           </parameter>
1356           <parameter name="accel_key" transfer-ownership="none">
1357             <doc xml:whitespace="preserve">the accelerator key</doc>
1358             <type name="uint" c:type="guint"/>
1359           </parameter>
1360           <parameter name="accel_mods" transfer-ownership="none">
1361             <doc xml:whitespace="preserve">the accelerator modifiers</doc>
1362             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1363           </parameter>
1364         </parameters>
1365       </function>
1366       <function name="lookup_entry" c:identifier="gtk_accel_map_lookup_entry">
1367         <doc xml:whitespace="preserve">Looks up the accelerator entry for @accel_path and fills in @key.</doc>
1368         <return-value transfer-ownership="none">
1369           <doc xml:whitespace="preserve">%TRUE if @accel_path is known, %FALSE otherwise</doc>
1370           <type name="boolean" c:type="gboolean"/>
1371         </return-value>
1372         <parameters>
1373           <parameter name="accel_path" transfer-ownership="none">
1374             <doc xml:whitespace="preserve">a valid accelerator path</doc>
1375             <type name="utf8" c:type="gchar*"/>
1376           </parameter>
1377           <parameter name="key" transfer-ownership="none">
1378             <doc xml:whitespace="preserve">the accelerator key to be filled in (optional)</doc>
1379             <type name="AccelKey" c:type="GtkAccelKey*"/>
1380           </parameter>
1381         </parameters>
1382       </function>
1383       <function name="change_entry" c:identifier="gtk_accel_map_change_entry">
1384         <doc xml:whitespace="preserve">Changes the @accel_key and @accel_mods currently associated with @accel_path.
1385 Due to conflicts with other accelerators, a change may not always be possible,
1386 conflicts. A change will only occur if all conflicts could be resolved (which
1387 might not be the case if conflicting accelerators are locked). Successful
1388 changes are indicated by a %TRUE return value.
1389 Note that @accel_path string will be stored in a #GQuark. Therefore, if you
1390 pass a static string, you can save some memory by interning it first with 
1391 g_intern_static_string().</doc>
1392         <return-value transfer-ownership="none">
1393           <doc xml:whitespace="preserve">%TRUE if the accelerator could be changed, %FALSE otherwise</doc>
1394           <type name="boolean" c:type="gboolean"/>
1395         </return-value>
1396         <parameters>
1397           <parameter name="accel_path" transfer-ownership="none">
1398             <doc xml:whitespace="preserve">a valid accelerator path</doc>
1399             <type name="utf8" c:type="gchar*"/>
1400           </parameter>
1401           <parameter name="accel_key" transfer-ownership="none">
1402             <doc xml:whitespace="preserve">the new accelerator key</doc>
1403             <type name="uint" c:type="guint"/>
1404           </parameter>
1405           <parameter name="accel_mods" transfer-ownership="none">
1406             <doc xml:whitespace="preserve">the new accelerator modifiers</doc>
1407             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1408           </parameter>
1409           <parameter name="replace" transfer-ownership="none">
1410             <doc xml:whitespace="preserve">%TRUE if other accelerators may be deleted upon conflicts</doc>
1411             <type name="boolean" c:type="gboolean"/>
1412           </parameter>
1413         </parameters>
1414       </function>
1415       <function name="load" c:identifier="gtk_accel_map_load">
1416         <doc xml:whitespace="preserve">Parses a file previously saved with gtk_accel_map_save() for
1417 accelerator specifications, and propagates them accordingly.</doc>
1418         <return-value transfer-ownership="none">
1419           <type name="none" c:type="void"/>
1420         </return-value>
1421         <parameters>
1422           <parameter name="file_name" transfer-ownership="none">
1423             <doc xml:whitespace="preserve">a file containing accelerator specifications, in the GLib file name encoding</doc>
1424             <type name="utf8" c:type="gchar*"/>
1425           </parameter>
1426         </parameters>
1427       </function>
1428       <function name="save" c:identifier="gtk_accel_map_save">
1429         <doc xml:whitespace="preserve">Saves current accelerator specifications (accelerator path, key
1430 and modifiers) to @file_name.
1431 The file is written in a format suitable to be read back in by
1432 gtk_accel_map_load().</doc>
1433         <return-value transfer-ownership="none">
1434           <type name="none" c:type="void"/>
1435         </return-value>
1436         <parameters>
1437           <parameter name="file_name" transfer-ownership="none">
1438             <doc xml:whitespace="preserve">the name of the file to contain accelerator specifications, in the GLib file name encoding</doc>
1439             <type name="utf8" c:type="gchar*"/>
1440           </parameter>
1441         </parameters>
1442       </function>
1443       <function name="foreach" c:identifier="gtk_accel_map_foreach">
1444         <doc xml:whitespace="preserve">Loops over the entries in the accelerator map whose accel path 
1445 doesn't match any of the filters added with gtk_accel_map_add_filter(), 
1446 and execute @foreach_func on each. The signature of @foreach_func is 
1447 that of #GtkAccelMapForeach, the @changed parameter indicates whether
1448 this accelerator was changed during runtime (thus, would need
1449 saving during an accelerator map dump).</doc>
1450         <return-value transfer-ownership="none">
1451           <type name="none" c:type="void"/>
1452         </return-value>
1453         <parameters>
1454           <parameter name="data" transfer-ownership="none">
1455             <doc xml:whitespace="preserve">data to be passed into @foreach_func</doc>
1456             <type name="any" c:type="gpointer"/>
1457           </parameter>
1458           <parameter name="foreach_func"
1459                      transfer-ownership="none"
1460                      scope="call">
1461             <doc xml:whitespace="preserve">function to be executed for each accel map entry which is not filtered out</doc>
1462             <type name="AccelMapForeach" c:type="GtkAccelMapForeach"/>
1463           </parameter>
1464         </parameters>
1465       </function>
1466       <function name="load_fd" c:identifier="gtk_accel_map_load_fd">
1467         <doc xml:whitespace="preserve">Filedescriptor variant of gtk_accel_map_load().
1468 Note that the file descriptor will not be closed by this function.</doc>
1469         <return-value transfer-ownership="none">
1470           <type name="none" c:type="void"/>
1471         </return-value>
1472         <parameters>
1473           <parameter name="fd" transfer-ownership="none">
1474             <doc xml:whitespace="preserve">a valid readable file descriptor</doc>
1475             <type name="int" c:type="gint"/>
1476           </parameter>
1477         </parameters>
1478       </function>
1479       <function name="load_scanner" c:identifier="gtk_accel_map_load_scanner">
1480         <doc xml:whitespace="preserve">#GScanner variant of gtk_accel_map_load().</doc>
1481         <return-value transfer-ownership="none">
1482           <type name="none" c:type="void"/>
1483         </return-value>
1484         <parameters>
1485           <parameter name="scanner" transfer-ownership="none">
1486             <doc xml:whitespace="preserve">a #GScanner which has already been provided with an input file</doc>
1487             <type name="GLib.Scanner" c:type="GScanner*"/>
1488           </parameter>
1489         </parameters>
1490       </function>
1491       <function name="save_fd" c:identifier="gtk_accel_map_save_fd">
1492         <doc xml:whitespace="preserve">Filedescriptor variant of gtk_accel_map_save().
1493 Note that the file descriptor will not be closed by this function.</doc>
1494         <return-value transfer-ownership="none">
1495           <type name="none" c:type="void"/>
1496         </return-value>
1497         <parameters>
1498           <parameter name="fd" transfer-ownership="none">
1499             <doc xml:whitespace="preserve">a valid writable file descriptor</doc>
1500             <type name="int" c:type="gint"/>
1501           </parameter>
1502         </parameters>
1503       </function>
1504       <function name="lock_path"
1505                 c:identifier="gtk_accel_map_lock_path"
1506                 version="2.4">
1507         <doc xml:whitespace="preserve">Locks the given accelerator path. If the accelerator map doesn't yet contain
1508 an entry for @accel_path, a new one is created.
1509 Locking an accelerator path prevents its accelerator from being changed 
1510 during runtime. A locked accelerator path can be unlocked by 
1511 gtk_accel_map_unlock_path(). Refer to gtk_accel_map_change_entry() 
1512 for information about runtime accelerator changes.
1513 If called more than once, @accel_path remains locked until
1514 gtk_accel_map_unlock_path() has been called an equivalent number
1515 of times.
1516 Note that locking of individual accelerator paths is independent from 
1517 locking the #GtkAccelGroup containing them. For runtime accelerator
1518 changes to be possible both the accelerator path and its #GtkAccelGroup
1519 have to be unlocked.</doc>
1520         <return-value transfer-ownership="none">
1521           <type name="none" c:type="void"/>
1522         </return-value>
1523         <parameters>
1524           <parameter name="accel_path" transfer-ownership="none">
1525             <doc xml:whitespace="preserve">a valid accelerator path</doc>
1526             <type name="utf8" c:type="gchar*"/>
1527           </parameter>
1528         </parameters>
1529       </function>
1530       <function name="unlock_path"
1531                 c:identifier="gtk_accel_map_unlock_path"
1532                 version="2.4">
1533         <doc xml:whitespace="preserve">Undoes the last call to gtk_accel_map_lock_path() on this @accel_path.
1534 Refer to gtk_accel_map_lock_path() for information about accelerator path locking.</doc>
1535         <return-value transfer-ownership="none">
1536           <type name="none" c:type="void"/>
1537         </return-value>
1538         <parameters>
1539           <parameter name="accel_path" transfer-ownership="none">
1540             <doc xml:whitespace="preserve">a valid accelerator path</doc>
1541             <type name="utf8" c:type="gchar*"/>
1542           </parameter>
1543         </parameters>
1544       </function>
1545       <function name="add_filter" c:identifier="gtk_accel_map_add_filter">
1546         <doc xml:whitespace="preserve">Adds a filter to the global list of accel path filters.
1547 Accel map entries whose accel path matches one of the filters
1548 are skipped by gtk_accel_map_foreach().
1549 This function is intended for GTK+ modules that create their own
1550 menus, but don't want them to be saved into the applications accelerator
1551 map dump.</doc>
1552         <return-value transfer-ownership="none">
1553           <type name="none" c:type="void"/>
1554         </return-value>
1555         <parameters>
1556           <parameter name="filter_pattern" transfer-ownership="none">
1557             <doc xml:whitespace="preserve">a pattern (see #GPatternSpec)</doc>
1558             <type name="utf8" c:type="gchar*"/>
1559           </parameter>
1560         </parameters>
1561       </function>
1562       <function name="foreach_unfiltered"
1563                 c:identifier="gtk_accel_map_foreach_unfiltered">
1564         <doc xml:whitespace="preserve">Loops over all entries in the accelerator map, and execute
1565 #GtkAccelMapForeach, the @changed parameter indicates whether
1566 this accelerator was changed during runtime (thus, would need
1567 saving during an accelerator map dump).</doc>
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             <doc xml:whitespace="preserve">data to be passed into @foreach_func</doc>
1574             <type name="any" c:type="gpointer"/>
1575           </parameter>
1576           <parameter name="foreach_func"
1577                      transfer-ownership="none"
1578                      scope="call">
1579             <doc xml:whitespace="preserve">function to be executed for each accel map entry</doc>
1580             <type name="AccelMapForeach" c:type="GtkAccelMapForeach"/>
1581           </parameter>
1582         </parameters>
1583       </function>
1584       <function name="get" c:identifier="gtk_accel_map_get" version="2.4">
1585         <doc xml:whitespace="preserve">Gets the singleton global #GtkAccelMap object. This object
1586 is useful only for notification of changes to the accelerator
1587 map via the ::changed signal; it isn't a parameter to the
1588 other accelerator map functions.</doc>
1589         <return-value transfer-ownership="full">
1590           <doc xml:whitespace="preserve">the global #GtkAccelMap object</doc>
1591           <type name="AccelMap" c:type="GtkAccelMap*"/>
1592         </return-value>
1593       </function>
1594       <glib:signal name="changed" version="2.4">
1595         <doc xml:whitespace="preserve">Notifies of a change in the global accelerator map.
1596 The path is also used as the detail for the signal,
1597 so it is possible to connect to
1598 changed::&lt;replaceable&gt;accel_path&lt;/replaceable&gt;.</doc>
1599         <return-value transfer-ownership="full">
1600           <type name="none" c:type="void"/>
1601         </return-value>
1602         <parameters>
1603           <parameter name="accel_path" transfer-ownership="none">
1604             <doc xml:whitespace="preserve">the path of the accelerator that changed</doc>
1605             <type name="utf8" c:type="gchararray"/>
1606           </parameter>
1607           <parameter name="accel_key" transfer-ownership="none">
1608             <doc xml:whitespace="preserve">the key value for the new accelerator</doc>
1609             <type name="uint" c:type="guint"/>
1610           </parameter>
1611           <parameter name="accel_mods" transfer-ownership="none">
1612             <doc xml:whitespace="preserve">the modifier mask for the new accelerator</doc>
1613             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1614           </parameter>
1615         </parameters>
1616       </glib:signal>
1617     </class>
1618     <record name="AccelMapClass"
1619             c:type="GtkAccelMapClass"
1620             glib:is-gtype-struct-for="AccelMap">
1621     </record>
1622     <callback name="AccelMapForeach" c:type="GtkAccelMapForeach">
1623       <return-value transfer-ownership="none">
1624         <type name="none" c:type="void"/>
1625       </return-value>
1626       <parameters>
1627         <parameter name="data" transfer-ownership="none">
1628           <type name="any" c:type="gpointer"/>
1629         </parameter>
1630         <parameter name="accel_path" transfer-ownership="none">
1631           <type name="utf8" c:type="gchar*"/>
1632         </parameter>
1633         <parameter name="accel_key" transfer-ownership="none">
1634           <type name="uint" c:type="guint"/>
1635         </parameter>
1636         <parameter name="accel_mods" transfer-ownership="none">
1637           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
1638         </parameter>
1639         <parameter name="changed" transfer-ownership="none">
1640           <type name="boolean" c:type="gboolean"/>
1641         </parameter>
1642       </parameters>
1643     </callback>
1644     <class name="Accessible"
1645            c:type="GtkAccessible"
1646            parent="Atk.Object"
1647            glib:type-name="GtkAccessible"
1648            glib:get-type="gtk_accessible_get_type"
1649            glib:type-struct="AccessibleClass">
1650       <virtual-method name="connect_widget_destroyed"
1651                       invoker="connect_widget_destroyed">
1652         <return-value transfer-ownership="none">
1653           <type name="none" c:type="void"/>
1654         </return-value>
1655       </virtual-method>
1656       <method name="get_widget"
1657               c:identifier="gtk_accessible_get_widget"
1658               version="2.22">
1659         <doc xml:whitespace="preserve">Gets the #GtkWidget corresponding to the #GtkAccessible. The returned widget
1660 does not have a reference added, so you do not need to unref it.
1661 the #GtkAccessible, or %NULL.</doc>
1662         <return-value transfer-ownership="none">
1663           <doc xml:whitespace="preserve">pointer to the #GtkWidget corresponding to</doc>
1664           <type name="Widget" c:type="GtkWidget*"/>
1665         </return-value>
1666       </method>
1667       <method name="connect_widget_destroyed"
1668               c:identifier="gtk_accessible_connect_widget_destroyed">
1669         <return-value transfer-ownership="none">
1670           <type name="none" c:type="void"/>
1671         </return-value>
1672       </method>
1673       <field name="parent">
1674         <type name="Atk.Object" c:type="AtkObject"/>
1675       </field>
1676       <field name="widget">
1677         <type name="Widget" c:type="GtkWidget*"/>
1678       </field>
1679     </class>
1680     <record name="AccessibleClass"
1681             c:type="GtkAccessibleClass"
1682             glib:is-gtype-struct-for="Accessible">
1683       <field name="parent_class">
1684         <type name="Atk.ObjectClass" c:type="AtkObjectClass"/>
1685       </field>
1686       <field name="connect_widget_destroyed">
1687         <callback name="connect_widget_destroyed"
1688                   c:type="connect_widget_destroyed">
1689           <return-value transfer-ownership="none">
1690             <type name="none" c:type="void"/>
1691           </return-value>
1692           <parameters>
1693             <parameter name="accessible" transfer-ownership="none">
1694               <type name="Accessible" c:type="GtkAccessible*"/>
1695             </parameter>
1696           </parameters>
1697         </callback>
1698       </field>
1699       <field name="gtk_reserved1">
1700         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
1701           <return-value transfer-ownership="none">
1702             <type name="none" c:type="void"/>
1703           </return-value>
1704         </callback>
1705       </field>
1706       <field name="gtk_reserved2">
1707         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
1708           <return-value transfer-ownership="none">
1709             <type name="none" c:type="void"/>
1710           </return-value>
1711         </callback>
1712       </field>
1713       <field name="gtk_reserved3">
1714         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
1715           <return-value transfer-ownership="none">
1716             <type name="none" c:type="void"/>
1717           </return-value>
1718         </callback>
1719       </field>
1720       <field name="gtk_reserved4">
1721         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
1722           <return-value transfer-ownership="none">
1723             <type name="none" c:type="void"/>
1724           </return-value>
1725         </callback>
1726       </field>
1727     </record>
1728     <class name="Action"
1729            c:type="GtkAction"
1730            parent="GObject.Object"
1731            glib:type-name="GtkAction"
1732            glib:get-type="gtk_action_get_type"
1733            glib:type-struct="ActionClass">
1734       <implements name="Buildable"/>
1735       <constructor name="new" c:identifier="gtk_action_new" version="2.4">
1736         <doc xml:whitespace="preserve">Creates a new #GtkAction object. To add the action to a
1737 #GtkActionGroup and set the accelerator for the action,
1738 call gtk_action_group_add_action_with_accel().
1739 See &lt;xref linkend="XML-UI"/&gt; for information on allowed action
1740 names.</doc>
1741         <return-value transfer-ownership="full">
1742           <doc xml:whitespace="preserve">a new #GtkAction</doc>
1743           <type name="Action" c:type="GtkAction*"/>
1744         </return-value>
1745         <parameters>
1746           <parameter name="name" transfer-ownership="none">
1747             <doc xml:whitespace="preserve">A unique name for the action</doc>
1748             <type name="utf8" c:type="gchar*"/>
1749           </parameter>
1750           <parameter name="label" transfer-ownership="none" allow-none="1">
1751             <doc xml:whitespace="preserve">the label displayed in menu items and on buttons, or %NULL</doc>
1752             <type name="utf8" c:type="gchar*"/>
1753           </parameter>
1754           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
1755             <doc xml:whitespace="preserve">a tooltip for the action, or %NULL</doc>
1756             <type name="utf8" c:type="gchar*"/>
1757           </parameter>
1758           <parameter name="stock_id" transfer-ownership="none">
1759             <doc xml:whitespace="preserve">the stock icon to display in widgets representing the action, or %NULL</doc>
1760             <type name="utf8" c:type="gchar*"/>
1761           </parameter>
1762         </parameters>
1763       </constructor>
1764       <virtual-method name="create_menu_item"
1765                       invoker="create_menu_item"
1766                       version="2.4">
1767         <doc xml:whitespace="preserve">Creates a menu item widget that proxies for the given action.</doc>
1768         <return-value transfer-ownership="full">
1769           <doc xml:whitespace="preserve">a menu item connected to the action.</doc>
1770           <type name="Widget" c:type="GtkWidget*"/>
1771         </return-value>
1772       </virtual-method>
1773       <virtual-method name="create_tool_item"
1774                       invoker="create_tool_item"
1775                       version="2.4">
1776         <doc xml:whitespace="preserve">Creates a toolbar item widget that proxies for the given action.</doc>
1777         <return-value transfer-ownership="full">
1778           <doc xml:whitespace="preserve">a toolbar item connected to the action.</doc>
1779           <type name="Widget" c:type="GtkWidget*"/>
1780         </return-value>
1781       </virtual-method>
1782       <virtual-method name="connect_proxy"
1783                       invoker="connect_proxy"
1784                       version="2.4"
1785                       deprecated="Use gtk_activatable_set_related_action() instead."
1786                       deprecated-version="2.16">
1787         <doc xml:whitespace="preserve">Connects a widget to an action object as a proxy.  Synchronises 
1788 various properties of the action with the widget (such as label 
1789 text, icon, tooltip, etc), and attaches a callback so that the 
1790 action gets activated when the proxy widget does.
1791 If the widget is already connected to an action, it is disconnected
1792 first.</doc>
1793         <return-value transfer-ownership="none">
1794           <type name="none" c:type="void"/>
1795         </return-value>
1796         <parameters>
1797           <parameter name="proxy" transfer-ownership="none">
1798             <doc xml:whitespace="preserve">the proxy widget</doc>
1799             <type name="Widget" c:type="GtkWidget*"/>
1800           </parameter>
1801         </parameters>
1802       </virtual-method>
1803       <virtual-method name="disconnect_proxy"
1804                       invoker="disconnect_proxy"
1805                       version="2.4"
1806                       deprecated="Use gtk_activatable_set_related_action() instead."
1807                       deprecated-version="2.16">
1808         <doc xml:whitespace="preserve">Disconnects a proxy widget from an action.  
1809 Does &lt;emphasis&gt;not&lt;/emphasis&gt; destroy the widget, however.</doc>
1810         <return-value transfer-ownership="none">
1811           <type name="none" c:type="void"/>
1812         </return-value>
1813         <parameters>
1814           <parameter name="proxy" transfer-ownership="none">
1815             <doc xml:whitespace="preserve">the proxy widget</doc>
1816             <type name="Widget" c:type="GtkWidget*"/>
1817           </parameter>
1818         </parameters>
1819       </virtual-method>
1820       <virtual-method name="create_menu" invoker="create_menu" version="2.12">
1821         <doc xml:whitespace="preserve">If @action provides a #GtkMenu widget as a submenu for the menu
1822 item or the toolbar item it creates, this function returns an
1823 instance of that menu.</doc>
1824         <return-value transfer-ownership="full">
1825           <doc xml:whitespace="preserve">the menu item provided by the action, or %NULL.</doc>
1826           <type name="Widget" c:type="GtkWidget*"/>
1827         </return-value>
1828       </virtual-method>
1829       <method name="get_name" c:identifier="gtk_action_get_name" version="2.4">
1830         <doc xml:whitespace="preserve">Returns the name of the action.
1831 be freed.</doc>
1832         <return-value transfer-ownership="none">
1833           <doc xml:whitespace="preserve">the name of the action. The string belongs to GTK+ and should not</doc>
1834           <type name="utf8" c:type="gchar*"/>
1835         </return-value>
1836       </method>
1837       <method name="is_sensitive"
1838               c:identifier="gtk_action_is_sensitive"
1839               version="2.4">
1840         <doc xml:whitespace="preserve">Returns whether the action is effectively sensitive.
1841 are both sensitive.</doc>
1842         <return-value transfer-ownership="none">
1843           <doc xml:whitespace="preserve">%TRUE if the action and its associated action group</doc>
1844           <type name="boolean" c:type="gboolean"/>
1845         </return-value>
1846       </method>
1847       <method name="get_sensitive"
1848               c:identifier="gtk_action_get_sensitive"
1849               version="2.4">
1850         <doc xml:whitespace="preserve">Returns whether the action itself is sensitive. Note that this doesn't 
1851 necessarily mean effective sensitivity. See gtk_action_is_sensitive() 
1852 for that.</doc>
1853         <return-value transfer-ownership="none">
1854           <doc xml:whitespace="preserve">%TRUE if the action itself is sensitive.</doc>
1855           <type name="boolean" c:type="gboolean"/>
1856         </return-value>
1857       </method>
1858       <method name="set_sensitive"
1859               c:identifier="gtk_action_set_sensitive"
1860               version="2.6">
1861         <doc xml:whitespace="preserve">Sets the ::sensitive property of the action to @sensitive. Note that 
1862 this doesn't necessarily mean effective sensitivity. See 
1863 gtk_action_is_sensitive() 
1864 for that.</doc>
1865         <return-value transfer-ownership="none">
1866           <type name="none" c:type="void"/>
1867         </return-value>
1868         <parameters>
1869           <parameter name="sensitive" transfer-ownership="none">
1870             <doc xml:whitespace="preserve">%TRUE to make the action sensitive</doc>
1871             <type name="boolean" c:type="gboolean"/>
1872           </parameter>
1873         </parameters>
1874       </method>
1875       <method name="is_visible"
1876               c:identifier="gtk_action_is_visible"
1877               version="2.4">
1878         <doc xml:whitespace="preserve">Returns whether the action is effectively visible.
1879 are both visible.</doc>
1880         <return-value transfer-ownership="none">
1881           <doc xml:whitespace="preserve">%TRUE if the action and its associated action group</doc>
1882           <type name="boolean" c:type="gboolean"/>
1883         </return-value>
1884       </method>
1885       <method name="get_visible"
1886               c:identifier="gtk_action_get_visible"
1887               version="2.4">
1888         <doc xml:whitespace="preserve">Returns whether the action itself is visible. Note that this doesn't 
1889 necessarily mean effective visibility. See gtk_action_is_sensitive() 
1890 for that.</doc>
1891         <return-value transfer-ownership="none">
1892           <doc xml:whitespace="preserve">%TRUE if the action itself is visible.</doc>
1893           <type name="boolean" c:type="gboolean"/>
1894         </return-value>
1895       </method>
1896       <method name="set_visible"
1897               c:identifier="gtk_action_set_visible"
1898               version="2.6">
1899         <doc xml:whitespace="preserve">Sets the ::visible property of the action to @visible. Note that 
1900 this doesn't necessarily mean effective visibility. See 
1901 gtk_action_is_visible() 
1902 for that.</doc>
1903         <return-value transfer-ownership="none">
1904           <type name="none" c:type="void"/>
1905         </return-value>
1906         <parameters>
1907           <parameter name="visible" transfer-ownership="none">
1908             <doc xml:whitespace="preserve">%TRUE to make the action visible</doc>
1909             <type name="boolean" c:type="gboolean"/>
1910           </parameter>
1911         </parameters>
1912       </method>
1913       <method name="activate" c:identifier="gtk_action_activate" version="2.4">
1914         <doc xml:whitespace="preserve">Emits the "activate" signal on the specified action, if it isn't 
1915 insensitive. This gets called by the proxy widgets when they get 
1916 activated.
1917 It can also be used to manually activate an action.</doc>
1918         <return-value transfer-ownership="none">
1919           <type name="none" c:type="void"/>
1920         </return-value>
1921       </method>
1922       <method name="create_icon"
1923               c:identifier="gtk_action_create_icon"
1924               version="2.4">
1925         <doc xml:whitespace="preserve">This function is intended for use by action implementations to
1926 create icons displayed in the proxy widgets.</doc>
1927         <return-value transfer-ownership="full">
1928           <doc xml:whitespace="preserve">a widget that displays the icon for this action.</doc>
1929           <type name="Widget" c:type="GtkWidget*"/>
1930         </return-value>
1931         <parameters>
1932           <parameter name="icon_size" transfer-ownership="none">
1933             <doc xml:whitespace="preserve">the size of the icon that should be created.</doc>
1934             <type name="int" c:type="GtkIconSize"/>
1935           </parameter>
1936         </parameters>
1937       </method>
1938       <method name="create_menu_item"
1939               c:identifier="gtk_action_create_menu_item"
1940               version="2.4">
1941         <doc xml:whitespace="preserve">Creates a menu item widget that proxies for the given action.</doc>
1942         <return-value transfer-ownership="full">
1943           <doc xml:whitespace="preserve">a menu item connected to the action.</doc>
1944           <type name="Widget" c:type="GtkWidget*"/>
1945         </return-value>
1946       </method>
1947       <method name="create_tool_item"
1948               c:identifier="gtk_action_create_tool_item"
1949               version="2.4">
1950         <doc xml:whitespace="preserve">Creates a toolbar item widget that proxies for the given action.</doc>
1951         <return-value transfer-ownership="full">
1952           <doc xml:whitespace="preserve">a toolbar item connected to the action.</doc>
1953           <type name="Widget" c:type="GtkWidget*"/>
1954         </return-value>
1955       </method>
1956       <method name="create_menu"
1957               c:identifier="gtk_action_create_menu"
1958               version="2.12">
1959         <doc xml:whitespace="preserve">If @action provides a #GtkMenu widget as a submenu for the menu
1960 item or the toolbar item it creates, this function returns an
1961 instance of that menu.</doc>
1962         <return-value transfer-ownership="full">
1963           <doc xml:whitespace="preserve">the menu item provided by the action, or %NULL.</doc>
1964           <type name="Widget" c:type="GtkWidget*"/>
1965         </return-value>
1966       </method>
1967       <method name="get_proxies"
1968               c:identifier="gtk_action_get_proxies"
1969               version="2.4">
1970         <doc xml:whitespace="preserve">Returns the proxy widgets for an action.
1971 See also gtk_widget_get_action().
1972 and must not be modified.</doc>
1973         <return-value transfer-ownership="none">
1974           <doc xml:whitespace="preserve">a #GSList of proxy widgets. The list is owned by GTK+</doc>
1975           <type name="GLib.SList" c:type="GSList*">
1976             <type name="Widget"/>
1977           </type>
1978         </return-value>
1979       </method>
1980       <method name="connect_accelerator"
1981               c:identifier="gtk_action_connect_accelerator"
1982               version="2.4">
1983         <doc xml:whitespace="preserve">Installs the accelerator for @action if @action has an
1984 accel path and group. See gtk_action_set_accel_path() and 
1985 gtk_action_set_accel_group()
1986 Since multiple proxies may independently trigger the installation
1987 of the accelerator, the @action counts the number of times this
1988 function has been called and doesn't remove the accelerator until
1989 gtk_action_disconnect_accelerator() has been called as many times.</doc>
1990         <return-value transfer-ownership="none">
1991           <type name="none" c:type="void"/>
1992         </return-value>
1993       </method>
1994       <method name="disconnect_accelerator"
1995               c:identifier="gtk_action_disconnect_accelerator"
1996               version="2.4">
1997         <doc xml:whitespace="preserve">Undoes the effect of one call to gtk_action_connect_accelerator().</doc>
1998         <return-value transfer-ownership="none">
1999           <type name="none" c:type="void"/>
2000         </return-value>
2001       </method>
2002       <method name="get_accel_path"
2003               c:identifier="gtk_action_get_accel_path"
2004               version="2.6">
2005         <doc xml:whitespace="preserve">Returns the accel path for this action.  
2006 if none is set. The returned string is owned by GTK+ 
2007 and must not be freed or modified.</doc>
2008         <return-value transfer-ownership="none">
2009           <doc xml:whitespace="preserve">the accel path for this action, or %NULL</doc>
2010           <type name="utf8" c:type="gchar*"/>
2011         </return-value>
2012       </method>
2013       <method name="get_accel_closure"
2014               c:identifier="gtk_action_get_accel_closure"
2015               version="2.8">
2016         <doc xml:whitespace="preserve">Returns the accel closure for this action.
2017 owned by GTK+ and must not be unreffed or modified.</doc>
2018         <return-value transfer-ownership="full">
2019           <doc xml:whitespace="preserve">the accel closure for this action. The returned closure is</doc>
2020           <type name="GObject.Closure" c:type="GClosure*"/>
2021         </return-value>
2022       </method>
2023       <method name="connect_proxy"
2024               c:identifier="gtk_action_connect_proxy"
2025               version="2.4"
2026               deprecated="Use gtk_activatable_set_related_action() instead."
2027               deprecated-version="2.16">
2028         <doc xml:whitespace="preserve">Connects a widget to an action object as a proxy.  Synchronises 
2029 various properties of the action with the widget (such as label 
2030 text, icon, tooltip, etc), and attaches a callback so that the 
2031 action gets activated when the proxy widget does.
2032 If the widget is already connected to an action, it is disconnected
2033 first.</doc>
2034         <return-value transfer-ownership="none">
2035           <type name="none" c:type="void"/>
2036         </return-value>
2037         <parameters>
2038           <parameter name="proxy" transfer-ownership="none">
2039             <doc xml:whitespace="preserve">the proxy widget</doc>
2040             <type name="Widget" c:type="GtkWidget*"/>
2041           </parameter>
2042         </parameters>
2043       </method>
2044       <method name="disconnect_proxy"
2045               c:identifier="gtk_action_disconnect_proxy"
2046               version="2.4"
2047               deprecated="Use gtk_activatable_set_related_action() instead."
2048               deprecated-version="2.16">
2049         <doc xml:whitespace="preserve">Disconnects a proxy widget from an action.  
2050 Does &lt;emphasis&gt;not&lt;/emphasis&gt; destroy the widget, however.</doc>
2051         <return-value transfer-ownership="none">
2052           <type name="none" c:type="void"/>
2053         </return-value>
2054         <parameters>
2055           <parameter name="proxy" transfer-ownership="none">
2056             <doc xml:whitespace="preserve">the proxy widget</doc>
2057             <type name="Widget" c:type="GtkWidget*"/>
2058           </parameter>
2059         </parameters>
2060       </method>
2061       <method name="block_activate_from"
2062               c:identifier="gtk_action_block_activate_from"
2063               version="2.4"
2064               deprecated="activatables are now responsible for activating the"
2065               deprecated-version="2.16">
2066         <doc xml:whitespace="preserve">Disables calls to the gtk_action_activate()
2067 function by signals on the given proxy widget.  This is used to
2068 break notification loops for things like check or radio actions.
2069 This function is intended for use by action implementations.
2070 action directly so this doesnt apply anymore.</doc>
2071         <return-value transfer-ownership="none">
2072           <type name="none" c:type="void"/>
2073         </return-value>
2074         <parameters>
2075           <parameter name="proxy" transfer-ownership="none">
2076             <doc xml:whitespace="preserve">a proxy widget</doc>
2077             <type name="Widget" c:type="GtkWidget*"/>
2078           </parameter>
2079         </parameters>
2080       </method>
2081       <method name="unblock_activate_from"
2082               c:identifier="gtk_action_unblock_activate_from"
2083               version="2.4"
2084               deprecated="activatables are now responsible for activating the"
2085               deprecated-version="2.16">
2086         <doc xml:whitespace="preserve">Re-enables calls to the gtk_action_activate()
2087 function by signals on the given proxy widget.  This undoes the
2088 blocking done by gtk_action_block_activate_from().
2089 This function is intended for use by action implementations.
2090 action directly so this doesnt apply anymore.</doc>
2091         <return-value transfer-ownership="none">
2092           <type name="none" c:type="void"/>
2093         </return-value>
2094         <parameters>
2095           <parameter name="proxy" transfer-ownership="none">
2096             <doc xml:whitespace="preserve">a proxy widget</doc>
2097             <type name="Widget" c:type="GtkWidget*"/>
2098           </parameter>
2099         </parameters>
2100       </method>
2101       <method name="block_activate"
2102               c:identifier="gtk_action_block_activate"
2103               version="2.16">
2104         <doc xml:whitespace="preserve">Disable activation signals from the action 
2105 This is needed when updating the state of your proxy
2106 #GtkActivatable widget could result in calling gtk_action_activate(),
2107 this is a convenience function to avoid recursing in those
2108 cases (updating toggle state for instance).</doc>
2109         <return-value transfer-ownership="none">
2110           <type name="none" c:type="void"/>
2111         </return-value>
2112       </method>
2113       <method name="unblock_activate"
2114               c:identifier="gtk_action_unblock_activate"
2115               version="2.16">
2116         <doc xml:whitespace="preserve">Reenable activation signals from the action</doc>
2117         <return-value transfer-ownership="none">
2118           <type name="none" c:type="void"/>
2119         </return-value>
2120       </method>
2121       <method name="set_accel_path"
2122               c:identifier="gtk_action_set_accel_path"
2123               version="2.4">
2124         <doc xml:whitespace="preserve">Sets the accel path for this action.  All proxy widgets associated
2125 with the action will have this accel path, so that their
2126 accelerators are consistent.
2127 Note that @accel_path string will be stored in a #GQuark. Therefore, if you
2128 pass a static string, you can save some memory by interning it first with 
2129 g_intern_static_string().</doc>
2130         <return-value transfer-ownership="none">
2131           <type name="none" c:type="void"/>
2132         </return-value>
2133         <parameters>
2134           <parameter name="accel_path" transfer-ownership="none">
2135             <doc xml:whitespace="preserve">the accelerator path</doc>
2136             <type name="utf8" c:type="gchar*"/>
2137           </parameter>
2138         </parameters>
2139       </method>
2140       <method name="set_accel_group"
2141               c:identifier="gtk_action_set_accel_group"
2142               version="2.4">
2143         <doc xml:whitespace="preserve">Sets the #GtkAccelGroup in which the accelerator for this action
2144 will be installed.</doc>
2145         <return-value transfer-ownership="none">
2146           <type name="none" c:type="void"/>
2147         </return-value>
2148         <parameters>
2149           <parameter name="accel_group"
2150                      transfer-ownership="none"
2151                      allow-none="1">
2152             <doc xml:whitespace="preserve">a #GtkAccelGroup or %NULL</doc>
2153             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
2154           </parameter>
2155         </parameters>
2156       </method>
2157       <method name="set_label"
2158               c:identifier="gtk_action_set_label"
2159               version="2.16">
2160         <doc xml:whitespace="preserve">Sets the label of @action.</doc>
2161         <return-value transfer-ownership="none">
2162           <type name="none" c:type="void"/>
2163         </return-value>
2164         <parameters>
2165           <parameter name="label" transfer-ownership="none">
2166             <doc xml:whitespace="preserve">the label text to set</doc>
2167             <type name="utf8" c:type="gchar*"/>
2168           </parameter>
2169         </parameters>
2170       </method>
2171       <method name="get_label"
2172               c:identifier="gtk_action_get_label"
2173               version="2.16">
2174         <doc xml:whitespace="preserve">Gets the label text of @action.</doc>
2175         <return-value transfer-ownership="none">
2176           <doc xml:whitespace="preserve">the label text</doc>
2177           <type name="utf8" c:type="gchar*"/>
2178         </return-value>
2179       </method>
2180       <method name="set_short_label"
2181               c:identifier="gtk_action_set_short_label"
2182               version="2.16">
2183         <doc xml:whitespace="preserve">Sets a shorter label text on @action.</doc>
2184         <return-value transfer-ownership="none">
2185           <type name="none" c:type="void"/>
2186         </return-value>
2187         <parameters>
2188           <parameter name="short_label" transfer-ownership="none">
2189             <doc xml:whitespace="preserve">the label text to set</doc>
2190             <type name="utf8" c:type="gchar*"/>
2191           </parameter>
2192         </parameters>
2193       </method>
2194       <method name="get_short_label"
2195               c:identifier="gtk_action_get_short_label"
2196               version="2.16">
2197         <doc xml:whitespace="preserve">Gets the short label text of @action.</doc>
2198         <return-value transfer-ownership="none">
2199           <doc xml:whitespace="preserve">the short label text.</doc>
2200           <type name="utf8" c:type="gchar*"/>
2201         </return-value>
2202       </method>
2203       <method name="set_tooltip"
2204               c:identifier="gtk_action_set_tooltip"
2205               version="2.16">
2206         <doc xml:whitespace="preserve">Sets the tooltip text on @action</doc>
2207         <return-value transfer-ownership="none">
2208           <type name="none" c:type="void"/>
2209         </return-value>
2210         <parameters>
2211           <parameter name="tooltip" transfer-ownership="none">
2212             <doc xml:whitespace="preserve">the tooltip text</doc>
2213             <type name="utf8" c:type="gchar*"/>
2214           </parameter>
2215         </parameters>
2216       </method>
2217       <method name="get_tooltip"
2218               c:identifier="gtk_action_get_tooltip"
2219               version="2.16">
2220         <doc xml:whitespace="preserve">Gets the tooltip text of @action.</doc>
2221         <return-value transfer-ownership="none">
2222           <doc xml:whitespace="preserve">the tooltip text</doc>
2223           <type name="utf8" c:type="gchar*"/>
2224         </return-value>
2225       </method>
2226       <method name="set_stock_id"
2227               c:identifier="gtk_action_set_stock_id"
2228               version="2.16">
2229         <doc xml:whitespace="preserve">Sets the stock id on @action</doc>
2230         <return-value transfer-ownership="none">
2231           <type name="none" c:type="void"/>
2232         </return-value>
2233         <parameters>
2234           <parameter name="stock_id" transfer-ownership="none">
2235             <doc xml:whitespace="preserve">the stock id</doc>
2236             <type name="utf8" c:type="gchar*"/>
2237           </parameter>
2238         </parameters>
2239       </method>
2240       <method name="get_stock_id"
2241               c:identifier="gtk_action_get_stock_id"
2242               version="2.16">
2243         <doc xml:whitespace="preserve">Gets the stock id of @action.</doc>
2244         <return-value transfer-ownership="none">
2245           <doc xml:whitespace="preserve">the stock id</doc>
2246           <type name="utf8" c:type="gchar*"/>
2247         </return-value>
2248       </method>
2249       <method name="set_gicon"
2250               c:identifier="gtk_action_set_gicon"
2251               version="2.16">
2252         <doc xml:whitespace="preserve">Sets the icon of @action.</doc>
2253         <return-value transfer-ownership="none">
2254           <type name="none" c:type="void"/>
2255         </return-value>
2256         <parameters>
2257           <parameter name="icon" transfer-ownership="none">
2258             <doc xml:whitespace="preserve">the #GIcon to set</doc>
2259             <type name="Gio.Icon" c:type="GIcon*"/>
2260           </parameter>
2261         </parameters>
2262       </method>
2263       <method name="get_gicon"
2264               c:identifier="gtk_action_get_gicon"
2265               version="2.16">
2266         <doc xml:whitespace="preserve">Gets the gicon of @action.</doc>
2267         <return-value transfer-ownership="full">
2268           <doc xml:whitespace="preserve">The action's #GIcon if one is set.</doc>
2269           <type name="Gio.Icon" c:type="GIcon*"/>
2270         </return-value>
2271       </method>
2272       <method name="set_icon_name"
2273               c:identifier="gtk_action_set_icon_name"
2274               version="2.16">
2275         <doc xml:whitespace="preserve">Sets the icon name on @action</doc>
2276         <return-value transfer-ownership="none">
2277           <type name="none" c:type="void"/>
2278         </return-value>
2279         <parameters>
2280           <parameter name="icon_name" transfer-ownership="none">
2281             <doc xml:whitespace="preserve">the icon name to set</doc>
2282             <type name="utf8" c:type="gchar*"/>
2283           </parameter>
2284         </parameters>
2285       </method>
2286       <method name="get_icon_name"
2287               c:identifier="gtk_action_get_icon_name"
2288               version="2.16">
2289         <doc xml:whitespace="preserve">Gets the icon name of @action.</doc>
2290         <return-value transfer-ownership="none">
2291           <doc xml:whitespace="preserve">the icon name</doc>
2292           <type name="utf8" c:type="gchar*"/>
2293         </return-value>
2294       </method>
2295       <method name="set_visible_horizontal"
2296               c:identifier="gtk_action_set_visible_horizontal"
2297               version="2.16">
2298         <doc xml:whitespace="preserve">Sets whether @action is visible when horizontal</doc>
2299         <return-value transfer-ownership="none">
2300           <type name="none" c:type="void"/>
2301         </return-value>
2302         <parameters>
2303           <parameter name="visible_horizontal" transfer-ownership="none">
2304             <doc xml:whitespace="preserve">whether the action is visible horizontally</doc>
2305             <type name="boolean" c:type="gboolean"/>
2306           </parameter>
2307         </parameters>
2308       </method>
2309       <method name="get_visible_horizontal"
2310               c:identifier="gtk_action_get_visible_horizontal"
2311               version="2.16">
2312         <doc xml:whitespace="preserve">Checks whether @action is visible when horizontal</doc>
2313         <return-value transfer-ownership="none">
2314           <doc xml:whitespace="preserve">whether @action is visible when horizontal</doc>
2315           <type name="boolean" c:type="gboolean"/>
2316         </return-value>
2317       </method>
2318       <method name="set_visible_vertical"
2319               c:identifier="gtk_action_set_visible_vertical"
2320               version="2.16">
2321         <doc xml:whitespace="preserve">Sets whether @action is visible when vertical</doc>
2322         <return-value transfer-ownership="none">
2323           <type name="none" c:type="void"/>
2324         </return-value>
2325         <parameters>
2326           <parameter name="visible_vertical" transfer-ownership="none">
2327             <doc xml:whitespace="preserve">whether the action is visible vertically</doc>
2328             <type name="boolean" c:type="gboolean"/>
2329           </parameter>
2330         </parameters>
2331       </method>
2332       <method name="get_visible_vertical"
2333               c:identifier="gtk_action_get_visible_vertical"
2334               version="2.16">
2335         <doc xml:whitespace="preserve">Checks whether @action is visible when horizontal</doc>
2336         <return-value transfer-ownership="none">
2337           <doc xml:whitespace="preserve">whether @action is visible when horizontal</doc>
2338           <type name="boolean" c:type="gboolean"/>
2339         </return-value>
2340       </method>
2341       <method name="set_is_important"
2342               c:identifier="gtk_action_set_is_important"
2343               version="2.16">
2344         <doc xml:whitespace="preserve">Sets whether the action is important, this attribute is used
2345 primarily by toolbar items to decide whether to show a label
2346 or not.</doc>
2347         <return-value transfer-ownership="none">
2348           <type name="none" c:type="void"/>
2349         </return-value>
2350         <parameters>
2351           <parameter name="is_important" transfer-ownership="none">
2352             <doc xml:whitespace="preserve">%TRUE to make the action important</doc>
2353             <type name="boolean" c:type="gboolean"/>
2354           </parameter>
2355         </parameters>
2356       </method>
2357       <method name="get_is_important"
2358               c:identifier="gtk_action_get_is_important"
2359               version="2.16">
2360         <doc xml:whitespace="preserve">Checks whether @action is important or not</doc>
2361         <return-value transfer-ownership="none">
2362           <doc xml:whitespace="preserve">whether @action is important</doc>
2363           <type name="boolean" c:type="gboolean"/>
2364         </return-value>
2365       </method>
2366       <method name="set_always_show_image"
2367               c:identifier="gtk_action_set_always_show_image"
2368               version="2.20">
2369         <doc xml:whitespace="preserve">Sets whether @action&lt;!-- --&gt;'s menu item proxies will ignore the
2370 #GtkSettings:gtk-menu-images setting and always show their image, if available.
2371 Use this if the menu item would be useless or hard to use
2372 without their image.</doc>
2373         <return-value transfer-ownership="none">
2374           <type name="none" c:type="void"/>
2375         </return-value>
2376         <parameters>
2377           <parameter name="always_show" transfer-ownership="none">
2378             <doc xml:whitespace="preserve">%TRUE if menuitem proxies should always show their image</doc>
2379             <type name="boolean" c:type="gboolean"/>
2380           </parameter>
2381         </parameters>
2382       </method>
2383       <method name="get_always_show_image"
2384               c:identifier="gtk_action_get_always_show_image"
2385               version="2.20">
2386         <doc xml:whitespace="preserve">Returns whether @action&lt;!-- --&gt;'s menu item proxies will ignore the
2387 #GtkSettings:gtk-menu-images setting and always show their image,
2388 if available.</doc>
2389         <return-value transfer-ownership="none">
2390           <doc xml:whitespace="preserve">%TRUE if the menu item proxies will always show their image</doc>
2391           <type name="boolean" c:type="gboolean"/>
2392         </return-value>
2393       </method>
2394       <property name="action-group" writable="1" transfer-ownership="none">
2395         <type name="ActionGroup" c:type="GtkActionGroup"/>
2396       </property>
2397       <property name="always-show-image"
2398                 version="2.20"
2399                 writable="1"
2400                 construct="1"
2401                 transfer-ownership="none">
2402         <doc xml:whitespace="preserve">If %TRUE, the action's menu item proxies will ignore the #GtkSettings:gtk-menu-images 
2403 setting and always show their image, if available.
2404 Use this property if the menu item would be useless or hard to use
2405 without their image.</doc>
2406         <type name="boolean" c:type="gboolean"/>
2407       </property>
2408       <property name="gicon"
2409                 version="2.16"
2410                 writable="1"
2411                 transfer-ownership="none">
2412         <doc xml:whitespace="preserve">The #GIcon displayed in the #GtkAction.
2413 Note that the stock icon is preferred, if the #GtkAction:stock-id 
2414 property holds the id of an existing stock icon.
2415 This is an appearance property and thus only applies if 
2416 #GtkActivatable:use-action-appearance is %TRUE.</doc>
2417         <type name="Gio.Icon" c:type="GIcon"/>
2418       </property>
2419       <property name="hide-if-empty" writable="1" transfer-ownership="none">
2420         <type name="boolean" c:type="gboolean"/>
2421       </property>
2422       <property name="icon-name"
2423                 version="2.10"
2424                 writable="1"
2425                 transfer-ownership="none">
2426         <doc xml:whitespace="preserve">The name of the icon from the icon theme. 
2427 Note that the stock icon is preferred, if the #GtkAction:stock-id 
2428 property holds the id of an existing stock icon, and the #GIcon is
2429 preferred if the #GtkAction:gicon property is set. 
2430 This is an appearance property and thus only applies if 
2431 #GtkActivatable:use-action-appearance is %TRUE.</doc>
2432         <type name="utf8" c:type="gchararray"/>
2433       </property>
2434       <property name="is-important" writable="1" transfer-ownership="none">
2435         <type name="boolean" c:type="gboolean"/>
2436       </property>
2437       <property name="label" writable="1" transfer-ownership="none">
2438         <doc xml:whitespace="preserve">The label used for menu items and buttons that activate
2439 this action. If the label is %NULL, GTK+ uses the stock 
2440 label specified via the stock-id property.
2441 This is an appearance property and thus only applies if 
2442 #GtkActivatable:use-action-appearance is %TRUE.</doc>
2443         <type name="utf8" c:type="gchararray"/>
2444       </property>
2445       <property name="name"
2446                 writable="1"
2447                 construct-only="1"
2448                 transfer-ownership="none">
2449         <type name="utf8" c:type="gchararray"/>
2450       </property>
2451       <property name="sensitive" writable="1" transfer-ownership="none">
2452         <type name="boolean" c:type="gboolean"/>
2453       </property>
2454       <property name="short-label" writable="1" transfer-ownership="none">
2455         <doc xml:whitespace="preserve">A shorter label that may be used on toolbar buttons.
2456 This is an appearance property and thus only applies if 
2457 #GtkActivatable:use-action-appearance is %TRUE.</doc>
2458         <type name="utf8" c:type="gchararray"/>
2459       </property>
2460       <property name="stock-id" writable="1" transfer-ownership="none">
2461         <doc xml:whitespace="preserve">The stock icon displayed in widgets representing this action.
2462 This is an appearance property and thus only applies if 
2463 #GtkActivatable:use-action-appearance is %TRUE.</doc>
2464         <type name="utf8" c:type="gchararray"/>
2465       </property>
2466       <property name="tooltip" writable="1" transfer-ownership="none">
2467         <type name="utf8" c:type="gchararray"/>
2468       </property>
2469       <property name="visible" writable="1" transfer-ownership="none">
2470         <type name="boolean" c:type="gboolean"/>
2471       </property>
2472       <property name="visible-horizontal"
2473                 writable="1"
2474                 transfer-ownership="none">
2475         <type name="boolean" c:type="gboolean"/>
2476       </property>
2477       <property name="visible-overflown"
2478                 version="2.6"
2479                 writable="1"
2480                 transfer-ownership="none">
2481         <doc xml:whitespace="preserve">When %TRUE, toolitem proxies for this action are represented in the 
2482 toolbar overflow menu.</doc>
2483         <type name="boolean" c:type="gboolean"/>
2484       </property>
2485       <property name="visible-vertical" writable="1" transfer-ownership="none">
2486         <type name="boolean" c:type="gboolean"/>
2487       </property>
2488       <field name="object">
2489         <type name="GObject.Object" c:type="GObject"/>
2490       </field>
2491       <field name="private_data">
2492         <type name="ActionPrivate" c:type="GtkActionPrivate*"/>
2493       </field>
2494       <glib:signal name="activate" version="2.4">
2495         <doc xml:whitespace="preserve">The "activate" signal is emitted when the action is activated.</doc>
2496         <return-value transfer-ownership="full">
2497           <type name="none" c:type="void"/>
2498         </return-value>
2499       </glib:signal>
2500     </class>
2501     <record name="ActionClass"
2502             c:type="GtkActionClass"
2503             glib:is-gtype-struct-for="Action">
2504       <field name="parent_class">
2505         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
2506       </field>
2507       <field name="activate">
2508         <callback name="activate" c:type="activate">
2509           <return-value transfer-ownership="none">
2510             <type name="none" c:type="void"/>
2511           </return-value>
2512           <parameters>
2513             <parameter name="action" transfer-ownership="none">
2514               <type name="Action" c:type="GtkAction*"/>
2515             </parameter>
2516           </parameters>
2517         </callback>
2518       </field>
2519       <field name="menu_item_type">
2520         <type name="GType" c:type="GType"/>
2521       </field>
2522       <field name="toolbar_item_type">
2523         <type name="GType" c:type="GType"/>
2524       </field>
2525       <field name="create_menu_item">
2526         <callback name="create_menu_item" c:type="create_menu_item">
2527           <return-value transfer-ownership="full">
2528             <doc xml:whitespace="preserve">a menu item connected to the action.</doc>
2529             <type name="Widget" c:type="GtkWidget*"/>
2530           </return-value>
2531           <parameters>
2532             <parameter name="action" transfer-ownership="none">
2533               <type name="Action" c:type="GtkAction*"/>
2534             </parameter>
2535           </parameters>
2536         </callback>
2537       </field>
2538       <field name="create_tool_item">
2539         <callback name="create_tool_item" c:type="create_tool_item">
2540           <return-value transfer-ownership="full">
2541             <doc xml:whitespace="preserve">a toolbar item connected to the action.</doc>
2542             <type name="Widget" c:type="GtkWidget*"/>
2543           </return-value>
2544           <parameters>
2545             <parameter name="action" transfer-ownership="none">
2546               <type name="Action" c:type="GtkAction*"/>
2547             </parameter>
2548           </parameters>
2549         </callback>
2550       </field>
2551       <field name="connect_proxy">
2552         <callback name="connect_proxy" c:type="connect_proxy">
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               <type name="Action" c:type="GtkAction*"/>
2559             </parameter>
2560             <parameter name="proxy" transfer-ownership="none">
2561               <doc xml:whitespace="preserve">the proxy widget</doc>
2562               <type name="Widget" c:type="GtkWidget*"/>
2563             </parameter>
2564           </parameters>
2565         </callback>
2566       </field>
2567       <field name="disconnect_proxy">
2568         <callback name="disconnect_proxy" c:type="disconnect_proxy">
2569           <return-value transfer-ownership="none">
2570             <type name="none" c:type="void"/>
2571           </return-value>
2572           <parameters>
2573             <parameter name="action" transfer-ownership="none">
2574               <type name="Action" c:type="GtkAction*"/>
2575             </parameter>
2576             <parameter name="proxy" transfer-ownership="none">
2577               <doc xml:whitespace="preserve">the proxy widget</doc>
2578               <type name="Widget" c:type="GtkWidget*"/>
2579             </parameter>
2580           </parameters>
2581         </callback>
2582       </field>
2583       <field name="create_menu">
2584         <callback name="create_menu" c:type="create_menu">
2585           <return-value transfer-ownership="full">
2586             <doc xml:whitespace="preserve">the menu item provided by the action, or %NULL.</doc>
2587             <type name="Widget" c:type="GtkWidget*"/>
2588           </return-value>
2589           <parameters>
2590             <parameter name="action" transfer-ownership="none">
2591               <type name="Action" c:type="GtkAction*"/>
2592             </parameter>
2593           </parameters>
2594         </callback>
2595       </field>
2596       <field name="gtk_reserved2">
2597         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
2598           <return-value transfer-ownership="none">
2599             <type name="none" c:type="void"/>
2600           </return-value>
2601         </callback>
2602       </field>
2603       <field name="gtk_reserved3">
2604         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
2605           <return-value transfer-ownership="none">
2606             <type name="none" c:type="void"/>
2607           </return-value>
2608         </callback>
2609       </field>
2610       <field name="gtk_reserved4">
2611         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
2612           <return-value transfer-ownership="none">
2613             <type name="none" c:type="void"/>
2614           </return-value>
2615         </callback>
2616       </field>
2617     </record>
2618     <record name="ActionEntry" c:type="GtkActionEntry">
2619       <field name="name" writable="1">
2620         <type name="utf8" c:type="gchar*"/>
2621       </field>
2622       <field name="stock_id" writable="1">
2623         <type name="utf8" c:type="gchar*"/>
2624       </field>
2625       <field name="label" writable="1">
2626         <type name="utf8" c:type="gchar*"/>
2627       </field>
2628       <field name="accelerator" writable="1">
2629         <type name="utf8" c:type="gchar*"/>
2630       </field>
2631       <field name="tooltip" writable="1">
2632         <type name="utf8" c:type="gchar*"/>
2633       </field>
2634       <field name="callback" writable="1">
2635         <type name="GObject.Callback" c:type="GCallback"/>
2636       </field>
2637     </record>
2638     <class name="ActionGroup"
2639            c:type="GtkActionGroup"
2640            parent="GObject.Object"
2641            glib:type-name="GtkActionGroup"
2642            glib:get-type="gtk_action_group_get_type"
2643            glib:type-struct="ActionGroupClass">
2644       <implements name="Buildable"/>
2645       <constructor name="new"
2646                    c:identifier="gtk_action_group_new"
2647                    version="2.4">
2648         <doc xml:whitespace="preserve">Creates a new #GtkActionGroup object. The name of the action group
2649 is used when associating &lt;link linkend="Action-Accel"&gt;keybindings&lt;/link&gt; 
2650 with the actions.</doc>
2651         <return-value transfer-ownership="full">
2652           <doc xml:whitespace="preserve">the new #GtkActionGroup</doc>
2653           <type name="ActionGroup" c:type="GtkActionGroup*"/>
2654         </return-value>
2655         <parameters>
2656           <parameter name="name" transfer-ownership="none">
2657             <doc xml:whitespace="preserve">the name of the action group.</doc>
2658             <type name="utf8" c:type="gchar*"/>
2659           </parameter>
2660         </parameters>
2661       </constructor>
2662       <virtual-method name="get_action" invoker="get_action" version="2.4">
2663         <doc xml:whitespace="preserve">Looks up an action in the action group by name.</doc>
2664         <return-value transfer-ownership="full">
2665           <doc xml:whitespace="preserve">the action, or %NULL if no action by that name exists</doc>
2666           <type name="Action" c:type="GtkAction*"/>
2667         </return-value>
2668         <parameters>
2669           <parameter name="action_name" transfer-ownership="none">
2670             <doc xml:whitespace="preserve">the name of the action</doc>
2671             <type name="utf8" c:type="gchar*"/>
2672           </parameter>
2673         </parameters>
2674       </virtual-method>
2675       <method name="get_name"
2676               c:identifier="gtk_action_group_get_name"
2677               version="2.4">
2678         <doc xml:whitespace="preserve">Gets the name of the action group.</doc>
2679         <return-value transfer-ownership="none">
2680           <doc xml:whitespace="preserve">the name of the action group.</doc>
2681           <type name="utf8" c:type="gchar*"/>
2682         </return-value>
2683       </method>
2684       <method name="get_sensitive"
2685               c:identifier="gtk_action_group_get_sensitive"
2686               version="2.4">
2687         <doc xml:whitespace="preserve">Returns %TRUE if the group is sensitive.  The constituent actions
2688 can only be logically sensitive (see gtk_action_is_sensitive()) if
2689 they are sensitive (see gtk_action_get_sensitive()) and their group
2690 is sensitive.</doc>
2691         <return-value transfer-ownership="none">
2692           <doc xml:whitespace="preserve">%TRUE if the group is sensitive.</doc>
2693           <type name="boolean" c:type="gboolean"/>
2694         </return-value>
2695       </method>
2696       <method name="set_sensitive"
2697               c:identifier="gtk_action_group_set_sensitive"
2698               version="2.4">
2699         <doc xml:whitespace="preserve">Changes the sensitivity of @action_group</doc>
2700         <return-value transfer-ownership="none">
2701           <type name="none" c:type="void"/>
2702         </return-value>
2703         <parameters>
2704           <parameter name="sensitive" transfer-ownership="none">
2705             <doc xml:whitespace="preserve">new sensitivity</doc>
2706             <type name="boolean" c:type="gboolean"/>
2707           </parameter>
2708         </parameters>
2709       </method>
2710       <method name="get_visible"
2711               c:identifier="gtk_action_group_get_visible"
2712               version="2.4">
2713         <doc xml:whitespace="preserve">Returns %TRUE if the group is visible.  The constituent actions
2714 can only be logically visible (see gtk_action_is_visible()) if
2715 they are visible (see gtk_action_get_visible()) and their group
2716 is visible.</doc>
2717         <return-value transfer-ownership="none">
2718           <doc xml:whitespace="preserve">%TRUE if the group is visible.</doc>
2719           <type name="boolean" c:type="gboolean"/>
2720         </return-value>
2721       </method>
2722       <method name="set_visible"
2723               c:identifier="gtk_action_group_set_visible"
2724               version="2.4">
2725         <doc xml:whitespace="preserve">Changes the visible of @action_group.</doc>
2726         <return-value transfer-ownership="none">
2727           <type name="none" c:type="void"/>
2728         </return-value>
2729         <parameters>
2730           <parameter name="visible" transfer-ownership="none">
2731             <doc xml:whitespace="preserve">new visiblity</doc>
2732             <type name="boolean" c:type="gboolean"/>
2733           </parameter>
2734         </parameters>
2735       </method>
2736       <method name="get_action"
2737               c:identifier="gtk_action_group_get_action"
2738               version="2.4">
2739         <doc xml:whitespace="preserve">Looks up an action in the action group by name.</doc>
2740         <return-value transfer-ownership="full">
2741           <doc xml:whitespace="preserve">the action, or %NULL if no action by that name exists</doc>
2742           <type name="Action" c:type="GtkAction*"/>
2743         </return-value>
2744         <parameters>
2745           <parameter name="action_name" transfer-ownership="none">
2746             <doc xml:whitespace="preserve">the name of the action</doc>
2747             <type name="utf8" c:type="gchar*"/>
2748           </parameter>
2749         </parameters>
2750       </method>
2751       <method name="list_actions"
2752               c:identifier="gtk_action_group_list_actions"
2753               version="2.4">
2754         <doc xml:whitespace="preserve">Lists the actions in the action group.</doc>
2755         <return-value transfer-ownership="container">
2756           <doc xml:whitespace="preserve">an allocated list of the action objects in the action group</doc>
2757           <type name="GLib.List" c:type="GList*">
2758             <type name="Action"/>
2759           </type>
2760         </return-value>
2761       </method>
2762       <method name="add_action"
2763               c:identifier="gtk_action_group_add_action"
2764               version="2.4">
2765         <doc xml:whitespace="preserve">Adds an action object to the action group. Note that this function
2766 does not set up the accel path of the action, which can lead to problems
2767 if a user tries to modify the accelerator of a menuitem associated with
2768 the action. Therefore you must either set the accel path yourself with
2769 gtk_action_set_accel_path(), or use 
2770 &lt;literal&gt;gtk_action_group_add_action_with_accel (..., NULL)&lt;/literal&gt;.</doc>
2771         <return-value transfer-ownership="none">
2772           <type name="none" c:type="void"/>
2773         </return-value>
2774         <parameters>
2775           <parameter name="action" transfer-ownership="none">
2776             <doc xml:whitespace="preserve">an action</doc>
2777             <type name="Action" c:type="GtkAction*"/>
2778           </parameter>
2779         </parameters>
2780       </method>
2781       <method name="add_action_with_accel"
2782               c:identifier="gtk_action_group_add_action_with_accel"
2783               version="2.4">
2784         <doc xml:whitespace="preserve">Adds an action object to the action group and sets up the accelerator.
2785 If @accelerator is %NULL, attempts to use the accelerator associated 
2786 with the stock_id of the action. 
2787 Accel paths are set to
2788 &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>
2789         <return-value transfer-ownership="none">
2790           <type name="none" c:type="void"/>
2791         </return-value>
2792         <parameters>
2793           <parameter name="action" transfer-ownership="none">
2794             <doc xml:whitespace="preserve">the action to add</doc>
2795             <type name="Action" c:type="GtkAction*"/>
2796           </parameter>
2797           <parameter name="accelerator"
2798                      transfer-ownership="none"
2799                      allow-none="1">
2800             <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>
2801             <type name="utf8" c:type="gchar*"/>
2802           </parameter>
2803         </parameters>
2804       </method>
2805       <method name="remove_action"
2806               c:identifier="gtk_action_group_remove_action"
2807               version="2.4">
2808         <doc xml:whitespace="preserve">Removes an action object from the action group.</doc>
2809         <return-value transfer-ownership="none">
2810           <type name="none" c:type="void"/>
2811         </return-value>
2812         <parameters>
2813           <parameter name="action" transfer-ownership="none">
2814             <doc xml:whitespace="preserve">an action</doc>
2815             <type name="Action" c:type="GtkAction*"/>
2816           </parameter>
2817         </parameters>
2818       </method>
2819       <method name="add_actions"
2820               c:identifier="gtk_action_group_add_actions"
2821               version="2.4">
2822         <doc xml:whitespace="preserve">This is a convenience function to create a number of actions and add them 
2823 to the action group.
2824 The "activate" signals of the actions are connected to the callbacks and 
2825 their accel paths are set to 
2826 &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>
2827         <return-value transfer-ownership="none">
2828           <type name="none" c:type="void"/>
2829         </return-value>
2830         <parameters>
2831           <parameter name="entries" transfer-ownership="none">
2832             <doc xml:whitespace="preserve">an array of action descriptions</doc>
2833             <type name="ActionEntry" c:type="GtkActionEntry*"/>
2834           </parameter>
2835           <parameter name="n_entries" transfer-ownership="none">
2836             <doc xml:whitespace="preserve">the number of entries</doc>
2837             <type name="uint" c:type="guint"/>
2838           </parameter>
2839           <parameter name="user_data" transfer-ownership="none">
2840             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2841             <type name="any" c:type="gpointer"/>
2842           </parameter>
2843         </parameters>
2844       </method>
2845       <method name="add_toggle_actions"
2846               c:identifier="gtk_action_group_add_toggle_actions"
2847               version="2.4">
2848         <doc xml:whitespace="preserve">This is a convenience function to create a number of toggle actions and add them 
2849 to the action group.
2850 The "activate" signals of the actions are connected to the callbacks and 
2851 their accel paths are set to 
2852 &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>
2853         <return-value transfer-ownership="none">
2854           <type name="none" c:type="void"/>
2855         </return-value>
2856         <parameters>
2857           <parameter name="entries" transfer-ownership="none">
2858             <doc xml:whitespace="preserve">an array of toggle action descriptions</doc>
2859             <type name="ToggleActionEntry" c:type="GtkToggleActionEntry*"/>
2860           </parameter>
2861           <parameter name="n_entries" transfer-ownership="none">
2862             <doc xml:whitespace="preserve">the number of entries</doc>
2863             <type name="uint" c:type="guint"/>
2864           </parameter>
2865           <parameter name="user_data" transfer-ownership="none">
2866             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2867             <type name="any" c:type="gpointer"/>
2868           </parameter>
2869         </parameters>
2870       </method>
2871       <method name="add_radio_actions"
2872               c:identifier="gtk_action_group_add_radio_actions"
2873               version="2.4">
2874         <doc xml:whitespace="preserve">This is a convenience routine to create a group of radio actions and
2875 add them to the action group. 
2876 The "changed" signal of the first radio action is connected to the 
2877 &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>
2878         <return-value transfer-ownership="none">
2879           <type name="none" c:type="void"/>
2880         </return-value>
2881         <parameters>
2882           <parameter name="entries" transfer-ownership="none">
2883             <doc xml:whitespace="preserve">an array of radio action descriptions</doc>
2884             <type name="RadioActionEntry" c:type="GtkRadioActionEntry*"/>
2885           </parameter>
2886           <parameter name="n_entries" transfer-ownership="none">
2887             <doc xml:whitespace="preserve">the number of entries</doc>
2888             <type name="uint" c:type="guint"/>
2889           </parameter>
2890           <parameter name="value" transfer-ownership="none">
2891             <doc xml:whitespace="preserve">the value of the action to activate initially, or -1 if no action should be activated</doc>
2892             <type name="int" c:type="gint"/>
2893           </parameter>
2894           <parameter name="on_change"
2895                      transfer-ownership="none"
2896                      scope="call"
2897                      closure="5">
2898             <doc xml:whitespace="preserve">the callback to connect to the changed signal</doc>
2899             <type name="GObject.Callback" c:type="GCallback"/>
2900           </parameter>
2901           <parameter name="user_data" transfer-ownership="none">
2902             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2903             <type name="any" c:type="gpointer"/>
2904           </parameter>
2905         </parameters>
2906       </method>
2907       <method name="add_actions_full"
2908               c:identifier="gtk_action_group_add_actions_full"
2909               version="2.4">
2910         <doc xml:whitespace="preserve">This variant of gtk_action_group_add_actions() adds a #GDestroyNotify
2911 callback for @user_data.</doc>
2912         <return-value transfer-ownership="none">
2913           <type name="none" c:type="void"/>
2914         </return-value>
2915         <parameters>
2916           <parameter name="entries" transfer-ownership="none">
2917             <doc xml:whitespace="preserve">an array of action descriptions</doc>
2918             <type name="ActionEntry" c:type="GtkActionEntry*"/>
2919           </parameter>
2920           <parameter name="n_entries" transfer-ownership="none">
2921             <doc xml:whitespace="preserve">the number of entries</doc>
2922             <type name="uint" c:type="guint"/>
2923           </parameter>
2924           <parameter name="user_data" transfer-ownership="none">
2925             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2926             <type name="any" c:type="gpointer"/>
2927           </parameter>
2928           <parameter name="destroy" transfer-ownership="none" scope="call">
2929             <doc xml:whitespace="preserve">destroy notification callback for @user_data</doc>
2930             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
2931           </parameter>
2932         </parameters>
2933       </method>
2934       <method name="add_toggle_actions_full"
2935               c:identifier="gtk_action_group_add_toggle_actions_full"
2936               version="2.4">
2937         <doc xml:whitespace="preserve">This variant of gtk_action_group_add_toggle_actions() adds a 
2938 #GDestroyNotify callback for @user_data.</doc>
2939         <return-value transfer-ownership="none">
2940           <type name="none" c:type="void"/>
2941         </return-value>
2942         <parameters>
2943           <parameter name="entries" transfer-ownership="none">
2944             <doc xml:whitespace="preserve">an array of toggle action descriptions</doc>
2945             <type name="ToggleActionEntry" c:type="GtkToggleActionEntry*"/>
2946           </parameter>
2947           <parameter name="n_entries" transfer-ownership="none">
2948             <doc xml:whitespace="preserve">the number of entries</doc>
2949             <type name="uint" c:type="guint"/>
2950           </parameter>
2951           <parameter name="user_data" transfer-ownership="none">
2952             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2953             <type name="any" c:type="gpointer"/>
2954           </parameter>
2955           <parameter name="destroy" transfer-ownership="none" scope="call">
2956             <doc xml:whitespace="preserve">destroy notification callback for @user_data</doc>
2957             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
2958           </parameter>
2959         </parameters>
2960       </method>
2961       <method name="add_radio_actions_full"
2962               c:identifier="gtk_action_group_add_radio_actions_full"
2963               version="2.4">
2964         <doc xml:whitespace="preserve">This variant of gtk_action_group_add_radio_actions() adds a 
2965 #GDestroyNotify callback for @user_data.</doc>
2966         <return-value transfer-ownership="none">
2967           <type name="none" c:type="void"/>
2968         </return-value>
2969         <parameters>
2970           <parameter name="entries" transfer-ownership="none">
2971             <doc xml:whitespace="preserve">an array of radio action descriptions</doc>
2972             <type name="RadioActionEntry" c:type="GtkRadioActionEntry*"/>
2973           </parameter>
2974           <parameter name="n_entries" transfer-ownership="none">
2975             <doc xml:whitespace="preserve">the number of entries</doc>
2976             <type name="uint" c:type="guint"/>
2977           </parameter>
2978           <parameter name="value" transfer-ownership="none">
2979             <doc xml:whitespace="preserve">the value of the action to activate initially, or -1 if no action should be activated</doc>
2980             <type name="int" c:type="gint"/>
2981           </parameter>
2982           <parameter name="on_change"
2983                      transfer-ownership="none"
2984                      scope="notified"
2985                      closure="5"
2986                      destroy="6">
2987             <doc xml:whitespace="preserve">the callback to connect to the changed signal</doc>
2988             <type name="GObject.Callback" c:type="GCallback"/>
2989           </parameter>
2990           <parameter name="user_data" transfer-ownership="none">
2991             <doc xml:whitespace="preserve">data to pass to the action callbacks</doc>
2992             <type name="any" c:type="gpointer"/>
2993           </parameter>
2994           <parameter name="destroy" transfer-ownership="none" scope="call">
2995             <doc xml:whitespace="preserve">destroy notification callback for @user_data</doc>
2996             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
2997           </parameter>
2998         </parameters>
2999       </method>
3000       <method name="set_translate_func"
3001               c:identifier="gtk_action_group_set_translate_func"
3002               version="2.4 ">
3003         <doc xml:whitespace="preserve">Sets a function to be used for translating the @label and @tooltip of 
3004 #GtkActionGroupEntry&lt;!-- --&gt;s added by gtk_action_group_add_actions().
3005 If you're using gettext(), it is enough to set the translation domain
3006 with gtk_action_group_set_translation_domain().</doc>
3007         <return-value transfer-ownership="none">
3008           <type name="none" c:type="void"/>
3009         </return-value>
3010         <parameters>
3011           <parameter name="func"
3012                      transfer-ownership="none"
3013                      scope="notified"
3014                      closure="2"
3015                      destroy="3">
3016             <doc xml:whitespace="preserve">a #GtkTranslateFunc</doc>
3017             <type name="TranslateFunc" c:type="GtkTranslateFunc"/>
3018           </parameter>
3019           <parameter name="data" transfer-ownership="none">
3020             <doc xml:whitespace="preserve">data to be passed to @func and @notify</doc>
3021             <type name="any" c:type="gpointer"/>
3022           </parameter>
3023           <parameter name="notify" transfer-ownership="none" scope="call">
3024             <doc xml:whitespace="preserve">a #GDestroyNotify function to be called when @action_group is destroyed and when the translation function is changed again</doc>
3025             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
3026           </parameter>
3027         </parameters>
3028       </method>
3029       <method name="set_translation_domain"
3030               c:identifier="gtk_action_group_set_translation_domain"
3031               version="2.4">
3032         <doc xml:whitespace="preserve">Sets the translation domain and uses g_dgettext() for translating the 
3033 gtk_action_group_add_actions().
3034 If you're not using gettext() for localization, see 
3035 gtk_action_group_set_translate_func().</doc>
3036         <return-value transfer-ownership="none">
3037           <type name="none" c:type="void"/>
3038         </return-value>
3039         <parameters>
3040           <parameter name="domain" transfer-ownership="none">
3041             <doc xml:whitespace="preserve">the translation domain to use for g_dgettext() calls</doc>
3042             <type name="utf8" c:type="gchar*"/>
3043           </parameter>
3044         </parameters>
3045       </method>
3046       <method name="translate_string"
3047               c:identifier="gtk_action_group_translate_string"
3048               version="2.6">
3049         <doc xml:whitespace="preserve">Translates a string using the specified translate_func(). This
3050 is mainly intended for language bindings.</doc>
3051         <return-value transfer-ownership="none">
3052           <doc xml:whitespace="preserve">the translation of @string</doc>
3053           <type name="utf8" c:type="gchar*"/>
3054         </return-value>
3055         <parameters>
3056           <parameter name="string" transfer-ownership="none">
3057             <doc xml:whitespace="preserve">a string</doc>
3058             <type name="utf8" c:type="gchar*"/>
3059           </parameter>
3060         </parameters>
3061       </method>
3062       <property name="name"
3063                 writable="1"
3064                 construct-only="1"
3065                 transfer-ownership="none">
3066         <type name="utf8" c:type="gchararray"/>
3067       </property>
3068       <property name="sensitive" writable="1" transfer-ownership="none">
3069         <type name="boolean" c:type="gboolean"/>
3070       </property>
3071       <property name="visible" writable="1" transfer-ownership="none">
3072         <type name="boolean" c:type="gboolean"/>
3073       </property>
3074       <field name="parent">
3075         <type name="GObject.Object" c:type="GObject"/>
3076       </field>
3077       <field name="private_data">
3078         <type name="ActionGroupPrivate" c:type="GtkActionGroupPrivate*"/>
3079       </field>
3080       <glib:signal name="connect-proxy" version="2.4">
3081         <doc xml:whitespace="preserve">The ::connect-proxy signal is emitted after connecting a proxy to 
3082 an action in the group. Note that the proxy may have been connected 
3083 to a different action before.
3084 This is intended for simple customizations for which a custom action
3085 class would be too clumsy, e.g. showing tooltips for menuitems in the
3086 statusbar.
3087 #GtkUIManager proxies the signal and provides global notification 
3088 just before any action is connected to a proxy, which is probably more
3089 convenient to use.</doc>
3090         <return-value transfer-ownership="full">
3091           <type name="none" c:type="void"/>
3092         </return-value>
3093         <parameters>
3094           <parameter name="action" transfer-ownership="none">
3095             <doc xml:whitespace="preserve">the action</doc>
3096             <type name="Action" c:type="GtkAction"/>
3097           </parameter>
3098           <parameter name="proxy" transfer-ownership="none">
3099             <doc xml:whitespace="preserve">the proxy</doc>
3100             <type name="Widget" c:type="GtkWidget"/>
3101           </parameter>
3102         </parameters>
3103       </glib:signal>
3104       <glib:signal name="disconnect-proxy" version="2.4">
3105         <doc xml:whitespace="preserve">The ::disconnect-proxy signal is emitted after disconnecting a proxy 
3106 from an action in the group. 
3107 #GtkUIManager proxies the signal and provides global notification 
3108 just before any action is connected to a proxy, which is probably more
3109 convenient to use.</doc>
3110         <return-value transfer-ownership="full">
3111           <type name="none" c:type="void"/>
3112         </return-value>
3113         <parameters>
3114           <parameter name="action" transfer-ownership="none">
3115             <doc xml:whitespace="preserve">the action</doc>
3116             <type name="Action" c:type="GtkAction"/>
3117           </parameter>
3118           <parameter name="proxy" transfer-ownership="none">
3119             <doc xml:whitespace="preserve">the proxy</doc>
3120             <type name="Widget" c:type="GtkWidget"/>
3121           </parameter>
3122         </parameters>
3123       </glib:signal>
3124       <glib:signal name="post-activate" version="2.4">
3125         <doc xml:whitespace="preserve">The ::post-activate signal is emitted just after the @action in the
3126 This is intended for #GtkUIManager to proxy the signal and provide global
3127 notification just after any action is activated.</doc>
3128         <return-value transfer-ownership="full">
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 action</doc>
3134             <type name="Action" c:type="GtkAction"/>
3135           </parameter>
3136         </parameters>
3137       </glib:signal>
3138       <glib:signal name="pre-activate" version="2.4">
3139         <doc xml:whitespace="preserve">The ::pre-activate signal is emitted just before the @action in the
3140 This is intended for #GtkUIManager to proxy the signal and provide global
3141 notification just before any action is activated.</doc>
3142         <return-value transfer-ownership="full">
3143           <type name="none" c:type="void"/>
3144         </return-value>
3145         <parameters>
3146           <parameter name="action" transfer-ownership="none">
3147             <doc xml:whitespace="preserve">the action</doc>
3148             <type name="Action" c:type="GtkAction"/>
3149           </parameter>
3150         </parameters>
3151       </glib:signal>
3152     </class>
3153     <record name="ActionGroupClass"
3154             c:type="GtkActionGroupClass"
3155             glib:is-gtype-struct-for="ActionGroup">
3156       <field name="parent_class">
3157         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
3158       </field>
3159       <field name="get_action">
3160         <callback name="get_action" c:type="get_action">
3161           <return-value transfer-ownership="full">
3162             <doc xml:whitespace="preserve">the action, or %NULL if no action by that name exists</doc>
3163             <type name="Action" c:type="GtkAction*"/>
3164           </return-value>
3165           <parameters>
3166             <parameter name="action_group" transfer-ownership="none">
3167               <type name="ActionGroup" c:type="GtkActionGroup*"/>
3168             </parameter>
3169             <parameter name="action_name" transfer-ownership="none">
3170               <doc xml:whitespace="preserve">the name of the action</doc>
3171               <type name="utf8" c:type="gchar*"/>
3172             </parameter>
3173           </parameters>
3174         </callback>
3175       </field>
3176       <field name="gtk_reserved1">
3177         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
3178           <return-value transfer-ownership="none">
3179             <type name="none" c:type="void"/>
3180           </return-value>
3181         </callback>
3182       </field>
3183       <field name="gtk_reserved2">
3184         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
3185           <return-value transfer-ownership="none">
3186             <type name="none" c:type="void"/>
3187           </return-value>
3188         </callback>
3189       </field>
3190       <field name="gtk_reserved3">
3191         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
3192           <return-value transfer-ownership="none">
3193             <type name="none" c:type="void"/>
3194           </return-value>
3195         </callback>
3196       </field>
3197       <field name="gtk_reserved4">
3198         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
3199           <return-value transfer-ownership="none">
3200             <type name="none" c:type="void"/>
3201           </return-value>
3202         </callback>
3203       </field>
3204     </record>
3205     <record name="ActionGroupPrivate" c:type="GtkActionGroupPrivate">
3206     </record>
3207     <record name="ActionPrivate" c:type="GtkActionPrivate">
3208     </record>
3209     <interface name="Activatable"
3210                c:type="GtkActivatable"
3211                glib:type-name="GtkActivatable"
3212                glib:get-type="gtk_activatable_get_type"
3213                glib:type-struct="ActivatableIface">
3214       <virtual-method name="update">
3215         <return-value transfer-ownership="none">
3216           <type name="none" c:type="void"/>
3217         </return-value>
3218         <parameters>
3219           <parameter name="action" transfer-ownership="none">
3220             <type name="Action" c:type="GtkAction*"/>
3221           </parameter>
3222           <parameter name="property_name" transfer-ownership="none">
3223             <type name="utf8" c:type="gchar*"/>
3224           </parameter>
3225         </parameters>
3226       </virtual-method>
3227       <virtual-method name="sync_action_properties"
3228                       invoker="sync_action_properties"
3229                       version="2.16">
3230         <doc xml:whitespace="preserve">This is called to update the activatable completely, this is called
3231 internally when the #GtkActivatable::related-action property is set
3232 or unset and by the implementing class when
3233 #GtkActivatable::use-action-appearance changes.</doc>
3234         <return-value transfer-ownership="none">
3235           <type name="none" c:type="void"/>
3236         </return-value>
3237         <parameters>
3238           <parameter name="action" transfer-ownership="none" allow-none="1">
3239             <doc xml:whitespace="preserve">the related #GtkAction or %NULL</doc>
3240             <type name="Action" c:type="GtkAction*"/>
3241           </parameter>
3242         </parameters>
3243       </virtual-method>
3244       <method name="sync_action_properties"
3245               c:identifier="gtk_activatable_sync_action_properties"
3246               version="2.16">
3247         <doc xml:whitespace="preserve">This is called to update the activatable completely, this is called
3248 internally when the #GtkActivatable::related-action property is set
3249 or unset and by the implementing class when
3250 #GtkActivatable::use-action-appearance changes.</doc>
3251         <return-value transfer-ownership="none">
3252           <type name="none" c:type="void"/>
3253         </return-value>
3254         <parameters>
3255           <parameter name="action" transfer-ownership="none" allow-none="1">
3256             <doc xml:whitespace="preserve">the related #GtkAction or %NULL</doc>
3257             <type name="Action" c:type="GtkAction*"/>
3258           </parameter>
3259         </parameters>
3260       </method>
3261       <method name="set_related_action"
3262               c:identifier="gtk_activatable_set_related_action"
3263               version="2.16">
3264         <doc xml:whitespace="preserve">Sets the related action on the @activatable object.
3265 &lt;note&gt;&lt;para&gt;#GtkActivatable implementors need to handle the #GtkActivatable:related-action
3266 property and call gtk_activatable_do_set_related_action() when it changes.&lt;/para&gt;&lt;/note&gt;</doc>
3267         <return-value transfer-ownership="none">
3268           <type name="none" c:type="void"/>
3269         </return-value>
3270         <parameters>
3271           <parameter name="action" transfer-ownership="none">
3272             <doc xml:whitespace="preserve">the #GtkAction to set</doc>
3273             <type name="Action" c:type="GtkAction*"/>
3274           </parameter>
3275         </parameters>
3276       </method>
3277       <method name="get_related_action"
3278               c:identifier="gtk_activatable_get_related_action"
3279               version="2.16">
3280         <doc xml:whitespace="preserve">Gets the related #GtkAction for @activatable.</doc>
3281         <return-value transfer-ownership="full">
3282           <doc xml:whitespace="preserve">the related #GtkAction if one is set.</doc>
3283           <type name="Action" c:type="GtkAction*"/>
3284         </return-value>
3285       </method>
3286       <method name="set_use_action_appearance"
3287               c:identifier="gtk_activatable_set_use_action_appearance"
3288               version="2.16">
3289         <doc xml:whitespace="preserve">Sets whether this activatable should reset its layout and appearance
3290 when setting the related action or when the action changes appearance
3291 &lt;note&gt;&lt;para&gt;#GtkActivatable implementors need to handle the
3292 #GtkActivatable:use-action-appearance property and call
3293 gtk_activatable_sync_action_properties() to update @activatable
3294 if needed.&lt;/para&gt;&lt;/note&gt;</doc>
3295         <return-value transfer-ownership="none">
3296           <type name="none" c:type="void"/>
3297         </return-value>
3298         <parameters>
3299           <parameter name="use_appearance" transfer-ownership="none">
3300             <doc xml:whitespace="preserve">whether to use the actions appearance</doc>
3301             <type name="boolean" c:type="gboolean"/>
3302           </parameter>
3303         </parameters>
3304       </method>
3305       <method name="get_use_action_appearance"
3306               c:identifier="gtk_activatable_get_use_action_appearance"
3307               version="2.16">
3308         <doc xml:whitespace="preserve">Gets whether this activatable should reset its layout
3309 and appearance when setting the related action or when
3310 the action changes appearance.</doc>
3311         <return-value transfer-ownership="none">
3312           <doc xml:whitespace="preserve">whether @activatable uses its actions appearance.</doc>
3313           <type name="boolean" c:type="gboolean"/>
3314         </return-value>
3315       </method>
3316       <method name="do_set_related_action"
3317               c:identifier="gtk_activatable_do_set_related_action"
3318               version="2.16">
3319         <doc xml:whitespace="preserve">This is a utility function for #GtkActivatable implementors.
3320 When implementing #GtkActivatable you must call this when
3321 handling changes of the #GtkActivatable:related-action, and
3322 you must also use this to break references in #GObject-&gt;dispose().
3323 This function adds a reference to the currently set related
3324 action for you, it also makes sure the #GtkActivatable-&gt;update()
3325 method is called when the related #GtkAction properties change
3326 and registers to the action's proxy list.
3327 &lt;note&gt;&lt;para&gt;Be careful to call this before setting the local
3328 copy of the #GtkAction property, since this function uses 
3329 gtk_activatable_get_action() to retrieve the previous action&lt;/para&gt;&lt;/note&gt;</doc>
3330         <return-value transfer-ownership="none">
3331           <type name="none" c:type="void"/>
3332         </return-value>
3333         <parameters>
3334           <parameter name="action" transfer-ownership="none">
3335             <doc xml:whitespace="preserve">the #GtkAction to set</doc>
3336             <type name="Action" c:type="GtkAction*"/>
3337           </parameter>
3338         </parameters>
3339       </method>
3340       <property name="related-action"
3341                 version="2.16"
3342                 writable="1"
3343                 transfer-ownership="none">
3344         <doc xml:whitespace="preserve">The action that this activatable will activate and receive
3345 updates from for various states and possibly appearance.
3346 &lt;note&gt;&lt;para&gt;#GtkActivatable implementors need to handle the this property and 
3347 call gtk_activatable_do_set_related_action() when it changes.&lt;/para&gt;&lt;/note&gt;</doc>
3348         <type name="Action" c:type="GtkAction"/>
3349       </property>
3350       <property name="use-action-appearance"
3351                 version="2.16"
3352                 writable="1"
3353                 transfer-ownership="none">
3354         <doc xml:whitespace="preserve">Whether this activatable should reset its layout
3355 and appearance when setting the related action or when
3356 the action changes appearance.
3357 See the #GtkAction documentation directly to find which properties
3358 should be ignored by the #GtkActivatable when this property is %FALSE.
3359 &lt;note&gt;&lt;para&gt;#GtkActivatable implementors need to handle this property
3360 and call gtk_activatable_sync_action_properties() on the activatable
3361 widget when it changes.&lt;/para&gt;&lt;/note&gt;</doc>
3362         <type name="boolean" c:type="gboolean"/>
3363       </property>
3364     </interface>
3365     <record name="ActivatableIface"
3366             c:type="GtkActivatableIface"
3367             glib:is-gtype-struct-for="Activatable"
3368             version="2.16">
3369       <field name="g_iface">
3370         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
3371       </field>
3372       <field name="update">
3373         <callback name="update" c:type="update">
3374           <return-value transfer-ownership="none">
3375             <type name="none" c:type="void"/>
3376           </return-value>
3377           <parameters>
3378             <parameter name="activatable" transfer-ownership="none">
3379               <type name="Activatable" c:type="GtkActivatable*"/>
3380             </parameter>
3381             <parameter name="action" transfer-ownership="none">
3382               <type name="Action" c:type="GtkAction*"/>
3383             </parameter>
3384             <parameter name="property_name" transfer-ownership="none">
3385               <type name="utf8" c:type="gchar*"/>
3386             </parameter>
3387           </parameters>
3388         </callback>
3389       </field>
3390       <field name="sync_action_properties">
3391         <callback name="sync_action_properties"
3392                   c:type="sync_action_properties">
3393           <return-value transfer-ownership="none">
3394             <type name="none" c:type="void"/>
3395           </return-value>
3396           <parameters>
3397             <parameter name="activatable" transfer-ownership="none">
3398               <type name="Activatable" c:type="GtkActivatable*"/>
3399             </parameter>
3400             <parameter name="action" transfer-ownership="none" allow-none="1">
3401               <doc xml:whitespace="preserve">the related #GtkAction or %NULL</doc>
3402               <type name="Action" c:type="GtkAction*"/>
3403             </parameter>
3404           </parameters>
3405         </callback>
3406       </field>
3407     </record>
3408     <class name="Adjustment"
3409            c:type="GtkAdjustment"
3410            parent="Object"
3411            glib:type-name="GtkAdjustment"
3412            glib:get-type="gtk_adjustment_get_type"
3413            glib:type-struct="AdjustmentClass">
3414       <constructor name="new" c:identifier="gtk_adjustment_new">
3415         <return-value transfer-ownership="full">
3416           <type name="Adjustment" c:type="GtkObject*"/>
3417         </return-value>
3418         <parameters>
3419           <parameter name="value" transfer-ownership="none">
3420             <type name="double" c:type="gdouble"/>
3421           </parameter>
3422           <parameter name="lower" transfer-ownership="none">
3423             <type name="double" c:type="gdouble"/>
3424           </parameter>
3425           <parameter name="upper" transfer-ownership="none">
3426             <type name="double" c:type="gdouble"/>
3427           </parameter>
3428           <parameter name="step_increment" transfer-ownership="none">
3429             <type name="double" c:type="gdouble"/>
3430           </parameter>
3431           <parameter name="page_increment" transfer-ownership="none">
3432             <type name="double" c:type="gdouble"/>
3433           </parameter>
3434           <parameter name="page_size" transfer-ownership="none">
3435             <type name="double" c:type="gdouble"/>
3436           </parameter>
3437         </parameters>
3438       </constructor>
3439       <method name="changed" c:identifier="gtk_adjustment_changed">
3440         <return-value transfer-ownership="none">
3441           <type name="none" c:type="void"/>
3442         </return-value>
3443       </method>
3444       <method name="value_changed" c:identifier="gtk_adjustment_value_changed">
3445         <return-value transfer-ownership="none">
3446           <type name="none" c:type="void"/>
3447         </return-value>
3448       </method>
3449       <method name="clamp_page" c:identifier="gtk_adjustment_clamp_page">
3450         <return-value transfer-ownership="none">
3451           <type name="none" c:type="void"/>
3452         </return-value>
3453         <parameters>
3454           <parameter name="lower" transfer-ownership="none">
3455             <type name="double" c:type="gdouble"/>
3456           </parameter>
3457           <parameter name="upper" transfer-ownership="none">
3458             <type name="double" c:type="gdouble"/>
3459           </parameter>
3460         </parameters>
3461       </method>
3462       <method name="get_value" c:identifier="gtk_adjustment_get_value">
3463         <doc xml:whitespace="preserve">Gets the current value of the adjustment. See
3464 gtk_adjustment_set_value ().</doc>
3465         <return-value transfer-ownership="none">
3466           <doc xml:whitespace="preserve">The current value of the adjustment.</doc>
3467           <type name="double" c:type="gdouble"/>
3468         </return-value>
3469       </method>
3470       <method name="set_value" c:identifier="gtk_adjustment_set_value">
3471         <return-value transfer-ownership="none">
3472           <type name="none" c:type="void"/>
3473         </return-value>
3474         <parameters>
3475           <parameter name="value" transfer-ownership="none">
3476             <type name="double" c:type="gdouble"/>
3477           </parameter>
3478         </parameters>
3479       </method>
3480       <method name="get_lower"
3481               c:identifier="gtk_adjustment_get_lower"
3482               version="2.14">
3483         <doc xml:whitespace="preserve">Retrieves the minimum value of the adjustment.</doc>
3484         <return-value transfer-ownership="none">
3485           <doc xml:whitespace="preserve">The current minimum value of the adjustment.</doc>
3486           <type name="double" c:type="gdouble"/>
3487         </return-value>
3488       </method>
3489       <method name="set_lower"
3490               c:identifier="gtk_adjustment_set_lower"
3491               version="2.14">
3492         <doc xml:whitespace="preserve">Sets the minimum value of the adjustment.
3493 When setting multiple adjustment properties via their individual
3494 setters, multiple "changed" signals will be emitted. However, since
3495 the emission of the "changed" signal is tied to the emission of the
3496 "GObject::notify" signals of the changed properties, it's possible
3497 to compress the "changed" signals into one by calling
3498 g_object_freeze_notify() and g_object_thaw_notify() around the
3499 calls to the individual setters.
3500 Alternatively, using a single g_object_set() for all the properties
3501 to change, or using gtk_adjustment_configure() has the same effect
3502 of compressing "changed" emissions.</doc>
3503         <return-value transfer-ownership="none">
3504           <type name="none" c:type="void"/>
3505         </return-value>
3506         <parameters>
3507           <parameter name="lower" transfer-ownership="none">
3508             <doc xml:whitespace="preserve">the new minimum value</doc>
3509             <type name="double" c:type="gdouble"/>
3510           </parameter>
3511         </parameters>
3512       </method>
3513       <method name="get_upper"
3514               c:identifier="gtk_adjustment_get_upper"
3515               version="2.14">
3516         <doc xml:whitespace="preserve">Retrieves the maximum value of the adjustment.</doc>
3517         <return-value transfer-ownership="none">
3518           <doc xml:whitespace="preserve">The current maximum value of the adjustment.</doc>
3519           <type name="double" c:type="gdouble"/>
3520         </return-value>
3521       </method>
3522       <method name="set_upper"
3523               c:identifier="gtk_adjustment_set_upper"
3524               version="2.14">
3525         <doc xml:whitespace="preserve">Sets the maximum value of the adjustment.
3526 Note that values will be restricted by
3527 &lt;literal&gt;upper - page-size&lt;/literal&gt; if the page-size
3528 property is nonzero.
3529 See gtk_adjustment_set_lower() about how to compress multiple
3530 emissions of the "changed" signal when setting multiple adjustment
3531 properties.</doc>
3532         <return-value transfer-ownership="none">
3533           <type name="none" c:type="void"/>
3534         </return-value>
3535         <parameters>
3536           <parameter name="upper" transfer-ownership="none">
3537             <doc xml:whitespace="preserve">the new maximum value</doc>
3538             <type name="double" c:type="gdouble"/>
3539           </parameter>
3540         </parameters>
3541       </method>
3542       <method name="get_step_increment"
3543               c:identifier="gtk_adjustment_get_step_increment"
3544               version="2.14">
3545         <doc xml:whitespace="preserve">Retrieves the step increment of the adjustment.</doc>
3546         <return-value transfer-ownership="none">
3547           <doc xml:whitespace="preserve">The current step increment of the adjustment.</doc>
3548           <type name="double" c:type="gdouble"/>
3549         </return-value>
3550       </method>
3551       <method name="set_step_increment"
3552               c:identifier="gtk_adjustment_set_step_increment"
3553               version="2.14">
3554         <doc xml:whitespace="preserve">Sets the step increment of the adjustment.
3555 See gtk_adjustment_set_lower() about how to compress multiple
3556 emissions of the "changed" signal when setting multiple adjustment
3557 properties.</doc>
3558         <return-value transfer-ownership="none">
3559           <type name="none" c:type="void"/>
3560         </return-value>
3561         <parameters>
3562           <parameter name="step_increment" transfer-ownership="none">
3563             <doc xml:whitespace="preserve">the new step increment</doc>
3564             <type name="double" c:type="gdouble"/>
3565           </parameter>
3566         </parameters>
3567       </method>
3568       <method name="get_page_increment"
3569               c:identifier="gtk_adjustment_get_page_increment"
3570               version="2.14">
3571         <doc xml:whitespace="preserve">Retrieves the page increment of the adjustment.</doc>
3572         <return-value transfer-ownership="none">
3573           <doc xml:whitespace="preserve">The current page increment of the adjustment.</doc>
3574           <type name="double" c:type="gdouble"/>
3575         </return-value>
3576       </method>
3577       <method name="set_page_increment"
3578               c:identifier="gtk_adjustment_set_page_increment"
3579               version="2.14">
3580         <doc xml:whitespace="preserve">Sets the page increment of the adjustment.
3581 See gtk_adjustment_set_lower() about how to compress multiple
3582 emissions of the "changed" signal when setting multiple adjustment
3583 properties.</doc>
3584         <return-value transfer-ownership="none">
3585           <type name="none" c:type="void"/>
3586         </return-value>
3587         <parameters>
3588           <parameter name="page_increment" transfer-ownership="none">
3589             <doc xml:whitespace="preserve">the new page increment</doc>
3590             <type name="double" c:type="gdouble"/>
3591           </parameter>
3592         </parameters>
3593       </method>
3594       <method name="get_page_size"
3595               c:identifier="gtk_adjustment_get_page_size"
3596               version="2.14">
3597         <doc xml:whitespace="preserve">Retrieves the page size of the adjustment.</doc>
3598         <return-value transfer-ownership="none">
3599           <doc xml:whitespace="preserve">The current page size of the adjustment.</doc>
3600           <type name="double" c:type="gdouble"/>
3601         </return-value>
3602       </method>
3603       <method name="set_page_size"
3604               c:identifier="gtk_adjustment_set_page_size"
3605               version="2.14">
3606         <doc xml:whitespace="preserve">Sets the page size of the adjustment.
3607 See gtk_adjustment_set_lower() about how to compress multiple
3608 emissions of the "changed" signal when setting multiple adjustment
3609 properties.</doc>
3610         <return-value transfer-ownership="none">
3611           <type name="none" c:type="void"/>
3612         </return-value>
3613         <parameters>
3614           <parameter name="page_size" transfer-ownership="none">
3615             <doc xml:whitespace="preserve">the new page size</doc>
3616             <type name="double" c:type="gdouble"/>
3617           </parameter>
3618         </parameters>
3619       </method>
3620       <method name="configure"
3621               c:identifier="gtk_adjustment_configure"
3622               version="2.14">
3623         <doc xml:whitespace="preserve">Sets all properties of the adjustment at once.
3624 Use this function to avoid multiple emissions of the "changed"
3625 signal. See gtk_adjustment_set_lower() for an alternative way
3626 of compressing multiple emissions of "changed" into one.</doc>
3627         <return-value transfer-ownership="none">
3628           <type name="none" c:type="void"/>
3629         </return-value>
3630         <parameters>
3631           <parameter name="value" transfer-ownership="none">
3632             <doc xml:whitespace="preserve">the new value</doc>
3633             <type name="double" c:type="gdouble"/>
3634           </parameter>
3635           <parameter name="lower" transfer-ownership="none">
3636             <doc xml:whitespace="preserve">the new minimum value</doc>
3637             <type name="double" c:type="gdouble"/>
3638           </parameter>
3639           <parameter name="upper" transfer-ownership="none">
3640             <doc xml:whitespace="preserve">the new maximum value</doc>
3641             <type name="double" c:type="gdouble"/>
3642           </parameter>
3643           <parameter name="step_increment" transfer-ownership="none">
3644             <doc xml:whitespace="preserve">the new step increment</doc>
3645             <type name="double" c:type="gdouble"/>
3646           </parameter>
3647           <parameter name="page_increment" transfer-ownership="none">
3648             <doc xml:whitespace="preserve">the new page increment</doc>
3649             <type name="double" c:type="gdouble"/>
3650           </parameter>
3651           <parameter name="page_size" transfer-ownership="none">
3652             <doc xml:whitespace="preserve">the new page size</doc>
3653             <type name="double" c:type="gdouble"/>
3654           </parameter>
3655         </parameters>
3656       </method>
3657       <property name="lower"
3658                 version="2.4"
3659                 writable="1"
3660                 transfer-ownership="none">
3661         <doc xml:whitespace="preserve">The minimum value of the adjustment.</doc>
3662         <type name="double" c:type="gdouble"/>
3663       </property>
3664       <property name="page-increment"
3665                 version="2.4"
3666                 writable="1"
3667                 transfer-ownership="none">
3668         <doc xml:whitespace="preserve">The page increment of the adjustment.</doc>
3669         <type name="double" c:type="gdouble"/>
3670       </property>
3671       <property name="page-size"
3672                 version="2.4"
3673                 writable="1"
3674                 transfer-ownership="none">
3675         <doc xml:whitespace="preserve">The page size of the adjustment. 
3676 Note that the page-size is irrelevant and should be set to zero
3677 if the adjustment is used for a simple scalar value, e.g. in a 
3678 #GtkSpinButton.</doc>
3679         <type name="double" c:type="gdouble"/>
3680       </property>
3681       <property name="step-increment"
3682                 version="2.4"
3683                 writable="1"
3684                 transfer-ownership="none">
3685         <doc xml:whitespace="preserve">The step increment of the adjustment.</doc>
3686         <type name="double" c:type="gdouble"/>
3687       </property>
3688       <property name="upper"
3689                 version="2.4"
3690                 writable="1"
3691                 transfer-ownership="none">
3692         <doc xml:whitespace="preserve">The maximum value of the adjustment. 
3693 Note that values will be restricted by 
3694 &lt;literal&gt;upper - page-size&lt;/literal&gt; if the page-size 
3695 property is nonzero.</doc>
3696         <type name="double" c:type="gdouble"/>
3697       </property>
3698       <property name="value"
3699                 version="2.4"
3700                 writable="1"
3701                 transfer-ownership="none">
3702         <doc xml:whitespace="preserve">The value of the adjustment.</doc>
3703         <type name="double" c:type="gdouble"/>
3704       </property>
3705       <field name="parent_instance">
3706         <type name="Object" c:type="GtkObject"/>
3707       </field>
3708       <field name="lower">
3709         <type name="double" c:type="gdouble"/>
3710       </field>
3711       <field name="upper">
3712         <type name="double" c:type="gdouble"/>
3713       </field>
3714       <field name="value">
3715         <type name="double" c:type="gdouble"/>
3716       </field>
3717       <field name="step_increment">
3718         <type name="double" c:type="gdouble"/>
3719       </field>
3720       <field name="page_increment">
3721         <type name="double" c:type="gdouble"/>
3722       </field>
3723       <field name="page_size">
3724         <type name="double" c:type="gdouble"/>
3725       </field>
3726       <glib:signal name="changed">
3727         <return-value transfer-ownership="full">
3728           <type name="none" c:type="void"/>
3729         </return-value>
3730       </glib:signal>
3731       <glib:signal name="value-changed">
3732         <return-value transfer-ownership="full">
3733           <type name="none" c:type="void"/>
3734         </return-value>
3735       </glib:signal>
3736     </class>
3737     <record name="AdjustmentClass"
3738             c:type="GtkAdjustmentClass"
3739             glib:is-gtype-struct-for="Adjustment">
3740       <field name="parent_class">
3741         <type name="ObjectClass" c:type="GtkObjectClass"/>
3742       </field>
3743       <field name="changed">
3744         <callback name="changed" c:type="changed">
3745           <return-value transfer-ownership="none">
3746             <type name="none" c:type="void"/>
3747           </return-value>
3748           <parameters>
3749             <parameter name="adjustment" transfer-ownership="none">
3750               <type name="Adjustment" c:type="GtkAdjustment*"/>
3751             </parameter>
3752           </parameters>
3753         </callback>
3754       </field>
3755       <field name="value_changed">
3756         <callback name="value_changed" c:type="value_changed">
3757           <return-value transfer-ownership="none">
3758             <type name="none" c:type="void"/>
3759           </return-value>
3760           <parameters>
3761             <parameter name="adjustment" transfer-ownership="none">
3762               <type name="Adjustment" c:type="GtkAdjustment*"/>
3763             </parameter>
3764           </parameters>
3765         </callback>
3766       </field>
3767       <field name="gtk_reserved1">
3768         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
3769           <return-value transfer-ownership="none">
3770             <type name="none" c:type="void"/>
3771           </return-value>
3772         </callback>
3773       </field>
3774       <field name="gtk_reserved2">
3775         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
3776           <return-value transfer-ownership="none">
3777             <type name="none" c:type="void"/>
3778           </return-value>
3779         </callback>
3780       </field>
3781       <field name="gtk_reserved3">
3782         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
3783           <return-value transfer-ownership="none">
3784             <type name="none" c:type="void"/>
3785           </return-value>
3786         </callback>
3787       </field>
3788       <field name="gtk_reserved4">
3789         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
3790           <return-value transfer-ownership="none">
3791             <type name="none" c:type="void"/>
3792           </return-value>
3793         </callback>
3794       </field>
3795     </record>
3796     <class name="Alignment"
3797            c:type="GtkAlignment"
3798            parent="Bin"
3799            glib:type-name="GtkAlignment"
3800            glib:get-type="gtk_alignment_get_type"
3801            glib:type-struct="AlignmentClass">
3802       <implements name="Atk.ImplementorIface"/>
3803       <implements name="Buildable"/>
3804       <constructor name="new" c:identifier="gtk_alignment_new">
3805         <doc xml:whitespace="preserve">Creates a new #GtkAlignment.</doc>
3806         <return-value transfer-ownership="full">
3807           <doc xml:whitespace="preserve">the new #GtkAlignment.</doc>
3808           <type name="Alignment" c:type="GtkWidget*"/>
3809         </return-value>
3810         <parameters>
3811           <parameter name="xalign" transfer-ownership="none">
3812             <doc xml:whitespace="preserve">the horizontal alignment of the child widget, from 0 (left) to 1 (right).</doc>
3813             <type name="float" c:type="gfloat"/>
3814           </parameter>
3815           <parameter name="yalign" transfer-ownership="none">
3816             <doc xml:whitespace="preserve">the vertical alignment of the child widget, from 0 (top) to 1 (bottom).</doc>
3817             <type name="float" c:type="gfloat"/>
3818           </parameter>
3819           <parameter name="xscale" transfer-ownership="none">
3820             <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>
3821             <type name="float" c:type="gfloat"/>
3822           </parameter>
3823           <parameter name="yscale" transfer-ownership="none">
3824             <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>
3825             <type name="float" c:type="gfloat"/>
3826           </parameter>
3827         </parameters>
3828       </constructor>
3829       <method name="set" c:identifier="gtk_alignment_set">
3830         <doc xml:whitespace="preserve">Sets the #GtkAlignment values.</doc>
3831         <return-value transfer-ownership="none">
3832           <type name="none" c:type="void"/>
3833         </return-value>
3834         <parameters>
3835           <parameter name="xalign" transfer-ownership="none">
3836             <doc xml:whitespace="preserve">the horizontal alignment of the child widget, from 0 (left) to 1 (right).</doc>
3837             <type name="float" c:type="gfloat"/>
3838           </parameter>
3839           <parameter name="yalign" transfer-ownership="none">
3840             <doc xml:whitespace="preserve">the vertical alignment of the child widget, from 0 (top) to 1 (bottom).</doc>
3841             <type name="float" c:type="gfloat"/>
3842           </parameter>
3843           <parameter name="xscale" transfer-ownership="none">
3844             <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>
3845             <type name="float" c:type="gfloat"/>
3846           </parameter>
3847           <parameter name="yscale" transfer-ownership="none">
3848             <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>
3849             <type name="float" c:type="gfloat"/>
3850           </parameter>
3851         </parameters>
3852       </method>
3853       <method name="set_padding"
3854               c:identifier="gtk_alignment_set_padding"
3855               version="2.4">
3856         <doc xml:whitespace="preserve">Sets the padding on the different sides of the widget.
3857 The padding adds blank space to the sides of the widget. For instance,
3858 this can be used to indent the child widget towards the right by adding
3859 padding on the left.</doc>
3860         <return-value transfer-ownership="none">
3861           <type name="none" c:type="void"/>
3862         </return-value>
3863         <parameters>
3864           <parameter name="padding_top" transfer-ownership="none">
3865             <doc xml:whitespace="preserve">the padding at the top of the widget</doc>
3866             <type name="uint" c:type="guint"/>
3867           </parameter>
3868           <parameter name="padding_bottom" transfer-ownership="none">
3869             <doc xml:whitespace="preserve">the padding at the bottom of the widget</doc>
3870             <type name="uint" c:type="guint"/>
3871           </parameter>
3872           <parameter name="padding_left" transfer-ownership="none">
3873             <doc xml:whitespace="preserve">the padding at the left of the widget</doc>
3874             <type name="uint" c:type="guint"/>
3875           </parameter>
3876           <parameter name="padding_right" transfer-ownership="none">
3877             <doc xml:whitespace="preserve">the padding at the right of the widget.</doc>
3878             <type name="uint" c:type="guint"/>
3879           </parameter>
3880         </parameters>
3881       </method>
3882       <method name="get_padding"
3883               c:identifier="gtk_alignment_get_padding"
3884               version="2.4">
3885         <doc xml:whitespace="preserve">Gets the padding on the different sides of the widget.
3886 See gtk_alignment_set_padding ().</doc>
3887         <return-value transfer-ownership="none">
3888           <type name="none" c:type="void"/>
3889         </return-value>
3890         <parameters>
3891           <parameter name="padding_top"
3892                      direction="out"
3893                      caller-allocates="0"
3894                      transfer-ownership="full"
3895                      allow-none="1">
3896             <doc xml:whitespace="preserve">location to store the padding for the top of the widget, or %NULL</doc>
3897             <type name="uint" c:type="guint*"/>
3898           </parameter>
3899           <parameter name="padding_bottom"
3900                      direction="out"
3901                      caller-allocates="0"
3902                      transfer-ownership="full"
3903                      allow-none="1">
3904             <doc xml:whitespace="preserve">location to store the padding for the bottom of the widget, or %NULL</doc>
3905             <type name="uint" c:type="guint*"/>
3906           </parameter>
3907           <parameter name="padding_left"
3908                      direction="out"
3909                      caller-allocates="0"
3910                      transfer-ownership="full"
3911                      allow-none="1">
3912             <doc xml:whitespace="preserve">location to store the padding for the left of the widget, or %NULL</doc>
3913             <type name="uint" c:type="guint*"/>
3914           </parameter>
3915           <parameter name="padding_right"
3916                      direction="out"
3917                      caller-allocates="0"
3918                      transfer-ownership="full"
3919                      allow-none="1">
3920             <doc xml:whitespace="preserve">location to store the padding for the right of the widget, or %NULL</doc>
3921             <type name="uint" c:type="guint*"/>
3922           </parameter>
3923         </parameters>
3924       </method>
3925       <property name="bottom-padding"
3926                 version="2.4"
3927                 writable="1"
3928                 transfer-ownership="none">
3929         <doc xml:whitespace="preserve">The padding to insert at the bottom of the widget.</doc>
3930         <type name="uint" c:type="guint"/>
3931       </property>
3932       <property name="left-padding"
3933                 version="2.4"
3934                 writable="1"
3935                 transfer-ownership="none">
3936         <doc xml:whitespace="preserve">The padding to insert at the left of the widget.</doc>
3937         <type name="uint" c:type="guint"/>
3938       </property>
3939       <property name="right-padding"
3940                 version="2.4"
3941                 writable="1"
3942                 transfer-ownership="none">
3943         <doc xml:whitespace="preserve">The padding to insert at the right of the widget.</doc>
3944         <type name="uint" c:type="guint"/>
3945       </property>
3946       <property name="top-padding"
3947                 version="2.4"
3948                 writable="1"
3949                 transfer-ownership="none">
3950         <doc xml:whitespace="preserve">The padding to insert at the top of the widget.</doc>
3951         <type name="uint" c:type="guint"/>
3952       </property>
3953       <property name="xalign" writable="1" transfer-ownership="none">
3954         <type name="float" c:type="gfloat"/>
3955       </property>
3956       <property name="xscale" writable="1" transfer-ownership="none">
3957         <type name="float" c:type="gfloat"/>
3958       </property>
3959       <property name="yalign" writable="1" transfer-ownership="none">
3960         <type name="float" c:type="gfloat"/>
3961       </property>
3962       <property name="yscale" writable="1" transfer-ownership="none">
3963         <type name="float" c:type="gfloat"/>
3964       </property>
3965       <field name="bin">
3966         <type name="Bin" c:type="GtkBin"/>
3967       </field>
3968       <field name="xalign">
3969         <type name="float" c:type="gfloat"/>
3970       </field>
3971       <field name="yalign">
3972         <type name="float" c:type="gfloat"/>
3973       </field>
3974       <field name="xscale">
3975         <type name="float" c:type="gfloat"/>
3976       </field>
3977       <field name="yscale">
3978         <type name="float" c:type="gfloat"/>
3979       </field>
3980     </class>
3981     <record name="AlignmentClass"
3982             c:type="GtkAlignmentClass"
3983             glib:is-gtype-struct-for="Alignment">
3984       <field name="parent_class">
3985         <type name="BinClass" c:type="GtkBinClass"/>
3986       </field>
3987     </record>
3988     <record name="AlignmentPrivate" c:type="GtkAlignmentPrivate">
3989     </record>
3990     <enumeration name="AnchorType"
3991                  glib:type-name="GtkAnchorType"
3992                  glib:get-type="gtk_anchor_type_get_type"
3993                  c:type="GtkAnchorType">
3994       <member name="center"
3995               value="0"
3996               c:identifier="GTK_ANCHOR_CENTER"
3997               glib:nick="center"/>
3998       <member name="north"
3999               value="1"
4000               c:identifier="GTK_ANCHOR_NORTH"
4001               glib:nick="north"/>
4002       <member name="north_west"
4003               value="2"
4004               c:identifier="GTK_ANCHOR_NORTH_WEST"
4005               glib:nick="north-west"/>
4006       <member name="north_east"
4007               value="3"
4008               c:identifier="GTK_ANCHOR_NORTH_EAST"
4009               glib:nick="north-east"/>
4010       <member name="south"
4011               value="4"
4012               c:identifier="GTK_ANCHOR_SOUTH"
4013               glib:nick="south"/>
4014       <member name="south_west"
4015               value="5"
4016               c:identifier="GTK_ANCHOR_SOUTH_WEST"
4017               glib:nick="south-west"/>
4018       <member name="south_east"
4019               value="6"
4020               c:identifier="GTK_ANCHOR_SOUTH_EAST"
4021               glib:nick="south-east"/>
4022       <member name="west"
4023               value="7"
4024               c:identifier="GTK_ANCHOR_WEST"
4025               glib:nick="west"/>
4026       <member name="east"
4027               value="8"
4028               c:identifier="GTK_ANCHOR_EAST"
4029               glib:nick="east"/>
4030       <member name="n" value="1" c:identifier="GTK_ANCHOR_N" glib:nick="n"/>
4031       <member name="nw" value="2" c:identifier="GTK_ANCHOR_NW" glib:nick="nw"/>
4032       <member name="ne" value="3" c:identifier="GTK_ANCHOR_NE" glib:nick="ne"/>
4033       <member name="s" value="4" c:identifier="GTK_ANCHOR_S" glib:nick="s"/>
4034       <member name="sw" value="5" c:identifier="GTK_ANCHOR_SW" glib:nick="sw"/>
4035       <member name="se" value="6" c:identifier="GTK_ANCHOR_SE" glib:nick="se"/>
4036       <member name="w" value="7" c:identifier="GTK_ANCHOR_W" glib:nick="w"/>
4037       <member name="e" value="8" c:identifier="GTK_ANCHOR_E" glib:nick="e"/>
4038     </enumeration>
4039     <record name="Arg" c:type="GtkArg">
4040       <field name="type" writable="1">
4041         <type name="GType" c:type="GType"/>
4042       </field>
4043       <field name="name" writable="1">
4044         <type name="utf8" c:type="gchar*"/>
4045       </field>
4046       <union name="d" c:type="d">
4047         <field name="char_data" writable="1">
4048           <type name="int8" c:type="gchar"/>
4049         </field>
4050         <field name="uchar_data" writable="1">
4051           <type name="uint8" c:type="guchar"/>
4052         </field>
4053         <field name="bool_data" writable="1">
4054           <type name="boolean" c:type="gboolean"/>
4055         </field>
4056         <field name="int_data" writable="1">
4057           <type name="int" c:type="gint"/>
4058         </field>
4059         <field name="uint_data" writable="1">
4060           <type name="uint" c:type="guint"/>
4061         </field>
4062         <field name="long_data" writable="1">
4063           <type name="long" c:type="glong"/>
4064         </field>
4065         <field name="ulong_data" writable="1">
4066           <type name="ulong" c:type="gulong"/>
4067         </field>
4068         <field name="float_data" writable="1">
4069           <type name="float" c:type="gfloat"/>
4070         </field>
4071         <field name="double_data" writable="1">
4072           <type name="double" c:type="gdouble"/>
4073         </field>
4074         <field name="string_data" writable="1">
4075           <type name="utf8" c:type="gchar*"/>
4076         </field>
4077         <field name="object_data" writable="1">
4078           <type name="Object" c:type="GtkObject*"/>
4079         </field>
4080         <field name="pointer_data" writable="1">
4081           <type name="any" c:type="gpointer"/>
4082         </field>
4083         <record name="signal_data" c:type="signal_data">
4084           <field name="f" writable="1">
4085             <type name="GObject.Callback" c:type="GCallback"/>
4086           </field>
4087           <field name="d" writable="1">
4088             <type name="any" c:type="gpointer"/>
4089           </field>
4090         </record>
4091       </union>
4092     </record>
4093     <bitfield name="ArgFlags"
4094               glib:type-name="GtkArgFlags"
4095               glib:get-type="gtk_arg_flags_get_type"
4096               c:type="GtkArgFlags">
4097       <member name="readable"
4098               value="1"
4099               c:identifier="GTK_ARG_READABLE"
4100               glib:nick="readable"/>
4101       <member name="writable"
4102               value="2"
4103               c:identifier="GTK_ARG_WRITABLE"
4104               glib:nick="writable"/>
4105       <member name="construct"
4106               value="4"
4107               c:identifier="GTK_ARG_CONSTRUCT"
4108               glib:nick="construct"/>
4109       <member name="construct_only"
4110               value="8"
4111               c:identifier="GTK_ARG_CONSTRUCT_ONLY"
4112               glib:nick="construct-only"/>
4113       <member name="child_arg"
4114               value="16"
4115               c:identifier="GTK_ARG_CHILD_ARG"
4116               glib:nick="child-arg"/>
4117     </bitfield>
4118     <class name="Arrow"
4119            c:type="GtkArrow"
4120            parent="Misc"
4121            glib:type-name="GtkArrow"
4122            glib:get-type="gtk_arrow_get_type"
4123            glib:type-struct="ArrowClass">
4124       <implements name="Atk.ImplementorIface"/>
4125       <implements name="Buildable"/>
4126       <constructor name="new" c:identifier="gtk_arrow_new">
4127         <doc xml:whitespace="preserve">Creates a new #GtkArrow widget.</doc>
4128         <return-value transfer-ownership="full">
4129           <doc xml:whitespace="preserve">the new #GtkArrow widget.</doc>
4130           <type name="Arrow" c:type="GtkWidget*"/>
4131         </return-value>
4132         <parameters>
4133           <parameter name="arrow_type" transfer-ownership="none">
4134             <doc xml:whitespace="preserve">a valid #GtkArrowType.</doc>
4135             <type name="ArrowType" c:type="GtkArrowType"/>
4136           </parameter>
4137           <parameter name="shadow_type" transfer-ownership="none">
4138             <doc xml:whitespace="preserve">a valid #GtkShadowType.</doc>
4139             <type name="ShadowType" c:type="GtkShadowType"/>
4140           </parameter>
4141         </parameters>
4142       </constructor>
4143       <method name="set" c:identifier="gtk_arrow_set">
4144         <doc xml:whitespace="preserve">Sets the direction and style of the #GtkArrow, @arrow.</doc>
4145         <return-value transfer-ownership="none">
4146           <type name="none" c:type="void"/>
4147         </return-value>
4148         <parameters>
4149           <parameter name="arrow_type" transfer-ownership="none">
4150             <doc xml:whitespace="preserve">a valid #GtkArrowType.</doc>
4151             <type name="ArrowType" c:type="GtkArrowType"/>
4152           </parameter>
4153           <parameter name="shadow_type" transfer-ownership="none">
4154             <doc xml:whitespace="preserve">a valid #GtkShadowType.</doc>
4155             <type name="ShadowType" c:type="GtkShadowType"/>
4156           </parameter>
4157         </parameters>
4158       </method>
4159       <property name="arrow-type" writable="1" transfer-ownership="none">
4160         <type name="ArrowType" c:type="GtkArrowType"/>
4161       </property>
4162       <property name="shadow-type" writable="1" transfer-ownership="none">
4163         <type name="ShadowType" c:type="GtkShadowType"/>
4164       </property>
4165       <field name="misc">
4166         <type name="Misc" c:type="GtkMisc"/>
4167       </field>
4168       <field name="arrow_type">
4169         <type name="int16" c:type="gint16"/>
4170       </field>
4171       <field name="shadow_type">
4172         <type name="int16" c:type="gint16"/>
4173       </field>
4174     </class>
4175     <record name="ArrowClass"
4176             c:type="GtkArrowClass"
4177             glib:is-gtype-struct-for="Arrow">
4178       <field name="parent_class">
4179         <type name="MiscClass" c:type="GtkMiscClass"/>
4180       </field>
4181     </record>
4182     <enumeration name="ArrowPlacement"
4183                  glib:type-name="GtkArrowPlacement"
4184                  glib:get-type="gtk_arrow_placement_get_type"
4185                  c:type="GtkArrowPlacement">
4186       <member name="both"
4187               value="0"
4188               c:identifier="GTK_ARROWS_BOTH"
4189               glib:nick="both"/>
4190       <member name="start"
4191               value="1"
4192               c:identifier="GTK_ARROWS_START"
4193               glib:nick="start"/>
4194       <member name="end"
4195               value="2"
4196               c:identifier="GTK_ARROWS_END"
4197               glib:nick="end"/>
4198     </enumeration>
4199     <enumeration name="ArrowType"
4200                  glib:type-name="GtkArrowType"
4201                  glib:get-type="gtk_arrow_type_get_type"
4202                  c:type="GtkArrowType">
4203       <member name="up" value="0" c:identifier="GTK_ARROW_UP" glib:nick="up"/>
4204       <member name="down"
4205               value="1"
4206               c:identifier="GTK_ARROW_DOWN"
4207               glib:nick="down"/>
4208       <member name="left"
4209               value="2"
4210               c:identifier="GTK_ARROW_LEFT"
4211               glib:nick="left"/>
4212       <member name="right"
4213               value="3"
4214               c:identifier="GTK_ARROW_RIGHT"
4215               glib:nick="right"/>
4216       <member name="none"
4217               value="4"
4218               c:identifier="GTK_ARROW_NONE"
4219               glib:nick="none"/>
4220     </enumeration>
4221     <class name="AspectFrame"
4222            c:type="GtkAspectFrame"
4223            parent="Frame"
4224            glib:type-name="GtkAspectFrame"
4225            glib:get-type="gtk_aspect_frame_get_type"
4226            glib:type-struct="AspectFrameClass">
4227       <implements name="Atk.ImplementorIface"/>
4228       <implements name="Buildable"/>
4229       <constructor name="new" c:identifier="gtk_aspect_frame_new">
4230         <doc xml:whitespace="preserve">Create a new #GtkAspectFrame.</doc>
4231         <return-value transfer-ownership="full">
4232           <doc xml:whitespace="preserve">the new #GtkAspectFrame.</doc>
4233           <type name="AspectFrame" c:type="GtkWidget*"/>
4234         </return-value>
4235         <parameters>
4236           <parameter name="label" transfer-ownership="none">
4237             <doc xml:whitespace="preserve">Label text.</doc>
4238             <type name="utf8" c:type="gchar*"/>
4239           </parameter>
4240           <parameter name="xalign" transfer-ownership="none">
4241             <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>
4242             <type name="float" c:type="gfloat"/>
4243           </parameter>
4244           <parameter name="yalign" transfer-ownership="none">
4245             <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>
4246             <type name="float" c:type="gfloat"/>
4247           </parameter>
4248           <parameter name="ratio" transfer-ownership="none">
4249             <doc xml:whitespace="preserve">The desired aspect ratio.</doc>
4250             <type name="float" c:type="gfloat"/>
4251           </parameter>
4252           <parameter name="obey_child" transfer-ownership="none">
4253             <doc xml:whitespace="preserve">If %TRUE, @ratio is ignored, and the aspect ratio is taken from the requistion of the child.</doc>
4254             <type name="boolean" c:type="gboolean"/>
4255           </parameter>
4256         </parameters>
4257       </constructor>
4258       <method name="set" c:identifier="gtk_aspect_frame_set">
4259         <doc xml:whitespace="preserve">Set parameters for an existing #GtkAspectFrame.</doc>
4260         <return-value transfer-ownership="none">
4261           <type name="none" c:type="void"/>
4262         </return-value>
4263         <parameters>
4264           <parameter name="xalign" transfer-ownership="none">
4265             <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>
4266             <type name="float" c:type="gfloat"/>
4267           </parameter>
4268           <parameter name="yalign" transfer-ownership="none">
4269             <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>
4270             <type name="float" c:type="gfloat"/>
4271           </parameter>
4272           <parameter name="ratio" transfer-ownership="none">
4273             <doc xml:whitespace="preserve">The desired aspect ratio.</doc>
4274             <type name="float" c:type="gfloat"/>
4275           </parameter>
4276           <parameter name="obey_child" transfer-ownership="none">
4277             <doc xml:whitespace="preserve">If %TRUE, @ratio is ignored, and the aspect ratio is taken from the requistion of the child.</doc>
4278             <type name="boolean" c:type="gboolean"/>
4279           </parameter>
4280         </parameters>
4281       </method>
4282       <property name="obey-child" writable="1" transfer-ownership="none">
4283         <type name="boolean" c:type="gboolean"/>
4284       </property>
4285       <property name="ratio" writable="1" transfer-ownership="none">
4286         <type name="float" c:type="gfloat"/>
4287       </property>
4288       <property name="xalign" writable="1" transfer-ownership="none">
4289         <type name="float" c:type="gfloat"/>
4290       </property>
4291       <property name="yalign" writable="1" transfer-ownership="none">
4292         <type name="float" c:type="gfloat"/>
4293       </property>
4294       <field name="frame">
4295         <type name="Frame" c:type="GtkFrame"/>
4296       </field>
4297       <field name="xalign">
4298         <type name="float" c:type="gfloat"/>
4299       </field>
4300       <field name="yalign">
4301         <type name="float" c:type="gfloat"/>
4302       </field>
4303       <field name="ratio">
4304         <type name="float" c:type="gfloat"/>
4305       </field>
4306       <field name="obey_child">
4307         <type name="boolean" c:type="gboolean"/>
4308       </field>
4309       <field name="center_allocation">
4310         <type name="Allocation" c:type="GtkAllocation"/>
4311       </field>
4312     </class>
4313     <record name="AspectFrameClass"
4314             c:type="GtkAspectFrameClass"
4315             glib:is-gtype-struct-for="AspectFrame">
4316       <field name="parent_class">
4317         <type name="FrameClass" c:type="GtkFrameClass"/>
4318       </field>
4319     </record>
4320     <class name="Assistant"
4321            c:type="GtkAssistant"
4322            parent="Window"
4323            glib:type-name="GtkAssistant"
4324            glib:get-type="gtk_assistant_get_type"
4325            glib:type-struct="AssistantClass">
4326       <implements name="Atk.ImplementorIface"/>
4327       <implements name="Buildable"/>
4328       <constructor name="new" c:identifier="gtk_assistant_new" version="2.10">
4329         <doc xml:whitespace="preserve">Creates a new #GtkAssistant.</doc>
4330         <return-value transfer-ownership="full">
4331           <doc xml:whitespace="preserve">a newly created #GtkAssistant</doc>
4332           <type name="Assistant" c:type="GtkWidget*"/>
4333         </return-value>
4334       </constructor>
4335       <method name="get_current_page"
4336               c:identifier="gtk_assistant_get_current_page"
4337               version="2.10">
4338         <doc xml:whitespace="preserve">Returns the page number of the current page
4339 the @assistant, if the @assistant has no pages, -1 will be returned</doc>
4340         <return-value transfer-ownership="none">
4341           <doc xml:whitespace="preserve">The index (starting from 0) of the current page in</doc>
4342           <type name="int" c:type="gint"/>
4343         </return-value>
4344       </method>
4345       <method name="set_current_page"
4346               c:identifier="gtk_assistant_set_current_page"
4347               version="2.10">
4348         <doc xml:whitespace="preserve">Switches the page to @page_num. Note that this will only be necessary
4349 in custom buttons, as the @assistant flow can be set with
4350 gtk_assistant_set_forward_page_func().</doc>
4351         <return-value transfer-ownership="none">
4352           <type name="none" c:type="void"/>
4353         </return-value>
4354         <parameters>
4355           <parameter name="page_num" transfer-ownership="none">
4356             <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>
4357             <type name="int" c:type="gint"/>
4358           </parameter>
4359         </parameters>
4360       </method>
4361       <method name="get_n_pages"
4362               c:identifier="gtk_assistant_get_n_pages"
4363               version="2.10">
4364         <doc xml:whitespace="preserve">Returns the number of pages in the @assistant</doc>
4365         <return-value transfer-ownership="none">
4366           <doc xml:whitespace="preserve">The number of pages in the @assistant.</doc>
4367           <type name="int" c:type="gint"/>
4368         </return-value>
4369       </method>
4370       <method name="get_nth_page"
4371               c:identifier="gtk_assistant_get_nth_page"
4372               version="2.10">
4373         <doc xml:whitespace="preserve">Returns the child widget contained in page number @page_num.</doc>
4374         <return-value transfer-ownership="full">
4375           <doc xml:whitespace="preserve">The child widget, or %NULL if @page_num is out of bounds.</doc>
4376           <type name="Widget" c:type="GtkWidget*"/>
4377         </return-value>
4378         <parameters>
4379           <parameter name="page_num" transfer-ownership="none">
4380             <doc xml:whitespace="preserve">The index of a page in the @assistant, or -1 to get the last page;</doc>
4381             <type name="int" c:type="gint"/>
4382           </parameter>
4383         </parameters>
4384       </method>
4385       <method name="prepend_page"
4386               c:identifier="gtk_assistant_prepend_page"
4387               version="2.10">
4388         <doc xml:whitespace="preserve">Prepends a page to the @assistant.</doc>
4389         <return-value transfer-ownership="none">
4390           <doc xml:whitespace="preserve">the index (starting at 0) of the inserted page</doc>
4391           <type name="int" c:type="gint"/>
4392         </return-value>
4393         <parameters>
4394           <parameter name="page" transfer-ownership="none">
4395             <doc xml:whitespace="preserve">a #GtkWidget</doc>
4396             <type name="Widget" c:type="GtkWidget*"/>
4397           </parameter>
4398         </parameters>
4399       </method>
4400       <method name="append_page"
4401               c:identifier="gtk_assistant_append_page"
4402               version="2.10">
4403         <doc xml:whitespace="preserve">Appends a page to the @assistant.</doc>
4404         <return-value transfer-ownership="none">
4405           <doc xml:whitespace="preserve">the index (starting at 0) of the inserted page</doc>
4406           <type name="int" c:type="gint"/>
4407         </return-value>
4408         <parameters>
4409           <parameter name="page" transfer-ownership="none">
4410             <doc xml:whitespace="preserve">a #GtkWidget</doc>
4411             <type name="Widget" c:type="GtkWidget*"/>
4412           </parameter>
4413         </parameters>
4414       </method>
4415       <method name="insert_page"
4416               c:identifier="gtk_assistant_insert_page"
4417               version="2.10">
4418         <doc xml:whitespace="preserve">Inserts a page in the @assistant at a given position.</doc>
4419         <return-value transfer-ownership="none">
4420           <doc xml:whitespace="preserve">the index (starting from 0) of the inserted page</doc>
4421           <type name="int" c:type="gint"/>
4422         </return-value>
4423         <parameters>
4424           <parameter name="page" transfer-ownership="none">
4425             <doc xml:whitespace="preserve">a #GtkWidget</doc>
4426             <type name="Widget" c:type="GtkWidget*"/>
4427           </parameter>
4428           <parameter name="position" transfer-ownership="none">
4429             <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>
4430             <type name="int" c:type="gint"/>
4431           </parameter>
4432         </parameters>
4433       </method>
4434       <method name="set_forward_page_func"
4435               c:identifier="gtk_assistant_set_forward_page_func"
4436               version="2.10">
4437         <doc xml:whitespace="preserve">Sets the page forwarding function to be @page_func, this function will
4438 be used to determine what will be the next page when the user presses
4439 the forward button. Setting @page_func to %NULL will make the assistant
4440 to use the default forward function, which just goes to the next visible 
4441 page.</doc>
4442         <return-value transfer-ownership="none">
4443           <type name="none" c:type="void"/>
4444         </return-value>
4445         <parameters>
4446           <parameter name="page_func"
4447                      transfer-ownership="none"
4448                      allow-none="1"
4449                      scope="notified"
4450                      closure="2"
4451                      destroy="3">
4452             <doc xml:whitespace="preserve">the #GtkAssistantPageFunc, or %NULL to use the default one</doc>
4453             <type name="AssistantPageFunc" c:type="GtkAssistantPageFunc"/>
4454           </parameter>
4455           <parameter name="data" transfer-ownership="none">
4456             <doc xml:whitespace="preserve">user data for @page_func</doc>
4457             <type name="any" c:type="gpointer"/>
4458           </parameter>
4459           <parameter name="destroy" transfer-ownership="none" scope="call">
4460             <doc xml:whitespace="preserve">destroy notifier for @data</doc>
4461             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
4462           </parameter>
4463         </parameters>
4464       </method>
4465       <method name="set_page_type"
4466               c:identifier="gtk_assistant_set_page_type"
4467               version="2.10">
4468         <doc xml:whitespace="preserve">Sets the page type for @page. The page type determines the page
4469 behavior in the @assistant.</doc>
4470         <return-value transfer-ownership="none">
4471           <type name="none" c:type="void"/>
4472         </return-value>
4473         <parameters>
4474           <parameter name="page" transfer-ownership="none">
4475             <doc xml:whitespace="preserve">a page of @assistant</doc>
4476             <type name="Widget" c:type="GtkWidget*"/>
4477           </parameter>
4478           <parameter name="type" transfer-ownership="none">
4479             <doc xml:whitespace="preserve">the new type for @page</doc>
4480             <type name="AssistantPageType" c:type="GtkAssistantPageType"/>
4481           </parameter>
4482         </parameters>
4483       </method>
4484       <method name="get_page_type"
4485               c:identifier="gtk_assistant_get_page_type"
4486               version="2.10">
4487         <doc xml:whitespace="preserve">Gets the page type of @page.</doc>
4488         <return-value transfer-ownership="full">
4489           <doc xml:whitespace="preserve">the page type of @page.</doc>
4490           <type name="AssistantPageType" c:type="GtkAssistantPageType"/>
4491         </return-value>
4492         <parameters>
4493           <parameter name="page" transfer-ownership="none">
4494             <doc xml:whitespace="preserve">a page of @assistant</doc>
4495             <type name="Widget" c:type="GtkWidget*"/>
4496           </parameter>
4497         </parameters>
4498       </method>
4499       <method name="set_page_title"
4500               c:identifier="gtk_assistant_set_page_title"
4501               version="2.10">
4502         <doc xml:whitespace="preserve">Sets a title for @page. The title is displayed in the header
4503 area of the assistant when @page is the current page.</doc>
4504         <return-value transfer-ownership="none">
4505           <type name="none" c:type="void"/>
4506         </return-value>
4507         <parameters>
4508           <parameter name="page" transfer-ownership="none">
4509             <doc xml:whitespace="preserve">a page of @assistant</doc>
4510             <type name="Widget" c:type="GtkWidget*"/>
4511           </parameter>
4512           <parameter name="title" transfer-ownership="none">
4513             <doc xml:whitespace="preserve">the new title for @page</doc>
4514             <type name="utf8" c:type="gchar*"/>
4515           </parameter>
4516         </parameters>
4517       </method>
4518       <method name="get_page_title"
4519               c:identifier="gtk_assistant_get_page_title"
4520               version="2.10">
4521         <doc xml:whitespace="preserve">Gets the title for @page.</doc>
4522         <return-value transfer-ownership="none">
4523           <doc xml:whitespace="preserve">the title for @page.</doc>
4524           <type name="utf8" c:type="gchar*"/>
4525         </return-value>
4526         <parameters>
4527           <parameter name="page" transfer-ownership="none">
4528             <doc xml:whitespace="preserve">a page of @assistant</doc>
4529             <type name="Widget" c:type="GtkWidget*"/>
4530           </parameter>
4531         </parameters>
4532       </method>
4533       <method name="set_page_header_image"
4534               c:identifier="gtk_assistant_set_page_header_image"
4535               version="2.10">
4536         <doc xml:whitespace="preserve">Sets a header image for @page. This image is displayed in the header
4537 area of the assistant when @page is the current page.</doc>
4538         <return-value transfer-ownership="none">
4539           <type name="none" c:type="void"/>
4540         </return-value>
4541         <parameters>
4542           <parameter name="page" transfer-ownership="none">
4543             <doc xml:whitespace="preserve">a page of @assistant</doc>
4544             <type name="Widget" c:type="GtkWidget*"/>
4545           </parameter>
4546           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
4547             <doc xml:whitespace="preserve">the new header image @page</doc>
4548             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
4549           </parameter>
4550         </parameters>
4551       </method>
4552       <method name="get_page_header_image"
4553               c:identifier="gtk_assistant_get_page_header_image"
4554               version="2.10">
4555         <doc xml:whitespace="preserve">Gets the header image for @page. 
4556 if there's no header image for the page.</doc>
4557         <return-value transfer-ownership="full">
4558           <doc xml:whitespace="preserve">the header image for @page, or %NULL</doc>
4559           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
4560         </return-value>
4561         <parameters>
4562           <parameter name="page" transfer-ownership="none">
4563             <doc xml:whitespace="preserve">a page of @assistant</doc>
4564             <type name="Widget" c:type="GtkWidget*"/>
4565           </parameter>
4566         </parameters>
4567       </method>
4568       <method name="set_page_side_image"
4569               c:identifier="gtk_assistant_set_page_side_image"
4570               version="2.10">
4571         <doc xml:whitespace="preserve">Sets a header image for @page. This image is displayed in the side
4572 area of the assistant when @page is the current page.</doc>
4573         <return-value transfer-ownership="none">
4574           <type name="none" c:type="void"/>
4575         </return-value>
4576         <parameters>
4577           <parameter name="page" transfer-ownership="none">
4578             <doc xml:whitespace="preserve">a page of @assistant</doc>
4579             <type name="Widget" c:type="GtkWidget*"/>
4580           </parameter>
4581           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
4582             <doc xml:whitespace="preserve">the new header image @page</doc>
4583             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
4584           </parameter>
4585         </parameters>
4586       </method>
4587       <method name="get_page_side_image"
4588               c:identifier="gtk_assistant_get_page_side_image"
4589               version="2.10">
4590         <doc xml:whitespace="preserve">Gets the header image for @page. 
4591 if there's no side image for the page.</doc>
4592         <return-value transfer-ownership="full">
4593           <doc xml:whitespace="preserve">the side image for @page, or %NULL</doc>
4594           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
4595         </return-value>
4596         <parameters>
4597           <parameter name="page" transfer-ownership="none">
4598             <doc xml:whitespace="preserve">a page of @assistant</doc>
4599             <type name="Widget" c:type="GtkWidget*"/>
4600           </parameter>
4601         </parameters>
4602       </method>
4603       <method name="set_page_complete"
4604               c:identifier="gtk_assistant_set_page_complete"
4605               version="2.10">
4606         <doc xml:whitespace="preserve">Sets whether @page contents are complete. This will make</doc>
4607         <return-value transfer-ownership="none">
4608           <type name="none" c:type="void"/>
4609         </return-value>
4610         <parameters>
4611           <parameter name="page" transfer-ownership="none">
4612             <doc xml:whitespace="preserve">a page of @assistant</doc>
4613             <type name="Widget" c:type="GtkWidget*"/>
4614           </parameter>
4615           <parameter name="complete" transfer-ownership="none">
4616             <doc xml:whitespace="preserve">the completeness status of the page</doc>
4617             <type name="boolean" c:type="gboolean"/>
4618           </parameter>
4619         </parameters>
4620       </method>
4621       <method name="get_page_complete"
4622               c:identifier="gtk_assistant_get_page_complete"
4623               version="2.10">
4624         <doc xml:whitespace="preserve">Gets whether @page is complete.</doc>
4625         <return-value transfer-ownership="none">
4626           <doc xml:whitespace="preserve">%TRUE if @page is complete.</doc>
4627           <type name="boolean" c:type="gboolean"/>
4628         </return-value>
4629         <parameters>
4630           <parameter name="page" transfer-ownership="none">
4631             <doc xml:whitespace="preserve">a page of @assistant</doc>
4632             <type name="Widget" c:type="GtkWidget*"/>
4633           </parameter>
4634         </parameters>
4635       </method>
4636       <method name="add_action_widget"
4637               c:identifier="gtk_assistant_add_action_widget"
4638               version="2.10">
4639         <doc xml:whitespace="preserve">Adds a widget to the action area of a #GtkAssistant.</doc>
4640         <return-value transfer-ownership="none">
4641           <type name="none" c:type="void"/>
4642         </return-value>
4643         <parameters>
4644           <parameter name="child" transfer-ownership="none">
4645             <doc xml:whitespace="preserve">a #GtkWidget</doc>
4646             <type name="Widget" c:type="GtkWidget*"/>
4647           </parameter>
4648         </parameters>
4649       </method>
4650       <method name="remove_action_widget"
4651               c:identifier="gtk_assistant_remove_action_widget"
4652               version="2.10">
4653         <doc xml:whitespace="preserve">Removes a widget from the action area of a #GtkAssistant.</doc>
4654         <return-value transfer-ownership="none">
4655           <type name="none" c:type="void"/>
4656         </return-value>
4657         <parameters>
4658           <parameter name="child" transfer-ownership="none">
4659             <doc xml:whitespace="preserve">a #GtkWidget</doc>
4660             <type name="Widget" c:type="GtkWidget*"/>
4661           </parameter>
4662         </parameters>
4663       </method>
4664       <method name="update_buttons_state"
4665               c:identifier="gtk_assistant_update_buttons_state"
4666               version="2.10">
4667         <doc xml:whitespace="preserve">Forces @assistant to recompute the buttons state.
4668 GTK+ automatically takes care of this in most situations, 
4669 e.g. when the user goes to a different page, or when the
4670 visibility or completeness of a page changes.
4671 One situation where it can be necessary to call this
4672 function is when changing a value on the current page
4673 affects the future page flow of the assistant.</doc>
4674         <return-value transfer-ownership="none">
4675           <type name="none" c:type="void"/>
4676         </return-value>
4677       </method>
4678       <field name="parent">
4679         <type name="Window" c:type="GtkWindow"/>
4680       </field>
4681       <field name="cancel">
4682         <type name="Widget" c:type="GtkWidget*"/>
4683       </field>
4684       <field name="forward">
4685         <type name="Widget" c:type="GtkWidget*"/>
4686       </field>
4687       <field name="back">
4688         <type name="Widget" c:type="GtkWidget*"/>
4689       </field>
4690       <field name="apply">
4691         <type name="Widget" c:type="GtkWidget*"/>
4692       </field>
4693       <field name="close">
4694         <type name="Widget" c:type="GtkWidget*"/>
4695       </field>
4696       <field name="last">
4697         <type name="Widget" c:type="GtkWidget*"/>
4698       </field>
4699       <field name="priv">
4700         <type name="AssistantPrivate" c:type="GtkAssistantPrivate*"/>
4701       </field>
4702       <glib:signal name="apply" version="2.10">
4703         <doc xml:whitespace="preserve">The ::apply signal is emitted when the apply button is clicked. The default
4704 behavior of the #GtkAssistant is to switch to the page after the current
4705 page, unless the current page is the last one.
4706 A handler for the ::apply signal should carry out the actions for which
4707 the wizard has collected data. If the action takes a long time to complete,
4708 you might consider to put a page of type %GTK_ASSISTANT_PAGE_PROGRESS
4709 after the confirmation page and handle this operation within the
4710 #GtkAssistant::prepare signal of the progress page.</doc>
4711         <return-value transfer-ownership="full">
4712           <type name="none" c:type="void"/>
4713         </return-value>
4714       </glib:signal>
4715       <glib:signal name="cancel" version="2.10">
4716         <doc xml:whitespace="preserve">The ::cancel signal is emitted when then the cancel button is clicked.</doc>
4717         <return-value transfer-ownership="full">
4718           <type name="none" c:type="void"/>
4719         </return-value>
4720       </glib:signal>
4721       <glib:signal name="close" version="2.10">
4722         <doc xml:whitespace="preserve">The ::close signal is emitted either when the close button of
4723 a summary page is clicked, or when the apply button in the last
4724 page in the flow (of type %GTK_ASSISTANT_PAGE_CONFIRM) is clicked.</doc>
4725         <return-value transfer-ownership="full">
4726           <type name="none" c:type="void"/>
4727         </return-value>
4728       </glib:signal>
4729       <glib:signal name="prepare" version="2.10">
4730         <doc xml:whitespace="preserve">The ::prepare signal is emitted when a new page is set as the assistant's
4731 current page, before making the new page visible. A handler for this signal
4732 can do any preparation which are necessary before showing @page.</doc>
4733         <return-value transfer-ownership="full">
4734           <type name="none" c:type="void"/>
4735         </return-value>
4736         <parameters>
4737           <parameter name="page" transfer-ownership="none">
4738             <doc xml:whitespace="preserve">the current page</doc>
4739             <type name="Widget" c:type="GtkWidget"/>
4740           </parameter>
4741         </parameters>
4742       </glib:signal>
4743     </class>
4744     <record name="AssistantClass"
4745             c:type="GtkAssistantClass"
4746             glib:is-gtype-struct-for="Assistant">
4747       <field name="parent_class">
4748         <type name="WindowClass" c:type="GtkWindowClass"/>
4749       </field>
4750       <field name="prepare">
4751         <callback name="prepare" c:type="prepare">
4752           <return-value transfer-ownership="none">
4753             <type name="none" c:type="void"/>
4754           </return-value>
4755           <parameters>
4756             <parameter name="assistant" transfer-ownership="none">
4757               <type name="Assistant" c:type="GtkAssistant*"/>
4758             </parameter>
4759             <parameter name="page" transfer-ownership="none">
4760               <type name="Widget" c:type="GtkWidget*"/>
4761             </parameter>
4762           </parameters>
4763         </callback>
4764       </field>
4765       <field name="apply">
4766         <callback name="apply" c:type="apply">
4767           <return-value transfer-ownership="none">
4768             <type name="none" c:type="void"/>
4769           </return-value>
4770           <parameters>
4771             <parameter name="assistant" transfer-ownership="none">
4772               <type name="Assistant" c:type="GtkAssistant*"/>
4773             </parameter>
4774           </parameters>
4775         </callback>
4776       </field>
4777       <field name="close">
4778         <callback name="close" c:type="close">
4779           <return-value transfer-ownership="none">
4780             <type name="none" c:type="void"/>
4781           </return-value>
4782           <parameters>
4783             <parameter name="assistant" transfer-ownership="none">
4784               <type name="Assistant" c:type="GtkAssistant*"/>
4785             </parameter>
4786           </parameters>
4787         </callback>
4788       </field>
4789       <field name="cancel">
4790         <callback name="cancel" c:type="cancel">
4791           <return-value transfer-ownership="none">
4792             <type name="none" c:type="void"/>
4793           </return-value>
4794           <parameters>
4795             <parameter name="assistant" transfer-ownership="none">
4796               <type name="Assistant" c:type="GtkAssistant*"/>
4797             </parameter>
4798           </parameters>
4799         </callback>
4800       </field>
4801       <field name="gtk_reserved1">
4802         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
4803           <return-value transfer-ownership="none">
4804             <type name="none" c:type="void"/>
4805           </return-value>
4806         </callback>
4807       </field>
4808       <field name="gtk_reserved2">
4809         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
4810           <return-value transfer-ownership="none">
4811             <type name="none" c:type="void"/>
4812           </return-value>
4813         </callback>
4814       </field>
4815       <field name="gtk_reserved3">
4816         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
4817           <return-value transfer-ownership="none">
4818             <type name="none" c:type="void"/>
4819           </return-value>
4820         </callback>
4821       </field>
4822       <field name="gtk_reserved4">
4823         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
4824           <return-value transfer-ownership="none">
4825             <type name="none" c:type="void"/>
4826           </return-value>
4827         </callback>
4828       </field>
4829       <field name="gtk_reserved5">
4830         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
4831           <return-value transfer-ownership="none">
4832             <type name="none" c:type="void"/>
4833           </return-value>
4834         </callback>
4835       </field>
4836     </record>
4837     <callback name="AssistantPageFunc" c:type="GtkAssistantPageFunc">
4838       <doc xml:whitespace="preserve">A function used by gtk_assistant_set_forward_page_func() to know which
4839 is the next page given a current one. It's called both for computing the
4840 next page when the user presses the "forward" button and for handling
4841 the behavior of the "last" button.</doc>
4842       <return-value transfer-ownership="none">
4843         <doc xml:whitespace="preserve">The next page number.</doc>
4844         <type name="int" c:type="gint"/>
4845       </return-value>
4846       <parameters>
4847         <parameter name="current_page" transfer-ownership="none">
4848           <doc xml:whitespace="preserve">The page number used to calculate the next page.</doc>
4849           <type name="int" c:type="gint"/>
4850         </parameter>
4851         <parameter name="data" transfer-ownership="none">
4852           <doc xml:whitespace="preserve">user data.</doc>
4853           <type name="any" c:type="gpointer"/>
4854         </parameter>
4855       </parameters>
4856     </callback>
4857     <enumeration name="AssistantPageType"
4858                  glib:type-name="GtkAssistantPageType"
4859                  glib:get-type="gtk_assistant_page_type_get_type"
4860                  c:type="GtkAssistantPageType">
4861       <doc xml:whitespace="preserve">An enum for determining the page role inside the #GtkAssistant. It's
4862 used to handle buttons sensitivity and visibility.
4863 Note that an assistant needs to end its page flow with a page of type
4864 %GTK_ASSISTANT_PAGE_CONFIRM or %GTK_ASSISTANT_PAGE_SUMMARY to be correct.</doc>
4865       <member name="content"
4866               value="0"
4867               c:identifier="GTK_ASSISTANT_PAGE_CONTENT"
4868               glib:nick="content"/>
4869       <member name="intro"
4870               value="1"
4871               c:identifier="GTK_ASSISTANT_PAGE_INTRO"
4872               glib:nick="intro"/>
4873       <member name="confirm"
4874               value="2"
4875               c:identifier="GTK_ASSISTANT_PAGE_CONFIRM"
4876               glib:nick="confirm"/>
4877       <member name="summary"
4878               value="3"
4879               c:identifier="GTK_ASSISTANT_PAGE_SUMMARY"
4880               glib:nick="summary"/>
4881       <member name="progress"
4882               value="4"
4883               c:identifier="GTK_ASSISTANT_PAGE_PROGRESS"
4884               glib:nick="progress"/>
4885     </enumeration>
4886     <record name="AssistantPrivate" c:type="GtkAssistantPrivate">
4887     </record>
4888     <bitfield name="AttachOptions"
4889               glib:type-name="GtkAttachOptions"
4890               glib:get-type="gtk_attach_options_get_type"
4891               c:type="GtkAttachOptions">
4892       <member name="expand"
4893               value="1"
4894               c:identifier="GTK_EXPAND"
4895               glib:nick="expand"/>
4896       <member name="shrink"
4897               value="2"
4898               c:identifier="GTK_SHRINK"
4899               glib:nick="shrink"/>
4900       <member name="fill" value="4" c:identifier="GTK_FILL" glib:nick="fill"/>
4901     </bitfield>
4902     <constant name="BINARY_AGE" value="2101">
4903       <type name="int"/>
4904     </constant>
4905     <constant name="BUTTONBOX_DEFAULT" value="-1">
4906       <type name="int"/>
4907     </constant>
4908     <class name="Bin"
4909            c:type="GtkBin"
4910            parent="Container"
4911            abstract="1"
4912            glib:type-name="GtkBin"
4913            glib:get-type="gtk_bin_get_type"
4914            glib:type-struct="BinClass">
4915       <implements name="Atk.ImplementorIface"/>
4916       <implements name="Buildable"/>
4917       <method name="get_child" c:identifier="gtk_bin_get_child">
4918         <doc xml:whitespace="preserve">Gets the child of the #GtkBin, or %NULL if the bin contains
4919 no child widget. The returned widget does not have a reference
4920 added, so you do not need to unref it.</doc>
4921         <return-value transfer-ownership="none">
4922           <doc xml:whitespace="preserve">pointer to child of the #GtkBin</doc>
4923           <type name="Widget" c:type="GtkWidget*"/>
4924         </return-value>
4925       </method>
4926       <field name="container">
4927         <type name="Container" c:type="GtkContainer"/>
4928       </field>
4929       <field name="child">
4930         <type name="Widget" c:type="GtkWidget*"/>
4931       </field>
4932     </class>
4933     <record name="BinClass"
4934             c:type="GtkBinClass"
4935             glib:is-gtype-struct-for="Bin">
4936       <field name="parent_class">
4937         <type name="ContainerClass" c:type="GtkContainerClass"/>
4938       </field>
4939     </record>
4940     <record name="BindingArg" c:type="GtkBindingArg">
4941       <field name="arg_type" writable="1">
4942         <type name="GType" c:type="GType"/>
4943       </field>
4944       <union name="d" c:type="d">
4945         <field name="long_data" writable="1">
4946           <type name="long" c:type="glong"/>
4947         </field>
4948         <field name="double_data" writable="1">
4949           <type name="double" c:type="gdouble"/>
4950         </field>
4951         <field name="string_data" writable="1">
4952           <type name="utf8" c:type="gchar*"/>
4953         </field>
4954       </union>
4955     </record>
4956     <record name="BindingEntry" c:type="GtkBindingEntry">
4957       <field name="keyval" writable="1">
4958         <type name="uint" c:type="guint"/>
4959       </field>
4960       <field name="modifiers" writable="1">
4961         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
4962       </field>
4963       <field name="binding_set" writable="1">
4964         <type name="BindingSet" c:type="GtkBindingSet*"/>
4965       </field>
4966       <field name="destroyed" writable="1" bits="1">
4967         <type name="uint" c:type="guint"/>
4968       </field>
4969       <field name="in_emission" writable="1" bits="1">
4970         <type name="uint" c:type="guint"/>
4971       </field>
4972       <field name="marks_unbound" writable="1" bits="1">
4973         <type name="uint" c:type="guint"/>
4974       </field>
4975       <field name="set_next" writable="1">
4976         <type name="BindingEntry" c:type="GtkBindingEntry*"/>
4977       </field>
4978       <field name="hash_next" writable="1">
4979         <type name="BindingEntry" c:type="GtkBindingEntry*"/>
4980       </field>
4981       <field name="signals" writable="1">
4982         <type name="BindingSignal" c:type="GtkBindingSignal*"/>
4983       </field>
4984     </record>
4985     <record name="BindingSet" c:type="GtkBindingSet">
4986       <field name="set_name" writable="1">
4987         <type name="utf8" c:type="gchar*"/>
4988       </field>
4989       <field name="priority" writable="1">
4990         <type name="int" c:type="gint"/>
4991       </field>
4992       <field name="widget_path_pspecs" writable="1">
4993         <type name="GLib.SList" c:type="GSList*">
4994           <type name="any" c:type="gpointer"/>
4995         </type>
4996       </field>
4997       <field name="widget_class_pspecs" writable="1">
4998         <type name="GLib.SList" c:type="GSList*">
4999           <type name="any" c:type="gpointer"/>
5000         </type>
5001       </field>
5002       <field name="class_branch_pspecs" writable="1">
5003         <type name="GLib.SList" c:type="GSList*">
5004           <type name="any" c:type="gpointer"/>
5005         </type>
5006       </field>
5007       <field name="entries" writable="1">
5008         <type name="BindingEntry" c:type="GtkBindingEntry*"/>
5009       </field>
5010       <field name="current" writable="1">
5011         <type name="BindingEntry" c:type="GtkBindingEntry*"/>
5012       </field>
5013       <field name="parsed" writable="1" bits="1">
5014         <type name="uint" c:type="guint"/>
5015       </field>
5016       <constructor name="new" c:identifier="gtk_binding_set_new">
5017         <doc xml:whitespace="preserve">GTK+ maintains a global list of binding sets. Each binding set has
5018 a unique name which needs to be specified upon creation.</doc>
5019         <return-value transfer-ownership="full">
5020           <doc xml:whitespace="preserve">new binding set</doc>
5021           <type name="BindingSet" c:type="GtkBindingSet*"/>
5022         </return-value>
5023         <parameters>
5024           <parameter name="set_name" transfer-ownership="none">
5025             <doc xml:whitespace="preserve">unique name of this binding set</doc>
5026             <type name="utf8" c:type="gchar*"/>
5027           </parameter>
5028         </parameters>
5029       </constructor>
5030       <method name="activate" c:identifier="gtk_binding_set_activate">
5031         <doc xml:whitespace="preserve">Find a key binding matching @keyval and @modifiers within</doc>
5032         <return-value transfer-ownership="none">
5033           <doc xml:whitespace="preserve">%TRUE if a binding was found and activated</doc>
5034           <type name="boolean" c:type="gboolean"/>
5035         </return-value>
5036         <parameters>
5037           <parameter name="keyval" transfer-ownership="none">
5038             <doc xml:whitespace="preserve">key value of the binding</doc>
5039             <type name="uint" c:type="guint"/>
5040           </parameter>
5041           <parameter name="modifiers" transfer-ownership="none">
5042             <doc xml:whitespace="preserve">key modifier of the binding</doc>
5043             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
5044           </parameter>
5045           <parameter name="object" transfer-ownership="none">
5046             <doc xml:whitespace="preserve">object to activate when binding found</doc>
5047             <type name="Object" c:type="GtkObject*"/>
5048           </parameter>
5049         </parameters>
5050       </method>
5051       <method name="add_path" c:identifier="gtk_binding_set_add_path">
5052         <doc xml:whitespace="preserve">This function is used internally by the GtkRC parsing mechanism to
5053 assign match patterns to #GtkBindingSet structures.</doc>
5054         <return-value transfer-ownership="none">
5055           <type name="none" c:type="void"/>
5056         </return-value>
5057         <parameters>
5058           <parameter name="path_type" transfer-ownership="none">
5059             <doc xml:whitespace="preserve">path type the pattern applies to</doc>
5060             <type name="PathType" c:type="GtkPathType"/>
5061           </parameter>
5062           <parameter name="path_pattern" transfer-ownership="none">
5063             <doc xml:whitespace="preserve">the actual match pattern</doc>
5064             <type name="utf8" c:type="gchar*"/>
5065           </parameter>
5066           <parameter name="priority" transfer-ownership="none">
5067             <doc xml:whitespace="preserve">binding priority</doc>
5068             <type name="PathPriorityType" c:type="GtkPathPriorityType"/>
5069           </parameter>
5070         </parameters>
5071       </method>
5072     </record>
5073     <record name="BindingSignal" c:type="GtkBindingSignal">
5074       <field name="next" writable="1">
5075         <type name="BindingSignal" c:type="GtkBindingSignal*"/>
5076       </field>
5077       <field name="signal_name" writable="1">
5078         <type name="utf8" c:type="gchar*"/>
5079       </field>
5080       <field name="n_args" writable="1">
5081         <type name="uint" c:type="guint"/>
5082       </field>
5083       <field name="args" writable="1">
5084         <type name="BindingArg" c:type="GtkBindingArg*"/>
5085       </field>
5086     </record>
5087     <record name="Border"
5088             c:type="GtkBorder"
5089             glib:type-name="GtkBorder"
5090             glib:get-type="gtk_border_get_type">
5091       <field name="left" writable="1">
5092         <type name="int" c:type="gint"/>
5093       </field>
5094       <field name="right" writable="1">
5095         <type name="int" c:type="gint"/>
5096       </field>
5097       <field name="top" writable="1">
5098         <type name="int" c:type="gint"/>
5099       </field>
5100       <field name="bottom" writable="1">
5101         <type name="int" c:type="gint"/>
5102       </field>
5103       <constructor name="new" c:identifier="gtk_border_new" version="2.14">
5104         <doc xml:whitespace="preserve">Allocates a new #GtkBorder structure and initializes its elements to zero.
5105 freed with gtk_border_free()</doc>
5106         <return-value transfer-ownership="full">
5107           <doc xml:whitespace="preserve">a new empty #GtkBorder. The newly allocated #GtkBorder should be</doc>
5108           <type name="Border" c:type="GtkBorder*"/>
5109         </return-value>
5110       </constructor>
5111       <method name="copy" c:identifier="gtk_border_copy">
5112         <doc xml:whitespace="preserve">Copies a #GtkBorder structure.</doc>
5113         <return-value transfer-ownership="full">
5114           <doc xml:whitespace="preserve">a copy of @border_.</doc>
5115           <type name="Border" c:type="GtkBorder*"/>
5116         </return-value>
5117       </method>
5118       <method name="free" c:identifier="gtk_border_free">
5119         <doc xml:whitespace="preserve">Frees a #GtkBorder structure.</doc>
5120         <return-value transfer-ownership="none">
5121           <type name="none" c:type="void"/>
5122         </return-value>
5123       </method>
5124     </record>
5125     <class name="Box"
5126            c:type="GtkBox"
5127            parent="Container"
5128            abstract="1"
5129            glib:type-name="GtkBox"
5130            glib:get-type="gtk_box_get_type"
5131            glib:type-struct="BoxClass">
5132       <implements name="Atk.ImplementorIface"/>
5133       <implements name="Buildable"/>
5134       <implements name="Orientable"/>
5135       <method name="pack_start" c:identifier="gtk_box_pack_start">
5136         <doc xml:whitespace="preserve">Adds @child to @box, packed with reference to the start of @box.
5137 The @child is packed after any other child packed with reference 
5138 to the start of @box.</doc>
5139         <return-value transfer-ownership="none">
5140           <type name="none" c:type="void"/>
5141         </return-value>
5142         <parameters>
5143           <parameter name="child" transfer-ownership="none">
5144             <doc xml:whitespace="preserve">the #GtkWidget to be added to @box</doc>
5145             <type name="Widget" c:type="GtkWidget*"/>
5146           </parameter>
5147           <parameter name="expand" transfer-ownership="none">
5148             <doc xml:whitespace="preserve">%TRUE if the new child is to be given extra space allocated to</doc>
5149             <type name="boolean" c:type="gboolean"/>
5150           </parameter>
5151           <parameter name="fill" transfer-ownership="none">
5152             <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>
5153             <type name="boolean" c:type="gboolean"/>
5154           </parameter>
5155           <parameter name="padding" transfer-ownership="none">
5156             <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>
5157             <type name="uint" c:type="guint"/>
5158           </parameter>
5159         </parameters>
5160       </method>
5161       <method name="pack_end" c:identifier="gtk_box_pack_end">
5162         <doc xml:whitespace="preserve">Adds @child to @box, packed with reference to the end of @box.  
5163 The @child is packed after (away from end of) any other child 
5164 packed with reference to the end of @box.</doc>
5165         <return-value transfer-ownership="none">
5166           <type name="none" c:type="void"/>
5167         </return-value>
5168         <parameters>
5169           <parameter name="child" transfer-ownership="none">
5170             <doc xml:whitespace="preserve">the #GtkWidget to be added to @box</doc>
5171             <type name="Widget" c:type="GtkWidget*"/>
5172           </parameter>
5173           <parameter name="expand" transfer-ownership="none">
5174             <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>
5175             <type name="boolean" c:type="gboolean"/>
5176           </parameter>
5177           <parameter name="fill" transfer-ownership="none">
5178             <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>
5179             <type name="boolean" c:type="gboolean"/>
5180           </parameter>
5181           <parameter name="padding" transfer-ownership="none">
5182             <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>
5183             <type name="uint" c:type="guint"/>
5184           </parameter>
5185         </parameters>
5186       </method>
5187       <method name="pack_start_defaults"
5188               c:identifier="gtk_box_pack_start_defaults"
5189               deprecated="Use gtk_box_pack_start()"
5190               deprecated-version="2.14">
5191         <doc xml:whitespace="preserve">Adds @widget to @box, packed with reference to the start of @box.
5192 The child is packed after any other child packed with reference 
5193 to the start of @box. 
5194 Parameters for how to pack the child @widget, #GtkBox:expand, 
5195 #GtkBox:fill and #GtkBox:padding, are given their default
5196 values, %TRUE, %TRUE, and 0, respectively.</doc>
5197         <return-value transfer-ownership="none">
5198           <type name="none" c:type="void"/>
5199         </return-value>
5200         <parameters>
5201           <parameter name="widget" transfer-ownership="none">
5202             <doc xml:whitespace="preserve">the #GtkWidget to be added to @box</doc>
5203             <type name="Widget" c:type="GtkWidget*"/>
5204           </parameter>
5205         </parameters>
5206       </method>
5207       <method name="pack_end_defaults"
5208               c:identifier="gtk_box_pack_end_defaults"
5209               deprecated="Use gtk_box_pack_end()"
5210               deprecated-version="2.14">
5211         <doc xml:whitespace="preserve">Adds @widget to @box, packed with reference to the end of @box.
5212 The child is packed after any other child packed with reference 
5213 to the start of @box. 
5214 Parameters for how to pack the child @widget, #GtkBox:expand, 
5215 #GtkBox:fill and #GtkBox:padding, are given their default
5216 values, %TRUE, %TRUE, and 0, respectively.</doc>
5217         <return-value transfer-ownership="none">
5218           <type name="none" c:type="void"/>
5219         </return-value>
5220         <parameters>
5221           <parameter name="widget" transfer-ownership="none">
5222             <doc xml:whitespace="preserve">the #GtkWidget to be added to @box</doc>
5223             <type name="Widget" c:type="GtkWidget*"/>
5224           </parameter>
5225         </parameters>
5226       </method>
5227       <method name="set_homogeneous" c:identifier="gtk_box_set_homogeneous">
5228         <doc xml:whitespace="preserve">Sets the #GtkBox:homogeneous property of @box, controlling 
5229 whether or not all children of @box are given equal space 
5230 in the box.</doc>
5231         <return-value transfer-ownership="none">
5232           <type name="none" c:type="void"/>
5233         </return-value>
5234         <parameters>
5235           <parameter name="homogeneous" transfer-ownership="none">
5236             <doc xml:whitespace="preserve">a boolean value, %TRUE to create equal allotments, %FALSE for variable allotments</doc>
5237             <type name="boolean" c:type="gboolean"/>
5238           </parameter>
5239         </parameters>
5240       </method>
5241       <method name="get_homogeneous" c:identifier="gtk_box_get_homogeneous">
5242         <doc xml:whitespace="preserve">Returns whether the box is homogeneous (all children are the
5243 same size). See gtk_box_set_homogeneous().</doc>
5244         <return-value transfer-ownership="none">
5245           <doc xml:whitespace="preserve">%TRUE if the box is homogeneous.</doc>
5246           <type name="boolean" c:type="gboolean"/>
5247         </return-value>
5248       </method>
5249       <method name="set_spacing" c:identifier="gtk_box_set_spacing">
5250         <doc xml:whitespace="preserve">Sets the #GtkBox:spacing property of @box, which is the 
5251 number of pixels to place between children of @box.</doc>
5252         <return-value transfer-ownership="none">
5253           <type name="none" c:type="void"/>
5254         </return-value>
5255         <parameters>
5256           <parameter name="spacing" transfer-ownership="none">
5257             <doc xml:whitespace="preserve">the number of pixels to put between children</doc>
5258             <type name="int" c:type="gint"/>
5259           </parameter>
5260         </parameters>
5261       </method>
5262       <method name="get_spacing" c:identifier="gtk_box_get_spacing">
5263         <doc xml:whitespace="preserve">Gets the value set by gtk_box_set_spacing().</doc>
5264         <return-value transfer-ownership="none">
5265           <doc xml:whitespace="preserve">spacing between children</doc>
5266           <type name="int" c:type="gint"/>
5267         </return-value>
5268       </method>
5269       <method name="reorder_child" c:identifier="gtk_box_reorder_child">
5270         <doc xml:whitespace="preserve">Moves @child to a new @position in the list of @box children.  
5271 The list is the &lt;structfield&gt;children&lt;/structfield&gt; field of
5272 #GtkBox-struct, and contains both widgets packed #GTK_PACK_START 
5273 as well as widgets packed #GTK_PACK_END, in the order that these 
5274 widgets were added to @box.
5275 A widget's position in the @box children list determines where 
5276 the widget is packed into @box.  A child widget at some position 
5277 in the list will be packed just after all other widgets of the 
5278 same packing type that appear earlier in the list.</doc>
5279         <return-value transfer-ownership="none">
5280           <type name="none" c:type="void"/>
5281         </return-value>
5282         <parameters>
5283           <parameter name="child" transfer-ownership="none">
5284             <doc xml:whitespace="preserve">the #GtkWidget to move</doc>
5285             <type name="Widget" c:type="GtkWidget*"/>
5286           </parameter>
5287           <parameter name="position" transfer-ownership="none">
5288             <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>
5289             <type name="int" c:type="gint"/>
5290           </parameter>
5291         </parameters>
5292       </method>
5293       <method name="query_child_packing"
5294               c:identifier="gtk_box_query_child_packing">
5295         <doc xml:whitespace="preserve">Obtains information about how @child is packed into @box.</doc>
5296         <return-value transfer-ownership="none">
5297           <type name="none" c:type="void"/>
5298         </return-value>
5299         <parameters>
5300           <parameter name="child" transfer-ownership="none">
5301             <doc xml:whitespace="preserve">the #GtkWidget of the child to query</doc>
5302             <type name="Widget" c:type="GtkWidget*"/>
5303           </parameter>
5304           <parameter name="expand"
5305                      direction="out"
5306                      caller-allocates="0"
5307                      transfer-ownership="full">
5308             <doc xml:whitespace="preserve">pointer to return location for #GtkBox:expand child property</doc>
5309             <type name="boolean" c:type="gboolean*"/>
5310           </parameter>
5311           <parameter name="fill"
5312                      direction="out"
5313                      caller-allocates="0"
5314                      transfer-ownership="full">
5315             <doc xml:whitespace="preserve">pointer to return location for #GtkBox:fill child property</doc>
5316             <type name="boolean" c:type="gboolean*"/>
5317           </parameter>
5318           <parameter name="padding"
5319                      direction="out"
5320                      caller-allocates="0"
5321                      transfer-ownership="full">
5322             <doc xml:whitespace="preserve">pointer to return location for #GtkBox:padding child property</doc>
5323             <type name="uint" c:type="guint*"/>
5324           </parameter>
5325           <parameter name="pack_type" transfer-ownership="none">
5326             <doc xml:whitespace="preserve">pointer to return location for #GtkBox:pack-type child property</doc>
5327             <type name="PackType" c:type="GtkPackType*"/>
5328           </parameter>
5329         </parameters>
5330       </method>
5331       <method name="set_child_packing"
5332               c:identifier="gtk_box_set_child_packing">
5333         <doc xml:whitespace="preserve">Sets the way @child is packed into @box.</doc>
5334         <return-value transfer-ownership="none">
5335           <type name="none" c:type="void"/>
5336         </return-value>
5337         <parameters>
5338           <parameter name="child" transfer-ownership="none">
5339             <doc xml:whitespace="preserve">the #GtkWidget of the child to set</doc>
5340             <type name="Widget" c:type="GtkWidget*"/>
5341           </parameter>
5342           <parameter name="expand" transfer-ownership="none">
5343             <doc xml:whitespace="preserve">the new value of the #GtkBox:expand child property</doc>
5344             <type name="boolean" c:type="gboolean"/>
5345           </parameter>
5346           <parameter name="fill" transfer-ownership="none">
5347             <doc xml:whitespace="preserve">the new value of the #GtkBox:fill child property</doc>
5348             <type name="boolean" c:type="gboolean"/>
5349           </parameter>
5350           <parameter name="padding" transfer-ownership="none">
5351             <doc xml:whitespace="preserve">the new value of the #GtkBox:padding child property</doc>
5352             <type name="uint" c:type="guint"/>
5353           </parameter>
5354           <parameter name="pack_type" transfer-ownership="none">
5355             <doc xml:whitespace="preserve">the new value of the #GtkBox:pack-type child property</doc>
5356             <type name="PackType" c:type="GtkPackType"/>
5357           </parameter>
5358         </parameters>
5359       </method>
5360       <property name="homogeneous" writable="1" transfer-ownership="none">
5361         <type name="boolean" c:type="gboolean"/>
5362       </property>
5363       <property name="spacing" writable="1" transfer-ownership="none">
5364         <type name="int" c:type="gint"/>
5365       </property>
5366       <field name="container">
5367         <type name="Container" c:type="GtkContainer"/>
5368       </field>
5369       <field name="children">
5370         <type name="GLib.List" c:type="GList*">
5371           <type name="any" c:type="gpointer"/>
5372         </type>
5373       </field>
5374       <field name="spacing">
5375         <type name="int16" c:type="gint16"/>
5376       </field>
5377       <field name="homogeneous" bits="1">
5378         <type name="uint" c:type="guint"/>
5379       </field>
5380     </class>
5381     <record name="BoxChild" c:type="GtkBoxChild">
5382       <field name="widget" writable="1">
5383         <type name="Widget" c:type="GtkWidget*"/>
5384       </field>
5385       <field name="padding" writable="1">
5386         <type name="uint16" c:type="guint16"/>
5387       </field>
5388       <field name="expand" writable="1" bits="1">
5389         <type name="uint" c:type="guint"/>
5390       </field>
5391       <field name="fill" writable="1" bits="1">
5392         <type name="uint" c:type="guint"/>
5393       </field>
5394       <field name="pack" writable="1" bits="1">
5395         <type name="uint" c:type="guint"/>
5396       </field>
5397       <field name="is_secondary" writable="1" bits="1">
5398         <type name="uint" c:type="guint"/>
5399       </field>
5400     </record>
5401     <record name="BoxClass"
5402             c:type="GtkBoxClass"
5403             glib:is-gtype-struct-for="Box">
5404       <field name="parent_class">
5405         <type name="ContainerClass" c:type="GtkContainerClass"/>
5406       </field>
5407     </record>
5408     <interface name="Buildable"
5409                c:type="GtkBuildable"
5410                glib:type-name="GtkBuildable"
5411                glib:get-type="gtk_buildable_get_type"
5412                glib:type-struct="BuildableIface">
5413       <virtual-method name="set_name" invoker="set_name" version="2.12">
5414         <doc xml:whitespace="preserve">Sets the name of the @buildable object.</doc>
5415         <return-value transfer-ownership="none">
5416           <type name="none" c:type="void"/>
5417         </return-value>
5418         <parameters>
5419           <parameter name="name" transfer-ownership="none">
5420             <doc xml:whitespace="preserve">name to set</doc>
5421             <type name="utf8" c:type="gchar*"/>
5422           </parameter>
5423         </parameters>
5424       </virtual-method>
5425       <virtual-method name="get_name" invoker="get_name" version="2.12">
5426         <doc xml:whitespace="preserve">Gets the name of the @buildable object. 
5427 #GtkBuilder sets the name based on the the 
5428 &lt;link linkend="BUILDER-UI"&gt;GtkBuilder UI definition&lt;/link&gt; 
5429 used to construct the @buildable.</doc>
5430         <return-value transfer-ownership="none">
5431           <doc xml:whitespace="preserve">the name set with gtk_buildable_set_name()</doc>
5432           <type name="utf8" c:type="gchar*"/>
5433         </return-value>
5434       </virtual-method>
5435       <virtual-method name="add_child" invoker="add_child" version="2.12">
5436         <doc xml:whitespace="preserve">Adds a child to @buildable. @type is an optional string
5437 describing how the child should be added.</doc>
5438         <return-value transfer-ownership="none">
5439           <type name="none" c:type="void"/>
5440         </return-value>
5441         <parameters>
5442           <parameter name="builder" transfer-ownership="none">
5443             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5444             <type name="Builder" c:type="GtkBuilder*"/>
5445           </parameter>
5446           <parameter name="child" transfer-ownership="none">
5447             <doc xml:whitespace="preserve">child to add</doc>
5448             <type name="GObject.Object" c:type="GObject*"/>
5449           </parameter>
5450           <parameter name="type" transfer-ownership="none" allow-none="1">
5451             <doc xml:whitespace="preserve">kind of child or %NULL</doc>
5452             <type name="utf8" c:type="gchar*"/>
5453           </parameter>
5454         </parameters>
5455       </virtual-method>
5456       <virtual-method name="set_buildable_property"
5457                       invoker="set_buildable_property"
5458                       version="2.12">
5459         <doc xml:whitespace="preserve">Sets the property name @name to @value on the @buildable object.</doc>
5460         <return-value transfer-ownership="none">
5461           <type name="none" c:type="void"/>
5462         </return-value>
5463         <parameters>
5464           <parameter name="builder" transfer-ownership="none">
5465             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5466             <type name="Builder" c:type="GtkBuilder*"/>
5467           </parameter>
5468           <parameter name="name" transfer-ownership="none">
5469             <doc xml:whitespace="preserve">name of property</doc>
5470             <type name="utf8" c:type="gchar*"/>
5471           </parameter>
5472           <parameter name="value" transfer-ownership="none">
5473             <doc xml:whitespace="preserve">value of property</doc>
5474             <type name="GObject.Value" c:type="GValue*"/>
5475           </parameter>
5476         </parameters>
5477       </virtual-method>
5478       <virtual-method name="construct_child"
5479                       invoker="construct_child"
5480                       version="2.12">
5481         <doc xml:whitespace="preserve">Constructs a child of @buildable with the name @name. 
5482 #GtkBuilder calls this function if a "constructor" has been
5483 specified in the UI definition.</doc>
5484         <return-value transfer-ownership="full">
5485           <doc xml:whitespace="preserve">the constructed child</doc>
5486           <type name="GObject.Object" c:type="GObject*"/>
5487         </return-value>
5488         <parameters>
5489           <parameter name="builder" transfer-ownership="none">
5490             <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
5491             <type name="Builder" c:type="GtkBuilder*"/>
5492           </parameter>
5493           <parameter name="name" transfer-ownership="none">
5494             <doc xml:whitespace="preserve">name of child to construct</doc>
5495             <type name="utf8" c:type="gchar*"/>
5496           </parameter>
5497         </parameters>
5498       </virtual-method>
5499       <virtual-method name="custom_tag_start"
5500                       invoker="custom_tag_start"
5501                       version="2.12">
5502         <doc xml:whitespace="preserve">This is called for each unknown element under &amp;lt;child&amp;gt;.
5503 if it doesn't.</doc>
5504         <return-value transfer-ownership="none">
5505           <doc xml:whitespace="preserve">%TRUE if a object has a custom implementation, %FALSE</doc>
5506           <type name="boolean" c:type="gboolean"/>
5507         </return-value>
5508         <parameters>
5509           <parameter name="builder" transfer-ownership="none">
5510             <doc xml:whitespace="preserve">a #GtkBuilder used to construct this object</doc>
5511             <type name="Builder" c:type="GtkBuilder*"/>
5512           </parameter>
5513           <parameter name="child" transfer-ownership="none" allow-none="1">
5514             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5515             <type name="GObject.Object" c:type="GObject*"/>
5516           </parameter>
5517           <parameter name="tagname" transfer-ownership="none">
5518             <doc xml:whitespace="preserve">name of tag</doc>
5519             <type name="utf8" c:type="gchar*"/>
5520           </parameter>
5521           <parameter name="parser" transfer-ownership="none">
5522             <doc xml:whitespace="preserve">a #GMarkupParser structure to fill in</doc>
5523             <type name="GLib.MarkupParser" c:type="GMarkupParser*"/>
5524           </parameter>
5525           <parameter name="data" transfer-ownership="none">
5526             <doc xml:whitespace="preserve">return location for user data that will be passed in to parser functions</doc>
5527             <type name="any" c:type="gpointer*"/>
5528           </parameter>
5529         </parameters>
5530       </virtual-method>
5531       <virtual-method name="custom_tag_end"
5532                       invoker="custom_tag_end"
5533                       version="2.12">
5534         <doc xml:whitespace="preserve">This is called at the end of each custom element handled by 
5535 the buildable.</doc>
5536         <return-value transfer-ownership="none">
5537           <type name="none" c:type="void"/>
5538         </return-value>
5539         <parameters>
5540           <parameter name="builder" transfer-ownership="none">
5541             <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
5542             <type name="Builder" c:type="GtkBuilder*"/>
5543           </parameter>
5544           <parameter name="child" transfer-ownership="none" allow-none="1">
5545             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5546             <type name="GObject.Object" c:type="GObject*"/>
5547           </parameter>
5548           <parameter name="tagname" transfer-ownership="none">
5549             <doc xml:whitespace="preserve">name of tag</doc>
5550             <type name="utf8" c:type="gchar*"/>
5551           </parameter>
5552           <parameter name="data" transfer-ownership="none">
5553             <doc xml:whitespace="preserve">user data that will be passed in to parser functions</doc>
5554             <type name="any" c:type="gpointer*"/>
5555           </parameter>
5556         </parameters>
5557       </virtual-method>
5558       <virtual-method name="custom_finished"
5559                       invoker="custom_finished"
5560                       version="2.12">
5561         <doc xml:whitespace="preserve">This is similar to gtk_buildable_parser_finished() but is
5562 called once for each custom tag handled by the @buildable.</doc>
5563         <return-value transfer-ownership="none">
5564           <type name="none" c:type="void"/>
5565         </return-value>
5566         <parameters>
5567           <parameter name="builder" transfer-ownership="none">
5568             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5569             <type name="Builder" c:type="GtkBuilder*"/>
5570           </parameter>
5571           <parameter name="child" transfer-ownership="none" allow-none="1">
5572             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5573             <type name="GObject.Object" c:type="GObject*"/>
5574           </parameter>
5575           <parameter name="tagname" transfer-ownership="none">
5576             <doc xml:whitespace="preserve">the name of the tag</doc>
5577             <type name="utf8" c:type="gchar*"/>
5578           </parameter>
5579           <parameter name="data" transfer-ownership="none">
5580             <doc xml:whitespace="preserve">user data created in custom_tag_start</doc>
5581             <type name="any" c:type="gpointer"/>
5582           </parameter>
5583         </parameters>
5584       </virtual-method>
5585       <virtual-method name="parser_finished"
5586                       invoker="parser_finished"
5587                       version="2.12">
5588         <doc xml:whitespace="preserve">Called when the builder finishes the parsing of a 
5589 &lt;link linkend="BUILDER-UI"&gt;GtkBuilder UI definition&lt;/link&gt;. 
5590 Note that this will be called once for each time 
5591 gtk_builder_add_from_file() or gtk_builder_add_from_string() 
5592 is called on a builder.</doc>
5593         <return-value transfer-ownership="none">
5594           <type name="none" c:type="void"/>
5595         </return-value>
5596         <parameters>
5597           <parameter name="builder" transfer-ownership="none">
5598             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5599             <type name="Builder" c:type="GtkBuilder*"/>
5600           </parameter>
5601         </parameters>
5602       </virtual-method>
5603       <virtual-method name="get_internal_child"
5604                       invoker="get_internal_child"
5605                       version="2.12">
5606         <doc xml:whitespace="preserve">Get the internal child called @childname of the @buildable object.</doc>
5607         <return-value transfer-ownership="full">
5608           <doc xml:whitespace="preserve">the internal child of the buildable object</doc>
5609           <type name="GObject.Object" c:type="GObject*"/>
5610         </return-value>
5611         <parameters>
5612           <parameter name="builder" transfer-ownership="none">
5613             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5614             <type name="Builder" c:type="GtkBuilder*"/>
5615           </parameter>
5616           <parameter name="childname" transfer-ownership="none">
5617             <doc xml:whitespace="preserve">name of child</doc>
5618             <type name="utf8" c:type="gchar*"/>
5619           </parameter>
5620         </parameters>
5621       </virtual-method>
5622       <method name="set_name"
5623               c:identifier="gtk_buildable_set_name"
5624               version="2.12">
5625         <doc xml:whitespace="preserve">Sets the name of the @buildable object.</doc>
5626         <return-value transfer-ownership="none">
5627           <type name="none" c:type="void"/>
5628         </return-value>
5629         <parameters>
5630           <parameter name="name" transfer-ownership="none">
5631             <doc xml:whitespace="preserve">name to set</doc>
5632             <type name="utf8" c:type="gchar*"/>
5633           </parameter>
5634         </parameters>
5635       </method>
5636       <method name="get_name"
5637               c:identifier="gtk_buildable_get_name"
5638               version="2.12">
5639         <doc xml:whitespace="preserve">Gets the name of the @buildable object. 
5640 #GtkBuilder sets the name based on the the 
5641 &lt;link linkend="BUILDER-UI"&gt;GtkBuilder UI definition&lt;/link&gt; 
5642 used to construct the @buildable.</doc>
5643         <return-value transfer-ownership="none">
5644           <doc xml:whitespace="preserve">the name set with gtk_buildable_set_name()</doc>
5645           <type name="utf8" c:type="gchar*"/>
5646         </return-value>
5647       </method>
5648       <method name="add_child"
5649               c:identifier="gtk_buildable_add_child"
5650               version="2.12">
5651         <doc xml:whitespace="preserve">Adds a child to @buildable. @type is an optional string
5652 describing how the child should be added.</doc>
5653         <return-value transfer-ownership="none">
5654           <type name="none" c:type="void"/>
5655         </return-value>
5656         <parameters>
5657           <parameter name="builder" transfer-ownership="none">
5658             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5659             <type name="Builder" c:type="GtkBuilder*"/>
5660           </parameter>
5661           <parameter name="child" transfer-ownership="none">
5662             <doc xml:whitespace="preserve">child to add</doc>
5663             <type name="GObject.Object" c:type="GObject*"/>
5664           </parameter>
5665           <parameter name="type" transfer-ownership="none" allow-none="1">
5666             <doc xml:whitespace="preserve">kind of child or %NULL</doc>
5667             <type name="utf8" c:type="gchar*"/>
5668           </parameter>
5669         </parameters>
5670       </method>
5671       <method name="set_buildable_property"
5672               c:identifier="gtk_buildable_set_buildable_property"
5673               version="2.12">
5674         <doc xml:whitespace="preserve">Sets the property name @name to @value on the @buildable object.</doc>
5675         <return-value transfer-ownership="none">
5676           <type name="none" c:type="void"/>
5677         </return-value>
5678         <parameters>
5679           <parameter name="builder" transfer-ownership="none">
5680             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5681             <type name="Builder" c:type="GtkBuilder*"/>
5682           </parameter>
5683           <parameter name="name" transfer-ownership="none">
5684             <doc xml:whitespace="preserve">name of property</doc>
5685             <type name="utf8" c:type="gchar*"/>
5686           </parameter>
5687           <parameter name="value" transfer-ownership="none">
5688             <doc xml:whitespace="preserve">value of property</doc>
5689             <type name="GObject.Value" c:type="GValue*"/>
5690           </parameter>
5691         </parameters>
5692       </method>
5693       <method name="construct_child"
5694               c:identifier="gtk_buildable_construct_child"
5695               version="2.12">
5696         <doc xml:whitespace="preserve">Constructs a child of @buildable with the name @name. 
5697 #GtkBuilder calls this function if a "constructor" has been
5698 specified in the UI definition.</doc>
5699         <return-value transfer-ownership="full">
5700           <doc xml:whitespace="preserve">the constructed child</doc>
5701           <type name="GObject.Object" c:type="GObject*"/>
5702         </return-value>
5703         <parameters>
5704           <parameter name="builder" transfer-ownership="none">
5705             <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
5706             <type name="Builder" c:type="GtkBuilder*"/>
5707           </parameter>
5708           <parameter name="name" transfer-ownership="none">
5709             <doc xml:whitespace="preserve">name of child to construct</doc>
5710             <type name="utf8" c:type="gchar*"/>
5711           </parameter>
5712         </parameters>
5713       </method>
5714       <method name="custom_tag_start"
5715               c:identifier="gtk_buildable_custom_tag_start"
5716               version="2.12">
5717         <doc xml:whitespace="preserve">This is called for each unknown element under &amp;lt;child&amp;gt;.
5718 if it doesn't.</doc>
5719         <return-value transfer-ownership="none">
5720           <doc xml:whitespace="preserve">%TRUE if a object has a custom implementation, %FALSE</doc>
5721           <type name="boolean" c:type="gboolean"/>
5722         </return-value>
5723         <parameters>
5724           <parameter name="builder" transfer-ownership="none">
5725             <doc xml:whitespace="preserve">a #GtkBuilder used to construct this object</doc>
5726             <type name="Builder" c:type="GtkBuilder*"/>
5727           </parameter>
5728           <parameter name="child" transfer-ownership="none" allow-none="1">
5729             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5730             <type name="GObject.Object" c:type="GObject*"/>
5731           </parameter>
5732           <parameter name="tagname" transfer-ownership="none">
5733             <doc xml:whitespace="preserve">name of tag</doc>
5734             <type name="utf8" c:type="gchar*"/>
5735           </parameter>
5736           <parameter name="parser" transfer-ownership="none">
5737             <doc xml:whitespace="preserve">a #GMarkupParser structure to fill in</doc>
5738             <type name="GLib.MarkupParser" c:type="GMarkupParser*"/>
5739           </parameter>
5740           <parameter name="data" transfer-ownership="none">
5741             <doc xml:whitespace="preserve">return location for user data that will be passed in to parser functions</doc>
5742             <type name="any" c:type="gpointer*"/>
5743           </parameter>
5744         </parameters>
5745       </method>
5746       <method name="custom_tag_end"
5747               c:identifier="gtk_buildable_custom_tag_end"
5748               version="2.12">
5749         <doc xml:whitespace="preserve">This is called at the end of each custom element handled by 
5750 the buildable.</doc>
5751         <return-value transfer-ownership="none">
5752           <type name="none" c:type="void"/>
5753         </return-value>
5754         <parameters>
5755           <parameter name="builder" transfer-ownership="none">
5756             <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
5757             <type name="Builder" c:type="GtkBuilder*"/>
5758           </parameter>
5759           <parameter name="child" transfer-ownership="none" allow-none="1">
5760             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5761             <type name="GObject.Object" c:type="GObject*"/>
5762           </parameter>
5763           <parameter name="tagname" transfer-ownership="none">
5764             <doc xml:whitespace="preserve">name of tag</doc>
5765             <type name="utf8" c:type="gchar*"/>
5766           </parameter>
5767           <parameter name="data" transfer-ownership="none">
5768             <doc xml:whitespace="preserve">user data that will be passed in to parser functions</doc>
5769             <type name="any" c:type="gpointer*"/>
5770           </parameter>
5771         </parameters>
5772       </method>
5773       <method name="custom_finished"
5774               c:identifier="gtk_buildable_custom_finished"
5775               version="2.12">
5776         <doc xml:whitespace="preserve">This is similar to gtk_buildable_parser_finished() but is
5777 called once for each custom tag handled by the @buildable.</doc>
5778         <return-value transfer-ownership="none">
5779           <type name="none" c:type="void"/>
5780         </return-value>
5781         <parameters>
5782           <parameter name="builder" transfer-ownership="none">
5783             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5784             <type name="Builder" c:type="GtkBuilder*"/>
5785           </parameter>
5786           <parameter name="child" transfer-ownership="none" allow-none="1">
5787             <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5788             <type name="GObject.Object" c:type="GObject*"/>
5789           </parameter>
5790           <parameter name="tagname" transfer-ownership="none">
5791             <doc xml:whitespace="preserve">the name of the tag</doc>
5792             <type name="utf8" c:type="gchar*"/>
5793           </parameter>
5794           <parameter name="data" transfer-ownership="none">
5795             <doc xml:whitespace="preserve">user data created in custom_tag_start</doc>
5796             <type name="any" c:type="gpointer"/>
5797           </parameter>
5798         </parameters>
5799       </method>
5800       <method name="parser_finished"
5801               c:identifier="gtk_buildable_parser_finished"
5802               version="2.12">
5803         <doc xml:whitespace="preserve">Called when the builder finishes the parsing of a 
5804 &lt;link linkend="BUILDER-UI"&gt;GtkBuilder UI definition&lt;/link&gt;. 
5805 Note that this will be called once for each time 
5806 gtk_builder_add_from_file() or gtk_builder_add_from_string() 
5807 is called on a builder.</doc>
5808         <return-value transfer-ownership="none">
5809           <type name="none" c:type="void"/>
5810         </return-value>
5811         <parameters>
5812           <parameter name="builder" transfer-ownership="none">
5813             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5814             <type name="Builder" c:type="GtkBuilder*"/>
5815           </parameter>
5816         </parameters>
5817       </method>
5818       <method name="get_internal_child"
5819               c:identifier="gtk_buildable_get_internal_child"
5820               version="2.12">
5821         <doc xml:whitespace="preserve">Get the internal child called @childname of the @buildable object.</doc>
5822         <return-value transfer-ownership="full">
5823           <doc xml:whitespace="preserve">the internal child of the buildable object</doc>
5824           <type name="GObject.Object" c:type="GObject*"/>
5825         </return-value>
5826         <parameters>
5827           <parameter name="builder" transfer-ownership="none">
5828             <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5829             <type name="Builder" c:type="GtkBuilder*"/>
5830           </parameter>
5831           <parameter name="childname" transfer-ownership="none">
5832             <doc xml:whitespace="preserve">name of child</doc>
5833             <type name="utf8" c:type="gchar*"/>
5834           </parameter>
5835         </parameters>
5836       </method>
5837     </interface>
5838     <record name="BuildableIface"
5839             c:type="GtkBuildableIface"
5840             glib:is-gtype-struct-for="Buildable">
5841       <doc xml:whitespace="preserve">The GtkBuildableIface interface contains method that are
5842 necessary to allow #GtkBuilder to construct an object from
5843 a GtkBuilder UI definition.</doc>
5844       <field name="g_iface">
5845         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
5846       </field>
5847       <field name="set_name">
5848         <callback name="set_name" c:type="set_name">
5849           <return-value transfer-ownership="none">
5850             <type name="none" c:type="void"/>
5851           </return-value>
5852           <parameters>
5853             <parameter name="buildable" transfer-ownership="none">
5854               <type name="Buildable" c:type="GtkBuildable*"/>
5855             </parameter>
5856             <parameter name="name" transfer-ownership="none">
5857               <doc xml:whitespace="preserve">name to set</doc>
5858               <type name="utf8" c:type="gchar*"/>
5859             </parameter>
5860           </parameters>
5861         </callback>
5862       </field>
5863       <field name="get_name">
5864         <callback name="get_name" c:type="get_name">
5865           <return-value transfer-ownership="none">
5866             <doc xml:whitespace="preserve">the name set with gtk_buildable_set_name()</doc>
5867             <type name="utf8" c:type="gchar*"/>
5868           </return-value>
5869           <parameters>
5870             <parameter name="buildable" transfer-ownership="none">
5871               <type name="Buildable" c:type="GtkBuildable*"/>
5872             </parameter>
5873           </parameters>
5874         </callback>
5875       </field>
5876       <field name="add_child">
5877         <callback name="add_child" c:type="add_child">
5878           <return-value transfer-ownership="none">
5879             <type name="none" c:type="void"/>
5880           </return-value>
5881           <parameters>
5882             <parameter name="buildable" transfer-ownership="none">
5883               <type name="Buildable" c:type="GtkBuildable*"/>
5884             </parameter>
5885             <parameter name="builder" transfer-ownership="none">
5886               <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5887               <type name="Builder" c:type="GtkBuilder*"/>
5888             </parameter>
5889             <parameter name="child" transfer-ownership="none">
5890               <doc xml:whitespace="preserve">child to add</doc>
5891               <type name="GObject.Object" c:type="GObject*"/>
5892             </parameter>
5893             <parameter name="type" transfer-ownership="none" allow-none="1">
5894               <doc xml:whitespace="preserve">kind of child or %NULL</doc>
5895               <type name="utf8" c:type="gchar*"/>
5896             </parameter>
5897           </parameters>
5898         </callback>
5899       </field>
5900       <field name="set_buildable_property">
5901         <callback name="set_buildable_property"
5902                   c:type="set_buildable_property">
5903           <return-value transfer-ownership="none">
5904             <type name="none" c:type="void"/>
5905           </return-value>
5906           <parameters>
5907             <parameter name="buildable" transfer-ownership="none">
5908               <type name="Buildable" c:type="GtkBuildable*"/>
5909             </parameter>
5910             <parameter name="builder" transfer-ownership="none">
5911               <doc xml:whitespace="preserve">a #GtkBuilder</doc>
5912               <type name="Builder" c:type="GtkBuilder*"/>
5913             </parameter>
5914             <parameter name="name" transfer-ownership="none">
5915               <doc xml:whitespace="preserve">name of property</doc>
5916               <type name="utf8" c:type="gchar*"/>
5917             </parameter>
5918             <parameter name="value" transfer-ownership="none">
5919               <doc xml:whitespace="preserve">value of property</doc>
5920               <type name="GObject.Value" c:type="GValue*"/>
5921             </parameter>
5922           </parameters>
5923         </callback>
5924       </field>
5925       <field name="construct_child">
5926         <callback name="construct_child" c:type="construct_child">
5927           <return-value transfer-ownership="full">
5928             <doc xml:whitespace="preserve">the constructed child</doc>
5929             <type name="GObject.Object" c:type="GObject*"/>
5930           </return-value>
5931           <parameters>
5932             <parameter name="buildable" transfer-ownership="none">
5933               <type name="Buildable" c:type="GtkBuildable*"/>
5934             </parameter>
5935             <parameter name="builder" transfer-ownership="none">
5936               <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
5937               <type name="Builder" c:type="GtkBuilder*"/>
5938             </parameter>
5939             <parameter name="name" transfer-ownership="none">
5940               <doc xml:whitespace="preserve">name of child to construct</doc>
5941               <type name="utf8" c:type="gchar*"/>
5942             </parameter>
5943           </parameters>
5944         </callback>
5945       </field>
5946       <field name="custom_tag_start">
5947         <callback name="custom_tag_start" c:type="custom_tag_start">
5948           <return-value transfer-ownership="none">
5949             <doc xml:whitespace="preserve">%TRUE if a object has a custom implementation, %FALSE</doc>
5950             <type name="boolean" c:type="gboolean"/>
5951           </return-value>
5952           <parameters>
5953             <parameter name="buildable" transfer-ownership="none">
5954               <type name="Buildable" c:type="GtkBuildable*"/>
5955             </parameter>
5956             <parameter name="builder" transfer-ownership="none">
5957               <doc xml:whitespace="preserve">a #GtkBuilder used to construct this object</doc>
5958               <type name="Builder" c:type="GtkBuilder*"/>
5959             </parameter>
5960             <parameter name="child" transfer-ownership="none" allow-none="1">
5961               <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5962               <type name="GObject.Object" c:type="GObject*"/>
5963             </parameter>
5964             <parameter name="tagname" transfer-ownership="none">
5965               <doc xml:whitespace="preserve">name of tag</doc>
5966               <type name="utf8" c:type="gchar*"/>
5967             </parameter>
5968             <parameter name="parser" transfer-ownership="none">
5969               <doc xml:whitespace="preserve">a #GMarkupParser structure to fill in</doc>
5970               <type name="GLib.MarkupParser" c:type="GMarkupParser*"/>
5971             </parameter>
5972             <parameter name="data" transfer-ownership="none">
5973               <doc xml:whitespace="preserve">return location for user data that will be passed in to parser functions</doc>
5974               <type name="any" c:type="gpointer*"/>
5975             </parameter>
5976           </parameters>
5977         </callback>
5978       </field>
5979       <field name="custom_tag_end">
5980         <callback name="custom_tag_end" c:type="custom_tag_end">
5981           <return-value transfer-ownership="none">
5982             <type name="none" c:type="void"/>
5983           </return-value>
5984           <parameters>
5985             <parameter name="buildable" transfer-ownership="none">
5986               <type name="Buildable" c:type="GtkBuildable*"/>
5987             </parameter>
5988             <parameter name="builder" transfer-ownership="none">
5989               <doc xml:whitespace="preserve">#GtkBuilder used to construct this object</doc>
5990               <type name="Builder" c:type="GtkBuilder*"/>
5991             </parameter>
5992             <parameter name="child" transfer-ownership="none" allow-none="1">
5993               <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
5994               <type name="GObject.Object" c:type="GObject*"/>
5995             </parameter>
5996             <parameter name="tagname" transfer-ownership="none">
5997               <doc xml:whitespace="preserve">name of tag</doc>
5998               <type name="utf8" c:type="gchar*"/>
5999             </parameter>
6000             <parameter name="data" transfer-ownership="none">
6001               <doc xml:whitespace="preserve">user data that will be passed in to parser functions</doc>
6002               <type name="any" c:type="gpointer*"/>
6003             </parameter>
6004           </parameters>
6005         </callback>
6006       </field>
6007       <field name="custom_finished">
6008         <callback name="custom_finished" c:type="custom_finished">
6009           <return-value transfer-ownership="none">
6010             <type name="none" c:type="void"/>
6011           </return-value>
6012           <parameters>
6013             <parameter name="buildable" transfer-ownership="none">
6014               <type name="Buildable" c:type="GtkBuildable*"/>
6015             </parameter>
6016             <parameter name="builder" transfer-ownership="none">
6017               <doc xml:whitespace="preserve">a #GtkBuilder</doc>
6018               <type name="Builder" c:type="GtkBuilder*"/>
6019             </parameter>
6020             <parameter name="child" transfer-ownership="none" allow-none="1">
6021               <doc xml:whitespace="preserve">child object or %NULL for non-child tags</doc>
6022               <type name="GObject.Object" c:type="GObject*"/>
6023             </parameter>
6024             <parameter name="tagname" transfer-ownership="none">
6025               <doc xml:whitespace="preserve">the name of the tag</doc>
6026               <type name="utf8" c:type="gchar*"/>
6027             </parameter>
6028             <parameter name="data" transfer-ownership="none">
6029               <doc xml:whitespace="preserve">user data created in custom_tag_start</doc>
6030               <type name="any" c:type="gpointer"/>
6031             </parameter>
6032           </parameters>
6033         </callback>
6034       </field>
6035       <field name="parser_finished">
6036         <callback name="parser_finished" c:type="parser_finished">
6037           <return-value transfer-ownership="none">
6038             <type name="none" c:type="void"/>
6039           </return-value>
6040           <parameters>
6041             <parameter name="buildable" transfer-ownership="none">
6042               <type name="Buildable" c:type="GtkBuildable*"/>
6043             </parameter>
6044             <parameter name="builder" transfer-ownership="none">
6045               <doc xml:whitespace="preserve">a #GtkBuilder</doc>
6046               <type name="Builder" c:type="GtkBuilder*"/>
6047             </parameter>
6048           </parameters>
6049         </callback>
6050       </field>
6051       <field name="get_internal_child">
6052         <callback name="get_internal_child" c:type="get_internal_child">
6053           <return-value transfer-ownership="full">
6054             <doc xml:whitespace="preserve">the internal child of the buildable object</doc>
6055             <type name="GObject.Object" c:type="GObject*"/>
6056           </return-value>
6057           <parameters>
6058             <parameter name="buildable" transfer-ownership="none">
6059               <type name="Buildable" c:type="GtkBuildable*"/>
6060             </parameter>
6061             <parameter name="builder" transfer-ownership="none">
6062               <doc xml:whitespace="preserve">a #GtkBuilder</doc>
6063               <type name="Builder" c:type="GtkBuilder*"/>
6064             </parameter>
6065             <parameter name="childname" transfer-ownership="none">
6066               <doc xml:whitespace="preserve">name of child</doc>
6067               <type name="utf8" c:type="gchar*"/>
6068             </parameter>
6069           </parameters>
6070         </callback>
6071       </field>
6072     </record>
6073     <class name="Builder"
6074            c:type="GtkBuilder"
6075            parent="GObject.Object"
6076            glib:type-name="GtkBuilder"
6077            glib:get-type="gtk_builder_get_type"
6078            glib:type-struct="BuilderClass">
6079       <constructor name="new" c:identifier="gtk_builder_new" version="2.12">
6080         <doc xml:whitespace="preserve">Creates a new builder object.</doc>
6081         <return-value transfer-ownership="full">
6082           <doc xml:whitespace="preserve">a new #GtkBuilder object</doc>
6083           <type name="Builder" c:type="GtkBuilder*"/>
6084         </return-value>
6085       </constructor>
6086       <virtual-method name="get_type_from_name"
6087                       invoker="get_type_from_name"
6088                       version="2.12">
6089         <doc xml:whitespace="preserve">Looks up a type by name, using the virtual function that 
6090 #GtkBuilder has for that purpose. This is mainly used when
6091 implementing the #GtkBuildable interface on a type.
6092 if no type was found</doc>
6093         <return-value transfer-ownership="none">
6094           <doc xml:whitespace="preserve">the #GType found for @type_name or #G_TYPE_INVALID</doc>
6095           <type name="GType" c:type="GType"/>
6096         </return-value>
6097         <parameters>
6098           <parameter name="type_name" transfer-ownership="none">
6099             <doc xml:whitespace="preserve">type name to lookup</doc>
6100             <type name="utf8" c:type="char*"/>
6101           </parameter>
6102         </parameters>
6103       </virtual-method>
6104       <method name="add_from_file"
6105               c:identifier="gtk_builder_add_from_file"
6106               version="2.12"
6107               throws="1">
6108         <doc xml:whitespace="preserve">Parses a file containing a &lt;link linkend="BUILDER-UI"&gt;GtkBuilder 
6109 UI definition&lt;/link&gt; and merges it with the current contents of @builder. 
6110 Upon errors 0 will be returned and @error will be assigned a
6111 #GError from the #GTK_BUILDER_ERROR, #G_MARKUP_ERROR or #G_FILE_ERROR 
6112 domain.</doc>
6113         <return-value transfer-ownership="none">
6114           <doc xml:whitespace="preserve">A positive value on success, 0 if an error occurred</doc>
6115           <type name="uint" c:type="guint"/>
6116         </return-value>
6117         <parameters>
6118           <parameter name="filename" transfer-ownership="none">
6119             <doc xml:whitespace="preserve">the name of the file to parse</doc>
6120             <type name="utf8" c:type="gchar*"/>
6121           </parameter>
6122         </parameters>
6123       </method>
6124       <method name="add_from_string"
6125               c:identifier="gtk_builder_add_from_string"
6126               version="2.12"
6127               throws="1">
6128         <doc xml:whitespace="preserve">Parses a string containing a &lt;link linkend="BUILDER-UI"&gt;GtkBuilder 
6129 UI definition&lt;/link&gt; and merges it with the current contents of @builder. 
6130 Upon errors 0 will be returned and @error will be assigned a
6131 #GError from the #GTK_BUILDER_ERROR or #G_MARKUP_ERROR domain.</doc>
6132         <return-value transfer-ownership="none">
6133           <doc xml:whitespace="preserve">A positive value on success, 0 if an error occurred</doc>
6134           <type name="uint" c:type="guint"/>
6135         </return-value>
6136         <parameters>
6137           <parameter name="buffer" transfer-ownership="none">
6138             <doc xml:whitespace="preserve">the string to parse</doc>
6139             <type name="utf8" c:type="gchar*"/>
6140           </parameter>
6141           <parameter name="length" transfer-ownership="none">
6142             <doc xml:whitespace="preserve">the length of @buffer (may be -1 if @buffer is nul-terminated)</doc>
6143             <type name="gsize" c:type="gsize"/>
6144           </parameter>
6145         </parameters>
6146       </method>
6147       <method name="add_objects_from_file"
6148               c:identifier="gtk_builder_add_objects_from_file"
6149               version="2.14"
6150               throws="1">
6151         <doc xml:whitespace="preserve">Parses a file containing a &lt;link linkend="BUILDER-UI"&gt;GtkBuilder 
6152 UI definition&lt;/link&gt; building only the requested objects and merges
6153 them with the current contents of @builder. 
6154 Upon errors 0 will be returned and @error will be assigned a
6155 #GError from the #GTK_BUILDER_ERROR, #G_MARKUP_ERROR or #G_FILE_ERROR 
6156 domain.
6157 &lt;note&gt;&lt;para&gt;
6158 If you are adding an object that depends on an object that is not 
6159 its child (for instance a #GtkTreeView that depends on its
6160 #GtkTreeModel), you have to explicitely list all of them in @object_ids. 
6161 &lt;/para&gt;&lt;/note&gt;</doc>
6162         <return-value transfer-ownership="none">
6163           <doc xml:whitespace="preserve">A positive value on success, 0 if an error occurred</doc>
6164           <type name="uint" c:type="guint"/>
6165         </return-value>
6166         <parameters>
6167           <parameter name="filename" transfer-ownership="none">
6168             <doc xml:whitespace="preserve">the name of the file to parse</doc>
6169             <type name="utf8" c:type="gchar*"/>
6170           </parameter>
6171           <parameter name="object_ids" transfer-ownership="none">
6172             <doc xml:whitespace="preserve">nul-terminated array of objects to build</doc>
6173             <array c:type="gchar**">
6174               <type name="utf8"/>
6175             </array>
6176           </parameter>
6177         </parameters>
6178       </method>
6179       <method name="add_objects_from_string"
6180               c:identifier="gtk_builder_add_objects_from_string"
6181               version="2.14"
6182               throws="1">
6183         <doc xml:whitespace="preserve">Parses a string containing a &lt;link linkend="BUILDER-UI"&gt;GtkBuilder 
6184 UI definition&lt;/link&gt; building only the requested objects and merges
6185 them with the current contents of @builder. 
6186 Upon errors 0 will be returned and @error will be assigned a
6187 #GError from the #GTK_BUILDER_ERROR or #G_MARKUP_ERROR domain.
6188 &lt;note&gt;&lt;para&gt;
6189 If you are adding an object that depends on an object that is not 
6190 its child (for instance a #GtkTreeView that depends on its
6191 #GtkTreeModel), you have to explicitely list all of them in @object_ids. 
6192 &lt;/para&gt;&lt;/note&gt;</doc>
6193         <return-value transfer-ownership="none">
6194           <doc xml:whitespace="preserve">A positive value on success, 0 if an error occurred</doc>
6195           <type name="uint" c:type="guint"/>
6196         </return-value>
6197         <parameters>
6198           <parameter name="buffer" transfer-ownership="none">
6199             <doc xml:whitespace="preserve">the string to parse</doc>
6200             <type name="utf8" c:type="gchar*"/>
6201           </parameter>
6202           <parameter name="length" transfer-ownership="none">
6203             <doc xml:whitespace="preserve">the length of @buffer (may be -1 if @buffer is nul-terminated)</doc>
6204             <type name="gsize" c:type="gsize"/>
6205           </parameter>
6206           <parameter name="object_ids" transfer-ownership="none">
6207             <doc xml:whitespace="preserve">nul-terminated array of objects to build</doc>
6208             <array c:type="gchar**">
6209               <type name="utf8"/>
6210             </array>
6211           </parameter>
6212         </parameters>
6213       </method>
6214       <method name="get_object"
6215               c:identifier="gtk_builder_get_object"
6216               version="2.12">
6217         <doc xml:whitespace="preserve">Gets the object named @name. Note that this function does not
6218 increment the reference count of the returned object. 
6219 it could not be found in the object tree.</doc>
6220         <return-value transfer-ownership="none">
6221           <doc xml:whitespace="preserve">the object named @name or %NULL if</doc>
6222           <type name="GObject.Object" c:type="GObject*"/>
6223         </return-value>
6224         <parameters>
6225           <parameter name="name" transfer-ownership="none">
6226             <doc xml:whitespace="preserve">name of object to get</doc>
6227             <type name="utf8" c:type="gchar*"/>
6228           </parameter>
6229         </parameters>
6230       </method>
6231       <method name="get_objects"
6232               c:identifier="gtk_builder_get_objects"
6233               version="2.12">
6234         <doc xml:whitespace="preserve">Gets all objects that have been constructed by @builder. Note that 
6235 this function does not increment the reference counts of the returned
6236 objects.
6237 constructed by the #GtkBuilder instance. It should be freed by
6238 g_slist_free()</doc>
6239         <return-value transfer-ownership="container">
6240           <doc xml:whitespace="preserve">a newly-allocated #GSList containing all the objects</doc>
6241           <type name="GLib.SList" c:type="GSList*">
6242             <type name="GObject.Object"/>
6243           </type>
6244         </return-value>
6245       </method>
6246       <method name="connect_signals"
6247               c:identifier="gtk_builder_connect_signals"
6248               version="2.12">
6249         <doc xml:whitespace="preserve">This method is a simpler variation of gtk_builder_connect_signals_full().
6250 It uses #GModule's introspective features (by opening the module %NULL) 
6251 to look at the application's symbol table. From here it tries to match
6252 the signal handler names given in the interface description with
6253 symbols in the application and connects the signals.
6254 Note that this function will not work correctly if #GModule is not
6255 supported on the platform.
6256 When compiling applications for Windows, you must declare signal callbacks
6257 with #G_MODULE_EXPORT, or they will not be put in the symbol table.
6258 On Linux and Unices, this is not necessary; applications should instead
6259 be compiled with the -Wl,--export-dynamic CFLAGS, and linked against
6260 gmodule-export-2.0.</doc>
6261         <return-value transfer-ownership="none">
6262           <type name="none" c:type="void"/>
6263         </return-value>
6264         <parameters>
6265           <parameter name="user_data" transfer-ownership="none">
6266             <doc xml:whitespace="preserve">a pointer to a structure sent in as user data to all signals</doc>
6267             <type name="any" c:type="gpointer"/>
6268           </parameter>
6269         </parameters>
6270       </method>
6271       <method name="connect_signals_full"
6272               c:identifier="gtk_builder_connect_signals_full"
6273               version="2.12">
6274         <doc xml:whitespace="preserve">This function can be thought of the interpreted language binding
6275 version of gtk_builder_connect_signals(), except that it does not
6276 require GModule to function correctly.</doc>
6277         <return-value transfer-ownership="none">
6278           <type name="none" c:type="void"/>
6279         </return-value>
6280         <parameters>
6281           <parameter name="func"
6282                      transfer-ownership="none"
6283                      scope="call"
6284                      closure="2">
6285             <doc xml:whitespace="preserve">the function used to connect the signals</doc>
6286             <type name="BuilderConnectFunc" c:type="GtkBuilderConnectFunc"/>
6287           </parameter>
6288           <parameter name="user_data" transfer-ownership="none">
6289             <doc xml:whitespace="preserve">arbitrary data that will be passed to the connection function</doc>
6290             <type name="any" c:type="gpointer"/>
6291           </parameter>
6292         </parameters>
6293       </method>
6294       <method name="set_translation_domain"
6295               c:identifier="gtk_builder_set_translation_domain"
6296               version="2.12">
6297         <doc xml:whitespace="preserve">Sets the translation domain of @builder. 
6298 See #GtkBuilder:translation-domain.</doc>
6299         <return-value transfer-ownership="none">
6300           <type name="none" c:type="void"/>
6301         </return-value>
6302         <parameters>
6303           <parameter name="domain" transfer-ownership="none" allow-none="1">
6304             <doc xml:whitespace="preserve">the translation domain or %NULL</doc>
6305             <type name="utf8" c:type="gchar*"/>
6306           </parameter>
6307         </parameters>
6308       </method>
6309       <method name="get_translation_domain"
6310               c:identifier="gtk_builder_get_translation_domain"
6311               version="2.12">
6312         <doc xml:whitespace="preserve">Gets the translation domain of @builder.
6313 by the builder object and must not be modified or freed.</doc>
6314         <return-value transfer-ownership="none">
6315           <doc xml:whitespace="preserve">the translation domain. This string is owned</doc>
6316           <type name="utf8" c:type="gchar*"/>
6317         </return-value>
6318       </method>
6319       <method name="get_type_from_name"
6320               c:identifier="gtk_builder_get_type_from_name"
6321               version="2.12">
6322         <doc xml:whitespace="preserve">Looks up a type by name, using the virtual function that 
6323 #GtkBuilder has for that purpose. This is mainly used when
6324 implementing the #GtkBuildable interface on a type.
6325 if no type was found</doc>
6326         <return-value transfer-ownership="none">
6327           <doc xml:whitespace="preserve">the #GType found for @type_name or #G_TYPE_INVALID</doc>
6328           <type name="GType" c:type="GType"/>
6329         </return-value>
6330         <parameters>
6331           <parameter name="type_name" transfer-ownership="none">
6332             <doc xml:whitespace="preserve">type name to lookup</doc>
6333             <type name="utf8" c:type="char*"/>
6334           </parameter>
6335         </parameters>
6336       </method>
6337       <method name="value_from_string"
6338               c:identifier="gtk_builder_value_from_string"
6339               version="2.12"
6340               throws="1">
6341         <doc xml:whitespace="preserve">This function demarshals a value from a string. This function
6342 calls g_value_init() on the @value argument, so it need not be
6343 initialised beforehand.
6344 This function can handle char, uchar, boolean, int, uint, long,
6345 ulong, enum, flags, float, double, string, #GdkColor and
6346 #GtkAdjustment type values. Support for #GtkWidget type values is
6347 still to come.
6348 Upon errors %FALSE will be returned and @error will be assigned a
6349 #GError from the #GTK_BUILDER_ERROR domain.</doc>
6350         <return-value transfer-ownership="none">
6351           <doc xml:whitespace="preserve">%TRUE on success</doc>
6352           <type name="boolean" c:type="gboolean"/>
6353         </return-value>
6354         <parameters>
6355           <parameter name="pspec" transfer-ownership="none">
6356             <doc xml:whitespace="preserve">the #GParamSpec for the property</doc>
6357             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
6358           </parameter>
6359           <parameter name="string" transfer-ownership="none">
6360             <doc xml:whitespace="preserve">the string representation of the value</doc>
6361             <type name="utf8" c:type="gchar*"/>
6362           </parameter>
6363           <parameter name="value" transfer-ownership="none">
6364             <doc xml:whitespace="preserve">the #GValue to store the result in</doc>
6365             <type name="GObject.Value" c:type="GValue*"/>
6366           </parameter>
6367         </parameters>
6368       </method>
6369       <method name="value_from_string_type"
6370               c:identifier="gtk_builder_value_from_string_type"
6371               version="2.12"
6372               throws="1">
6373         <doc xml:whitespace="preserve">Like gtk_builder_value_from_string(), this function demarshals 
6374 a value from a string, but takes a #GType instead of #GParamSpec.
6375 This function calls g_value_init() on the @value argument, so it 
6376 need not be initialised beforehand.
6377 Upon errors %FALSE will be returned and @error will be assigned a
6378 #GError from the #GTK_BUILDER_ERROR domain.</doc>
6379         <return-value transfer-ownership="none">
6380           <doc xml:whitespace="preserve">%TRUE on success</doc>
6381           <type name="boolean" c:type="gboolean"/>
6382         </return-value>
6383         <parameters>
6384           <parameter name="type" transfer-ownership="none">
6385             <doc xml:whitespace="preserve">the #GType of the value</doc>
6386             <type name="GType" c:type="GType"/>
6387           </parameter>
6388           <parameter name="string" transfer-ownership="none">
6389             <doc xml:whitespace="preserve">the string representation of the value</doc>
6390             <type name="utf8" c:type="gchar*"/>
6391           </parameter>
6392           <parameter name="value" transfer-ownership="none">
6393             <doc xml:whitespace="preserve">the #GValue to store the result in</doc>
6394             <type name="GObject.Value" c:type="GValue*"/>
6395           </parameter>
6396         </parameters>
6397       </method>
6398       <property name="translation-domain"
6399                 writable="1"
6400                 transfer-ownership="none">
6401         <type name="utf8" c:type="gchararray"/>
6402       </property>
6403       <field name="parent_instance">
6404         <type name="GObject.Object" c:type="GObject"/>
6405       </field>
6406       <field name="priv">
6407         <type name="BuilderPrivate" c:type="GtkBuilderPrivate*"/>
6408       </field>
6409     </class>
6410     <record name="BuilderClass"
6411             c:type="GtkBuilderClass"
6412             glib:is-gtype-struct-for="Builder">
6413       <field name="parent_class">
6414         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
6415       </field>
6416       <field name="get_type_from_name">
6417         <callback name="get_type_from_name" c:type="get_type_from_name">
6418           <return-value transfer-ownership="none">
6419             <doc xml:whitespace="preserve">the #GType found for @type_name or #G_TYPE_INVALID</doc>
6420             <type name="GType" c:type="GType"/>
6421           </return-value>
6422           <parameters>
6423             <parameter name="builder" transfer-ownership="none">
6424               <type name="Builder" c:type="GtkBuilder*"/>
6425             </parameter>
6426             <parameter name="type_name" transfer-ownership="none">
6427               <doc xml:whitespace="preserve">type name to lookup</doc>
6428               <type name="utf8" c:type="char*"/>
6429             </parameter>
6430           </parameters>
6431         </callback>
6432       </field>
6433       <field name="gtk_reserved1">
6434         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
6435           <return-value transfer-ownership="none">
6436             <type name="none" c:type="void"/>
6437           </return-value>
6438         </callback>
6439       </field>
6440       <field name="gtk_reserved2">
6441         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
6442           <return-value transfer-ownership="none">
6443             <type name="none" c:type="void"/>
6444           </return-value>
6445         </callback>
6446       </field>
6447       <field name="gtk_reserved3">
6448         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
6449           <return-value transfer-ownership="none">
6450             <type name="none" c:type="void"/>
6451           </return-value>
6452         </callback>
6453       </field>
6454       <field name="gtk_reserved4">
6455         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
6456           <return-value transfer-ownership="none">
6457             <type name="none" c:type="void"/>
6458           </return-value>
6459         </callback>
6460       </field>
6461       <field name="gtk_reserved5">
6462         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
6463           <return-value transfer-ownership="none">
6464             <type name="none" c:type="void"/>
6465           </return-value>
6466         </callback>
6467       </field>
6468       <field name="gtk_reserved6">
6469         <callback name="gtk_reserved6" c:type="_gtk_reserved6">
6470           <return-value transfer-ownership="none">
6471             <type name="none" c:type="void"/>
6472           </return-value>
6473         </callback>
6474       </field>
6475       <field name="gtk_reserved7">
6476         <callback name="gtk_reserved7" c:type="_gtk_reserved7">
6477           <return-value transfer-ownership="none">
6478             <type name="none" c:type="void"/>
6479           </return-value>
6480         </callback>
6481       </field>
6482       <field name="gtk_reserved8">
6483         <callback name="gtk_reserved8" c:type="_gtk_reserved8">
6484           <return-value transfer-ownership="none">
6485             <type name="none" c:type="void"/>
6486           </return-value>
6487         </callback>
6488       </field>
6489     </record>
6490     <callback name="BuilderConnectFunc"
6491               c:type="GtkBuilderConnectFunc"
6492               version="2.12">
6493       <doc xml:whitespace="preserve">This is the signature of a function used to connect signals.  It is used
6494 by the gtk_builder_connect_signals() and gtk_builder_connect_signals_full()
6495 methods.  It is mainly intended for interpreted language bindings, but
6496 could be useful where the programmer wants more control over the signal
6497 connection process.</doc>
6498       <return-value transfer-ownership="none">
6499         <type name="none" c:type="void"/>
6500       </return-value>
6501       <parameters>
6502         <parameter name="builder" transfer-ownership="none">
6503           <doc xml:whitespace="preserve">a #GtkBuilder</doc>
6504           <type name="Builder" c:type="GtkBuilder*"/>
6505         </parameter>
6506         <parameter name="object" transfer-ownership="none">
6507           <doc xml:whitespace="preserve">object to connect a signal to</doc>
6508           <type name="GObject.Object" c:type="GObject*"/>
6509         </parameter>
6510         <parameter name="signal_name" transfer-ownership="none">
6511           <doc xml:whitespace="preserve">name of the signal</doc>
6512           <type name="utf8" c:type="gchar*"/>
6513         </parameter>
6514         <parameter name="handler_name" transfer-ownership="none">
6515           <doc xml:whitespace="preserve">name of the handler</doc>
6516           <type name="utf8" c:type="gchar*"/>
6517         </parameter>
6518         <parameter name="connect_object" transfer-ownership="none">
6519           <doc xml:whitespace="preserve">a #GObject, if non-%NULL, use g_signal_connect_object()</doc>
6520           <type name="GObject.Object" c:type="GObject*"/>
6521         </parameter>
6522         <parameter name="flags" transfer-ownership="none">
6523           <doc xml:whitespace="preserve">#GConnectFlags to use</doc>
6524           <type name="GObject.ConnectFlags" c:type="GConnectFlags"/>
6525         </parameter>
6526         <parameter name="user_data" transfer-ownership="none" closure="6">
6527           <doc xml:whitespace="preserve">user data</doc>
6528           <type name="any" c:type="gpointer"/>
6529         </parameter>
6530       </parameters>
6531     </callback>
6532     <enumeration name="BuilderError"
6533                  glib:type-name="GtkBuilderError"
6534                  glib:get-type="gtk_builder_error_get_type"
6535                  c:type="GtkBuilderError"
6536                  glib:error-quark="gtk_builder_error_quark">
6537       <member name="invalid_type_function"
6538               value="0"
6539               c:identifier="GTK_BUILDER_ERROR_INVALID_TYPE_FUNCTION"
6540               glib:nick="invalid-type-function"/>
6541       <member name="unhandled_tag"
6542               value="1"
6543               c:identifier="GTK_BUILDER_ERROR_UNHANDLED_TAG"
6544               glib:nick="unhandled-tag"/>
6545       <member name="missing_attribute"
6546               value="2"
6547               c:identifier="GTK_BUILDER_ERROR_MISSING_ATTRIBUTE"
6548               glib:nick="missing-attribute"/>
6549       <member name="invalid_attribute"
6550               value="3"
6551               c:identifier="GTK_BUILDER_ERROR_INVALID_ATTRIBUTE"
6552               glib:nick="invalid-attribute"/>
6553       <member name="invalid_tag"
6554               value="4"
6555               c:identifier="GTK_BUILDER_ERROR_INVALID_TAG"
6556               glib:nick="invalid-tag"/>
6557       <member name="missing_property_value"
6558               value="5"
6559               c:identifier="GTK_BUILDER_ERROR_MISSING_PROPERTY_VALUE"
6560               glib:nick="missing-property-value"/>
6561       <member name="invalid_value"
6562               value="6"
6563               c:identifier="GTK_BUILDER_ERROR_INVALID_VALUE"
6564               glib:nick="invalid-value"/>
6565       <member name="version_mismatch"
6566               value="7"
6567               c:identifier="GTK_BUILDER_ERROR_VERSION_MISMATCH"
6568               glib:nick="version-mismatch"/>
6569       <member name="duplicate_id"
6570               value="8"
6571               c:identifier="GTK_BUILDER_ERROR_DUPLICATE_ID"
6572               glib:nick="duplicate-id"/>
6573     </enumeration>
6574     <record name="BuilderPrivate" c:type="GtkBuilderPrivate">
6575     </record>
6576     <class name="Button"
6577            c:type="GtkButton"
6578            parent="Bin"
6579            glib:type-name="GtkButton"
6580            glib:get-type="gtk_button_get_type"
6581            glib:type-struct="ButtonClass">
6582       <implements name="Activatable"/>
6583       <implements name="Atk.ImplementorIface"/>
6584       <implements name="Buildable"/>
6585       <constructor name="new" c:identifier="gtk_button_new">
6586         <return-value transfer-ownership="full">
6587           <type name="Button" c:type="GtkWidget*"/>
6588         </return-value>
6589       </constructor>
6590       <constructor name="new_with_label"
6591                    c:identifier="gtk_button_new_with_label">
6592         <return-value transfer-ownership="full">
6593           <type name="Button" c:type="GtkWidget*"/>
6594         </return-value>
6595         <parameters>
6596           <parameter name="label" transfer-ownership="none">
6597             <type name="utf8" c:type="gchar*"/>
6598           </parameter>
6599         </parameters>
6600       </constructor>
6601       <constructor name="new_from_stock"
6602                    c:identifier="gtk_button_new_from_stock">
6603         <doc xml:whitespace="preserve">Creates a new #GtkButton containing the image and text from a stock item.
6604 Some stock ids have preprocessor macros like #GTK_STOCK_OK and
6605 #GTK_STOCK_APPLY.
6606 If @stock_id is unknown, then it will be treated as a mnemonic
6607 label (as for gtk_button_new_with_mnemonic()).</doc>
6608         <return-value transfer-ownership="full">
6609           <doc xml:whitespace="preserve">a new #GtkButton</doc>
6610           <type name="Button" c:type="GtkWidget*"/>
6611         </return-value>
6612         <parameters>
6613           <parameter name="stock_id" transfer-ownership="none">
6614             <doc xml:whitespace="preserve">the name of the stock item</doc>
6615             <type name="utf8" c:type="gchar*"/>
6616           </parameter>
6617         </parameters>
6618       </constructor>
6619       <constructor name="new_with_mnemonic"
6620                    c:identifier="gtk_button_new_with_mnemonic">
6621         <doc xml:whitespace="preserve">Creates a new #GtkButton containing a label.
6622 If characters in @label are preceded by an underscore, they are underlined.
6623 If you need a literal underscore character in a label, use '__' (two 
6624 underscores). The first underlined character represents a keyboard 
6625 accelerator called a mnemonic.
6626 Pressing Alt and that key activates the button.</doc>
6627         <return-value transfer-ownership="full">
6628           <doc xml:whitespace="preserve">a new #GtkButton</doc>
6629           <type name="Button" c:type="GtkWidget*"/>
6630         </return-value>
6631         <parameters>
6632           <parameter name="label" transfer-ownership="none">
6633             <doc xml:whitespace="preserve">The text of the button, with an underscore in front of the mnemonic character</doc>
6634             <type name="utf8" c:type="gchar*"/>
6635           </parameter>
6636         </parameters>
6637       </constructor>
6638       <method name="pressed" c:identifier="gtk_button_pressed">
6639         <return-value transfer-ownership="none">
6640           <type name="none" c:type="void"/>
6641         </return-value>
6642       </method>
6643       <method name="released" c:identifier="gtk_button_released">
6644         <return-value transfer-ownership="none">
6645           <type name="none" c:type="void"/>
6646         </return-value>
6647       </method>
6648       <method name="clicked" c:identifier="gtk_button_clicked">
6649         <return-value transfer-ownership="none">
6650           <type name="none" c:type="void"/>
6651         </return-value>
6652       </method>
6653       <method name="enter" c:identifier="gtk_button_enter">
6654         <return-value transfer-ownership="none">
6655           <type name="none" c:type="void"/>
6656         </return-value>
6657       </method>
6658       <method name="leave" c:identifier="gtk_button_leave">
6659         <return-value transfer-ownership="none">
6660           <type name="none" c:type="void"/>
6661         </return-value>
6662       </method>
6663       <method name="set_relief" c:identifier="gtk_button_set_relief">
6664         <return-value transfer-ownership="none">
6665           <type name="none" c:type="void"/>
6666         </return-value>
6667         <parameters>
6668           <parameter name="newstyle" transfer-ownership="none">
6669             <type name="ReliefStyle" c:type="GtkReliefStyle"/>
6670           </parameter>
6671         </parameters>
6672       </method>
6673       <method name="get_relief" c:identifier="gtk_button_get_relief">
6674         <return-value transfer-ownership="full">
6675           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
6676         </return-value>
6677       </method>
6678       <method name="set_label" c:identifier="gtk_button_set_label">
6679         <doc xml:whitespace="preserve">Sets the text of the label of the button to @str. This text is
6680 also used to select the stock item if gtk_button_set_use_stock()
6681 is used.
6682 This will also clear any previously set labels.</doc>
6683         <return-value transfer-ownership="none">
6684           <type name="none" c:type="void"/>
6685         </return-value>
6686         <parameters>
6687           <parameter name="label" transfer-ownership="none">
6688             <doc xml:whitespace="preserve">a string</doc>
6689             <type name="utf8" c:type="gchar*"/>
6690           </parameter>
6691         </parameters>
6692       </method>
6693       <method name="get_label" c:identifier="gtk_button_get_label">
6694         <doc xml:whitespace="preserve">Fetches the text from the label of the button, as set by
6695 gtk_button_set_label(). If the label text has not 
6696 been set the return value will be %NULL. This will be the 
6697 case if you create an empty button with gtk_button_new() to 
6698 use as a container.
6699 by the widget and must not be modified or freed.</doc>
6700         <return-value transfer-ownership="none">
6701           <doc xml:whitespace="preserve">The text of the label widget. This string is owned</doc>
6702           <type name="utf8" c:type="gchar*"/>
6703         </return-value>
6704       </method>
6705       <method name="set_use_underline"
6706               c:identifier="gtk_button_set_use_underline">
6707         <doc xml:whitespace="preserve">If true, an underline in the text of the button label indicates
6708 the next character should be used for the mnemonic accelerator key.</doc>
6709         <return-value transfer-ownership="none">
6710           <type name="none" c:type="void"/>
6711         </return-value>
6712         <parameters>
6713           <parameter name="use_underline" transfer-ownership="none">
6714             <doc xml:whitespace="preserve">%TRUE if underlines in the text indicate mnemonics</doc>
6715             <type name="boolean" c:type="gboolean"/>
6716           </parameter>
6717         </parameters>
6718       </method>
6719       <method name="get_use_underline"
6720               c:identifier="gtk_button_get_use_underline">
6721         <doc xml:whitespace="preserve">Returns whether an embedded underline in the button label indicates a
6722 mnemonic. See gtk_button_set_use_underline ().
6723 indicates the mnemonic accelerator keys.</doc>
6724         <return-value transfer-ownership="none">
6725           <doc xml:whitespace="preserve">%TRUE if an embedded underline in the button label</doc>
6726           <type name="boolean" c:type="gboolean"/>
6727         </return-value>
6728       </method>
6729       <method name="set_use_stock" c:identifier="gtk_button_set_use_stock">
6730         <doc xml:whitespace="preserve">If %TRUE, the label set on the button is used as a
6731 stock id to select the stock item for the button.</doc>
6732         <return-value transfer-ownership="none">
6733           <type name="none" c:type="void"/>
6734         </return-value>
6735         <parameters>
6736           <parameter name="use_stock" transfer-ownership="none">
6737             <doc xml:whitespace="preserve">%TRUE if the button should use a stock item</doc>
6738             <type name="boolean" c:type="gboolean"/>
6739           </parameter>
6740         </parameters>
6741       </method>
6742       <method name="get_use_stock" c:identifier="gtk_button_get_use_stock">
6743         <doc xml:whitespace="preserve">Returns whether the button label is a stock item.
6744 select a stock item instead of being
6745 used directly as the label text.</doc>
6746         <return-value transfer-ownership="none">
6747           <doc xml:whitespace="preserve">%TRUE if the button label is used to</doc>
6748           <type name="boolean" c:type="gboolean"/>
6749         </return-value>
6750       </method>
6751       <method name="set_focus_on_click"
6752               c:identifier="gtk_button_set_focus_on_click"
6753               version="2.4">
6754         <doc xml:whitespace="preserve">Sets whether the button will grab focus when it is clicked with the mouse.
6755 Making mouse clicks not grab focus is useful in places like toolbars where
6756 you don't want the keyboard focus removed from the main area of the
6757 application.</doc>
6758         <return-value transfer-ownership="none">
6759           <type name="none" c:type="void"/>
6760         </return-value>
6761         <parameters>
6762           <parameter name="focus_on_click" transfer-ownership="none">
6763             <doc xml:whitespace="preserve">whether the button grabs focus when clicked with the mouse</doc>
6764             <type name="boolean" c:type="gboolean"/>
6765           </parameter>
6766         </parameters>
6767       </method>
6768       <method name="get_focus_on_click"
6769               c:identifier="gtk_button_get_focus_on_click"
6770               version="2.4">
6771         <doc xml:whitespace="preserve">Returns whether the button grabs focus when it is clicked with the mouse.
6772 See gtk_button_set_focus_on_click().
6773 the mouse.</doc>
6774         <return-value transfer-ownership="none">
6775           <doc xml:whitespace="preserve">%TRUE if the button grabs focus when it is clicked with</doc>
6776           <type name="boolean" c:type="gboolean"/>
6777         </return-value>
6778       </method>
6779       <method name="set_alignment"
6780               c:identifier="gtk_button_set_alignment"
6781               version="2.4">
6782         <doc xml:whitespace="preserve">Sets the alignment of the child. This property has no effect unless 
6783 the child is a #GtkMisc or a #GtkAligment.</doc>
6784         <return-value transfer-ownership="none">
6785           <type name="none" c:type="void"/>
6786         </return-value>
6787         <parameters>
6788           <parameter name="xalign" transfer-ownership="none">
6789             <doc xml:whitespace="preserve">the horizontal position of the child, 0.0 is left aligned, 1.0 is right aligned</doc>
6790             <type name="float" c:type="gfloat"/>
6791           </parameter>
6792           <parameter name="yalign" transfer-ownership="none">
6793             <doc xml:whitespace="preserve">the vertical position of the child, 0.0 is top aligned, 1.0 is bottom aligned</doc>
6794             <type name="float" c:type="gfloat"/>
6795           </parameter>
6796         </parameters>
6797       </method>
6798       <method name="get_alignment"
6799               c:identifier="gtk_button_get_alignment"
6800               version="2.4">
6801         <doc xml:whitespace="preserve">Gets the alignment of the child in the button.</doc>
6802         <return-value transfer-ownership="none">
6803           <type name="none" c:type="void"/>
6804         </return-value>
6805         <parameters>
6806           <parameter name="xalign"
6807                      direction="out"
6808                      caller-allocates="0"
6809                      transfer-ownership="full">
6810             <doc xml:whitespace="preserve">return location for horizontal alignment</doc>
6811             <type name="float" c:type="gfloat*"/>
6812           </parameter>
6813           <parameter name="yalign"
6814                      direction="out"
6815                      caller-allocates="0"
6816                      transfer-ownership="full">
6817             <doc xml:whitespace="preserve">return location for vertical alignment</doc>
6818             <type name="float" c:type="gfloat*"/>
6819           </parameter>
6820         </parameters>
6821       </method>
6822       <method name="set_image"
6823               c:identifier="gtk_button_set_image"
6824               version="2.6">
6825         <doc xml:whitespace="preserve">Set the image of @button to the given widget. Note that
6826 it depends on the #GtkSettings:gtk-button-images setting whether the
6827 image will be displayed or not, you don't have to call
6828 gtk_widget_show() on @image yourself.</doc>
6829         <return-value transfer-ownership="none">
6830           <type name="none" c:type="void"/>
6831         </return-value>
6832         <parameters>
6833           <parameter name="image" transfer-ownership="none">
6834             <doc xml:whitespace="preserve">a widget to set as the image for the button</doc>
6835             <type name="Widget" c:type="GtkWidget*"/>
6836           </parameter>
6837         </parameters>
6838       </method>
6839       <method name="get_image"
6840               c:identifier="gtk_button_get_image"
6841               version="2.6">
6842         <doc xml:whitespace="preserve">Gets the widget that is currenty set as the image of @button.
6843 This may have been explicitly set by gtk_button_set_image()
6844 or constructed by gtk_button_new_from_stock().</doc>
6845         <return-value transfer-ownership="full">
6846           <doc xml:whitespace="preserve">a #GtkWidget or %NULL in case there is no image</doc>
6847           <type name="Widget" c:type="GtkWidget*"/>
6848         </return-value>
6849       </method>
6850       <method name="set_image_position"
6851               c:identifier="gtk_button_set_image_position"
6852               version="2.10">
6853         <doc xml:whitespace="preserve">Sets the position of the image relative to the text 
6854 inside the button.</doc>
6855         <return-value transfer-ownership="none">
6856           <type name="none" c:type="void"/>
6857         </return-value>
6858         <parameters>
6859           <parameter name="position" transfer-ownership="none">
6860             <doc xml:whitespace="preserve">the position</doc>
6861             <type name="PositionType" c:type="GtkPositionType"/>
6862           </parameter>
6863         </parameters>
6864       </method>
6865       <method name="get_image_position"
6866               c:identifier="gtk_button_get_image_position"
6867               version="2.10">
6868         <doc xml:whitespace="preserve">Gets the position of the image relative to the text 
6869 inside the button.</doc>
6870         <return-value transfer-ownership="full">
6871           <doc xml:whitespace="preserve">the position</doc>
6872           <type name="PositionType" c:type="GtkPositionType"/>
6873         </return-value>
6874       </method>
6875       <property name="focus-on-click" writable="1" transfer-ownership="none">
6876         <type name="boolean" c:type="gboolean"/>
6877       </property>
6878       <property name="image" writable="1" transfer-ownership="none">
6879         <type name="Widget" c:type="GtkWidget"/>
6880       </property>
6881       <property name="image-position"
6882                 version="2.10"
6883                 writable="1"
6884                 transfer-ownership="none">
6885         <doc xml:whitespace="preserve">The position of the image relative to the text inside the button.</doc>
6886         <type name="PositionType" c:type="GtkPositionType"/>
6887       </property>
6888       <property name="label"
6889                 writable="1"
6890                 construct="1"
6891                 transfer-ownership="none">
6892         <type name="utf8" c:type="gchararray"/>
6893       </property>
6894       <property name="relief" writable="1" transfer-ownership="none">
6895         <type name="ReliefStyle" c:type="GtkReliefStyle"/>
6896       </property>
6897       <property name="use-stock"
6898                 writable="1"
6899                 construct="1"
6900                 transfer-ownership="none">
6901         <type name="boolean" c:type="gboolean"/>
6902       </property>
6903       <property name="use-underline"
6904                 writable="1"
6905                 construct="1"
6906                 transfer-ownership="none">
6907         <type name="boolean" c:type="gboolean"/>
6908       </property>
6909       <property name="xalign"
6910                 version="2.4"
6911                 writable="1"
6912                 transfer-ownership="none">
6913         <doc xml:whitespace="preserve">If the child of the button is a #GtkMisc or #GtkAlignment, this property 
6914 can be used to control it's horizontal alignment. 0.0 is left aligned, 
6915 1.0 is right aligned.</doc>
6916         <type name="float" c:type="gfloat"/>
6917       </property>
6918       <property name="yalign"
6919                 version="2.4"
6920                 writable="1"
6921                 transfer-ownership="none">
6922         <doc xml:whitespace="preserve">If the child of the button is a #GtkMisc or #GtkAlignment, this property 
6923 can be used to control it's vertical alignment. 0.0 is top aligned, 
6924 1.0 is bottom aligned.</doc>
6925         <type name="float" c:type="gfloat"/>
6926       </property>
6927       <field name="bin">
6928         <type name="Bin" c:type="GtkBin"/>
6929       </field>
6930       <field name="event_window">
6931         <type name="Gdk.Window" c:type="GdkWindow*"/>
6932       </field>
6933       <field name="label_text">
6934         <type name="utf8" c:type="gchar*"/>
6935       </field>
6936       <field name="activate_timeout">
6937         <type name="uint" c:type="guint"/>
6938       </field>
6939       <field name="constructed" bits="1">
6940         <type name="uint" c:type="guint"/>
6941       </field>
6942       <field name="in_button" bits="1">
6943         <type name="uint" c:type="guint"/>
6944       </field>
6945       <field name="button_down" bits="1">
6946         <type name="uint" c:type="guint"/>
6947       </field>
6948       <field name="relief" bits="2">
6949         <type name="uint" c:type="guint"/>
6950       </field>
6951       <field name="use_underline" bits="1">
6952         <type name="uint" c:type="guint"/>
6953       </field>
6954       <field name="use_stock" bits="1">
6955         <type name="uint" c:type="guint"/>
6956       </field>
6957       <field name="depressed" bits="1">
6958         <type name="uint" c:type="guint"/>
6959       </field>
6960       <field name="depress_on_activate" bits="1">
6961         <type name="uint" c:type="guint"/>
6962       </field>
6963       <field name="focus_on_click" bits="1">
6964         <type name="uint" c:type="guint"/>
6965       </field>
6966       <glib:signal name="activate">
6967         <doc xml:whitespace="preserve">The ::activate signal on GtkButton is an action signal and
6968 emitting it causes the button to animate press then release. 
6969 Applications should never connect to this signal, but use the
6970 #GtkButton::clicked signal.</doc>
6971         <return-value transfer-ownership="full">
6972           <type name="none" c:type="void"/>
6973         </return-value>
6974       </glib:signal>
6975       <glib:signal name="clicked">
6976         <doc xml:whitespace="preserve">Emitted when the button has been activated (pressed and released).</doc>
6977         <return-value transfer-ownership="full">
6978           <type name="none" c:type="void"/>
6979         </return-value>
6980       </glib:signal>
6981       <glib:signal name="enter"
6982                    deprecated="Use the #GtkWidget::enter-notify-event signal."
6983                    deprecated-version="2.8">
6984         <doc xml:whitespace="preserve">Emitted when the pointer enters the button.</doc>
6985         <return-value transfer-ownership="full">
6986           <type name="none" c:type="void"/>
6987         </return-value>
6988       </glib:signal>
6989       <glib:signal name="leave"
6990                    deprecated="Use the #GtkWidget::leave-notify-event signal."
6991                    deprecated-version="2.8">
6992         <doc xml:whitespace="preserve">Emitted when the pointer leaves the button.</doc>
6993         <return-value transfer-ownership="full">
6994           <type name="none" c:type="void"/>
6995         </return-value>
6996       </glib:signal>
6997       <glib:signal name="pressed"
6998                    deprecated="Use the #GtkWidget::button-press-event signal."
6999                    deprecated-version="2.8">
7000         <doc xml:whitespace="preserve">Emitted when the button is pressed.</doc>
7001         <return-value transfer-ownership="full">
7002           <type name="none" c:type="void"/>
7003         </return-value>
7004       </glib:signal>
7005       <glib:signal name="released"
7006                    deprecated="Use the #GtkWidget::button-release-event signal."
7007                    deprecated-version="2.8">
7008         <doc xml:whitespace="preserve">Emitted when the button is released.</doc>
7009         <return-value transfer-ownership="full">
7010           <type name="none" c:type="void"/>
7011         </return-value>
7012       </glib:signal>
7013     </class>
7014     <bitfield name="ButtonAction"
7015               glib:type-name="GtkButtonAction"
7016               glib:get-type="gtk_button_action_get_type"
7017               c:type="GtkButtonAction">
7018       <member name="ignored"
7019               value="0"
7020               c:identifier="GTK_BUTTON_IGNORED"
7021               glib:nick="ignored"/>
7022       <member name="selects"
7023               value="1"
7024               c:identifier="GTK_BUTTON_SELECTS"
7025               glib:nick="selects"/>
7026       <member name="drags"
7027               value="2"
7028               c:identifier="GTK_BUTTON_DRAGS"
7029               glib:nick="drags"/>
7030       <member name="expands"
7031               value="4"
7032               c:identifier="GTK_BUTTON_EXPANDS"
7033               glib:nick="expands"/>
7034     </bitfield>
7035     <class name="ButtonBox"
7036            c:type="GtkButtonBox"
7037            parent="Box"
7038            abstract="1"
7039            glib:type-name="GtkButtonBox"
7040            glib:get-type="gtk_button_box_get_type"
7041            glib:type-struct="ButtonBoxClass">
7042       <implements name="Atk.ImplementorIface"/>
7043       <implements name="Buildable"/>
7044       <implements name="Orientable"/>
7045       <method name="get_layout" c:identifier="gtk_button_box_get_layout">
7046         <return-value transfer-ownership="full">
7047           <type name="ButtonBoxStyle" c:type="GtkButtonBoxStyle"/>
7048         </return-value>
7049       </method>
7050       <method name="set_layout" c:identifier="gtk_button_box_set_layout">
7051         <return-value transfer-ownership="none">
7052           <type name="none" c:type="void"/>
7053         </return-value>
7054         <parameters>
7055           <parameter name="layout_style" transfer-ownership="none">
7056             <type name="ButtonBoxStyle" c:type="GtkButtonBoxStyle"/>
7057           </parameter>
7058         </parameters>
7059       </method>
7060       <method name="get_child_secondary"
7061               c:identifier="gtk_button_box_get_child_secondary"
7062               version="2.4">
7063         <doc xml:whitespace="preserve">Returns whether @child should appear in a secondary group of children.</doc>
7064         <return-value transfer-ownership="none">
7065           <doc xml:whitespace="preserve">whether @child should appear in a secondary group of children.</doc>
7066           <type name="boolean" c:type="gboolean"/>
7067         </return-value>
7068         <parameters>
7069           <parameter name="child" transfer-ownership="none">
7070             <doc xml:whitespace="preserve">a child of @widget</doc>
7071             <type name="Widget" c:type="GtkWidget*"/>
7072           </parameter>
7073         </parameters>
7074       </method>
7075       <method name="set_child_secondary"
7076               c:identifier="gtk_button_box_set_child_secondary">
7077         <return-value transfer-ownership="none">
7078           <type name="none" c:type="void"/>
7079         </return-value>
7080         <parameters>
7081           <parameter name="child" transfer-ownership="none">
7082             <type name="Widget" c:type="GtkWidget*"/>
7083           </parameter>
7084           <parameter name="is_secondary" transfer-ownership="none">
7085             <type name="boolean" c:type="gboolean"/>
7086           </parameter>
7087         </parameters>
7088       </method>
7089       <method name="set_child_size"
7090               c:identifier="gtk_button_box_set_child_size">
7091         <return-value transfer-ownership="none">
7092           <type name="none" c:type="void"/>
7093         </return-value>
7094         <parameters>
7095           <parameter name="min_width" transfer-ownership="none">
7096             <type name="int" c:type="gint"/>
7097           </parameter>
7098           <parameter name="min_height" transfer-ownership="none">
7099             <type name="int" c:type="gint"/>
7100           </parameter>
7101         </parameters>
7102       </method>
7103       <method name="set_child_ipadding"
7104               c:identifier="gtk_button_box_set_child_ipadding">
7105         <return-value transfer-ownership="none">
7106           <type name="none" c:type="void"/>
7107         </return-value>
7108         <parameters>
7109           <parameter name="ipad_x" transfer-ownership="none">
7110             <type name="int" c:type="gint"/>
7111           </parameter>
7112           <parameter name="ipad_y" transfer-ownership="none">
7113             <type name="int" c:type="gint"/>
7114           </parameter>
7115         </parameters>
7116       </method>
7117       <method name="get_child_size"
7118               c:identifier="gtk_button_box_get_child_size">
7119         <return-value transfer-ownership="none">
7120           <type name="none" c:type="void"/>
7121         </return-value>
7122         <parameters>
7123           <parameter name="min_width"
7124                      direction="out"
7125                      caller-allocates="0"
7126                      transfer-ownership="full">
7127             <type name="int" c:type="gint*"/>
7128           </parameter>
7129           <parameter name="min_height"
7130                      direction="out"
7131                      caller-allocates="0"
7132                      transfer-ownership="full">
7133             <type name="int" c:type="gint*"/>
7134           </parameter>
7135         </parameters>
7136       </method>
7137       <method name="get_child_ipadding"
7138               c:identifier="gtk_button_box_get_child_ipadding">
7139         <return-value transfer-ownership="none">
7140           <type name="none" c:type="void"/>
7141         </return-value>
7142         <parameters>
7143           <parameter name="ipad_x"
7144                      direction="out"
7145                      caller-allocates="0"
7146                      transfer-ownership="full">
7147             <type name="int" c:type="gint*"/>
7148           </parameter>
7149           <parameter name="ipad_y"
7150                      direction="out"
7151                      caller-allocates="0"
7152                      transfer-ownership="full">
7153             <type name="int" c:type="gint*"/>
7154           </parameter>
7155         </parameters>
7156       </method>
7157       <property name="layout-style" writable="1" transfer-ownership="none">
7158         <type name="ButtonBoxStyle" c:type="GtkButtonBoxStyle"/>
7159       </property>
7160       <field name="box">
7161         <type name="Box" c:type="GtkBox"/>
7162       </field>
7163       <field name="child_min_width">
7164         <type name="int" c:type="gint"/>
7165       </field>
7166       <field name="child_min_height">
7167         <type name="int" c:type="gint"/>
7168       </field>
7169       <field name="child_ipad_x">
7170         <type name="int" c:type="gint"/>
7171       </field>
7172       <field name="child_ipad_y">
7173         <type name="int" c:type="gint"/>
7174       </field>
7175       <field name="layout_style">
7176         <type name="ButtonBoxStyle" c:type="GtkButtonBoxStyle"/>
7177       </field>
7178     </class>
7179     <record name="ButtonBoxClass"
7180             c:type="GtkButtonBoxClass"
7181             glib:is-gtype-struct-for="ButtonBox">
7182       <field name="parent_class">
7183         <type name="BoxClass" c:type="GtkBoxClass"/>
7184       </field>
7185     </record>
7186     <enumeration name="ButtonBoxStyle"
7187                  glib:type-name="GtkButtonBoxStyle"
7188                  glib:get-type="gtk_button_box_style_get_type"
7189                  c:type="GtkButtonBoxStyle">
7190       <member name="default_style"
7191               value="0"
7192               c:identifier="GTK_BUTTONBOX_DEFAULT_STYLE"
7193               glib:nick="default-style"/>
7194       <member name="spread"
7195               value="1"
7196               c:identifier="GTK_BUTTONBOX_SPREAD"
7197               glib:nick="spread"/>
7198       <member name="edge"
7199               value="2"
7200               c:identifier="GTK_BUTTONBOX_EDGE"
7201               glib:nick="edge"/>
7202       <member name="start"
7203               value="3"
7204               c:identifier="GTK_BUTTONBOX_START"
7205               glib:nick="start"/>
7206       <member name="end"
7207               value="4"
7208               c:identifier="GTK_BUTTONBOX_END"
7209               glib:nick="end"/>
7210       <member name="center"
7211               value="5"
7212               c:identifier="GTK_BUTTONBOX_CENTER"
7213               glib:nick="center"/>
7214     </enumeration>
7215     <record name="ButtonClass"
7216             c:type="GtkButtonClass"
7217             glib:is-gtype-struct-for="Button">
7218       <field name="parent_class">
7219         <type name="BinClass" c:type="GtkBinClass"/>
7220       </field>
7221       <field name="pressed">
7222         <callback name="pressed" c:type="pressed">
7223           <return-value transfer-ownership="none">
7224             <type name="none" c:type="void"/>
7225           </return-value>
7226           <parameters>
7227             <parameter name="button" transfer-ownership="none">
7228               <type name="Button" c:type="GtkButton*"/>
7229             </parameter>
7230           </parameters>
7231         </callback>
7232       </field>
7233       <field name="released">
7234         <callback name="released" c:type="released">
7235           <return-value transfer-ownership="none">
7236             <type name="none" c:type="void"/>
7237           </return-value>
7238           <parameters>
7239             <parameter name="button" transfer-ownership="none">
7240               <type name="Button" c:type="GtkButton*"/>
7241             </parameter>
7242           </parameters>
7243         </callback>
7244       </field>
7245       <field name="clicked">
7246         <callback name="clicked" c:type="clicked">
7247           <return-value transfer-ownership="none">
7248             <type name="none" c:type="void"/>
7249           </return-value>
7250           <parameters>
7251             <parameter name="button" transfer-ownership="none">
7252               <type name="Button" c:type="GtkButton*"/>
7253             </parameter>
7254           </parameters>
7255         </callback>
7256       </field>
7257       <field name="enter">
7258         <callback name="enter" c:type="enter">
7259           <return-value transfer-ownership="none">
7260             <type name="none" c:type="void"/>
7261           </return-value>
7262           <parameters>
7263             <parameter name="button" transfer-ownership="none">
7264               <type name="Button" c:type="GtkButton*"/>
7265             </parameter>
7266           </parameters>
7267         </callback>
7268       </field>
7269       <field name="leave">
7270         <callback name="leave" c:type="leave">
7271           <return-value transfer-ownership="none">
7272             <type name="none" c:type="void"/>
7273           </return-value>
7274           <parameters>
7275             <parameter name="button" transfer-ownership="none">
7276               <type name="Button" c:type="GtkButton*"/>
7277             </parameter>
7278           </parameters>
7279         </callback>
7280       </field>
7281       <field name="activate">
7282         <callback name="activate" c:type="activate">
7283           <return-value transfer-ownership="none">
7284             <type name="none" c:type="void"/>
7285           </return-value>
7286           <parameters>
7287             <parameter name="button" transfer-ownership="none">
7288               <type name="Button" c:type="GtkButton*"/>
7289             </parameter>
7290           </parameters>
7291         </callback>
7292       </field>
7293       <field name="gtk_reserved1">
7294         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
7295           <return-value transfer-ownership="none">
7296             <type name="none" c:type="void"/>
7297           </return-value>
7298         </callback>
7299       </field>
7300       <field name="gtk_reserved2">
7301         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
7302           <return-value transfer-ownership="none">
7303             <type name="none" c:type="void"/>
7304           </return-value>
7305         </callback>
7306       </field>
7307       <field name="gtk_reserved3">
7308         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
7309           <return-value transfer-ownership="none">
7310             <type name="none" c:type="void"/>
7311           </return-value>
7312         </callback>
7313       </field>
7314       <field name="gtk_reserved4">
7315         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
7316           <return-value transfer-ownership="none">
7317             <type name="none" c:type="void"/>
7318           </return-value>
7319         </callback>
7320       </field>
7321     </record>
7322     <enumeration name="ButtonsType"
7323                  glib:type-name="GtkButtonsType"
7324                  glib:get-type="gtk_buttons_type_get_type"
7325                  c:type="GtkButtonsType">
7326       <doc xml:whitespace="preserve">Prebuilt sets of buttons for the dialog. If
7327 none of these choices are appropriate, simply use %GTK_BUTTONS_NONE
7328 then call gtk_dialog_add_buttons().
7329 &lt;note&gt;
7330 Please note that %GTK_BUTTONS_OK, %GTK_BUTTONS_YES_NO
7331 and %GTK_BUTTONS_OK_CANCEL are discouraged by the
7332 &lt;ulink url="http://library.gnome.org/devel/hig-book/stable/"&gt;GNOME HIG&lt;/ulink&gt;.
7333 &lt;/note&gt;</doc>
7334       <member name="none"
7335               value="0"
7336               c:identifier="GTK_BUTTONS_NONE"
7337               glib:nick="none"/>
7338       <member name="ok"
7339               value="1"
7340               c:identifier="GTK_BUTTONS_OK"
7341               glib:nick="ok"/>
7342       <member name="close"
7343               value="2"
7344               c:identifier="GTK_BUTTONS_CLOSE"
7345               glib:nick="close"/>
7346       <member name="cancel"
7347               value="3"
7348               c:identifier="GTK_BUTTONS_CANCEL"
7349               glib:nick="cancel"/>
7350       <member name="yes_no"
7351               value="4"
7352               c:identifier="GTK_BUTTONS_YES_NO"
7353               glib:nick="yes-no"/>
7354       <member name="ok_cancel"
7355               value="5"
7356               c:identifier="GTK_BUTTONS_OK_CANCEL"
7357               glib:nick="ok-cancel"/>
7358     </enumeration>
7359     <class name="CList"
7360            c:type="GtkCList"
7361            parent="Container"
7362            glib:type-name="GtkCList"
7363            glib:get-type="gtk_clist_get_type"
7364            glib:type-struct="CListClass">
7365       <implements name="Atk.ImplementorIface"/>
7366       <implements name="Buildable"/>
7367       <constructor name="new" c:identifier="gtk_clist_new">
7368         <return-value transfer-ownership="full">
7369           <type name="CList" c:type="GtkWidget*"/>
7370         </return-value>
7371         <parameters>
7372           <parameter name="columns" transfer-ownership="none">
7373             <type name="int" c:type="gint"/>
7374           </parameter>
7375         </parameters>
7376       </constructor>
7377       <constructor name="new_with_titles"
7378                    c:identifier="gtk_clist_new_with_titles">
7379         <return-value transfer-ownership="full">
7380           <type name="CList" c:type="GtkWidget*"/>
7381         </return-value>
7382         <parameters>
7383           <parameter name="columns" transfer-ownership="none">
7384             <type name="int" c:type="gint"/>
7385           </parameter>
7386           <parameter name="titles" transfer-ownership="full">
7387             <type name="utf8" c:type="gchar*"/>
7388           </parameter>
7389         </parameters>
7390       </constructor>
7391       <virtual-method name="refresh">
7392         <return-value transfer-ownership="none">
7393           <type name="none" c:type="void"/>
7394         </return-value>
7395       </virtual-method>
7396       <virtual-method name="resync_selection">
7397         <return-value transfer-ownership="none">
7398           <type name="none" c:type="void"/>
7399         </return-value>
7400         <parameters>
7401           <parameter name="event" transfer-ownership="none">
7402             <type name="Gdk.Event" c:type="GdkEvent*"/>
7403           </parameter>
7404         </parameters>
7405       </virtual-method>
7406       <virtual-method name="selection_find" introspectable="0">
7407         <return-value transfer-ownership="full">
7408           <type name="GLib.List" c:type="GList*">
7409             <type name="any" c:type="gpointer"/>
7410           </type>
7411         </return-value>
7412         <parameters>
7413           <parameter name="row_number" transfer-ownership="none">
7414             <type name="int" c:type="gint"/>
7415           </parameter>
7416           <parameter name="row_list_element" transfer-ownership="none">
7417             <type name="GLib.List" c:type="GList*">
7418               <type name="any" c:type="gpointer"/>
7419             </type>
7420           </parameter>
7421         </parameters>
7422       </virtual-method>
7423       <virtual-method name="draw_row">
7424         <return-value transfer-ownership="none">
7425           <type name="none" c:type="void"/>
7426         </return-value>
7427         <parameters>
7428           <parameter name="area" transfer-ownership="none">
7429             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
7430           </parameter>
7431           <parameter name="row" transfer-ownership="none">
7432             <type name="int" c:type="gint"/>
7433           </parameter>
7434           <parameter name="clist_row" transfer-ownership="none">
7435             <type name="CListRow" c:type="GtkCListRow*"/>
7436           </parameter>
7437         </parameters>
7438       </virtual-method>
7439       <virtual-method name="draw_drag_highlight">
7440         <return-value transfer-ownership="none">
7441           <type name="none" c:type="void"/>
7442         </return-value>
7443         <parameters>
7444           <parameter name="target_row" transfer-ownership="none">
7445             <type name="CListRow" c:type="GtkCListRow*"/>
7446           </parameter>
7447           <parameter name="target_row_number" transfer-ownership="none">
7448             <type name="int" c:type="gint"/>
7449           </parameter>
7450           <parameter name="drag_pos" transfer-ownership="none">
7451             <type name="CListDragPos" c:type="GtkCListDragPos"/>
7452           </parameter>
7453         </parameters>
7454       </virtual-method>
7455       <virtual-method name="clear" invoker="clear">
7456         <return-value transfer-ownership="none">
7457           <type name="none" c:type="void"/>
7458         </return-value>
7459       </virtual-method>
7460       <virtual-method name="fake_unselect_all">
7461         <return-value transfer-ownership="none">
7462           <type name="none" c:type="void"/>
7463         </return-value>
7464         <parameters>
7465           <parameter name="row" transfer-ownership="none">
7466             <type name="int" c:type="gint"/>
7467           </parameter>
7468         </parameters>
7469       </virtual-method>
7470       <virtual-method name="sort_list">
7471         <return-value transfer-ownership="none">
7472           <type name="none" c:type="void"/>
7473         </return-value>
7474       </virtual-method>
7475       <virtual-method name="insert_row">
7476         <return-value transfer-ownership="none">
7477           <type name="int" c:type="gint"/>
7478         </return-value>
7479         <parameters>
7480           <parameter name="row" transfer-ownership="none">
7481             <type name="int" c:type="gint"/>
7482           </parameter>
7483           <parameter name="text" transfer-ownership="full">
7484             <type name="utf8" c:type="gchar*"/>
7485           </parameter>
7486         </parameters>
7487       </virtual-method>
7488       <virtual-method name="remove_row">
7489         <return-value transfer-ownership="none">
7490           <type name="none" c:type="void"/>
7491         </return-value>
7492         <parameters>
7493           <parameter name="row" transfer-ownership="none">
7494             <type name="int" c:type="gint"/>
7495           </parameter>
7496         </parameters>
7497       </virtual-method>
7498       <virtual-method name="set_cell_contents">
7499         <return-value transfer-ownership="none">
7500           <type name="none" c:type="void"/>
7501         </return-value>
7502         <parameters>
7503           <parameter name="clist_row" transfer-ownership="none">
7504             <type name="CListRow" c:type="GtkCListRow*"/>
7505           </parameter>
7506           <parameter name="column" transfer-ownership="none">
7507             <type name="int" c:type="gint"/>
7508           </parameter>
7509           <parameter name="type" transfer-ownership="none">
7510             <type name="CellType" c:type="GtkCellType"/>
7511           </parameter>
7512           <parameter name="text" transfer-ownership="none">
7513             <type name="utf8" c:type="gchar*"/>
7514           </parameter>
7515           <parameter name="spacing" transfer-ownership="none">
7516             <type name="uint8" c:type="guint8"/>
7517           </parameter>
7518           <parameter name="pixmap" transfer-ownership="none">
7519             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
7520           </parameter>
7521           <parameter name="mask" transfer-ownership="none">
7522             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
7523           </parameter>
7524         </parameters>
7525       </virtual-method>
7526       <virtual-method name="cell_size_request">
7527         <return-value transfer-ownership="none">
7528           <type name="none" c:type="void"/>
7529         </return-value>
7530         <parameters>
7531           <parameter name="clist_row" transfer-ownership="none">
7532             <type name="CListRow" c:type="GtkCListRow*"/>
7533           </parameter>
7534           <parameter name="column" transfer-ownership="none">
7535             <type name="int" c:type="gint"/>
7536           </parameter>
7537           <parameter name="requisition" transfer-ownership="none">
7538             <type name="Requisition" c:type="GtkRequisition*"/>
7539           </parameter>
7540         </parameters>
7541       </virtual-method>
7542       <method name="set_hadjustment" c:identifier="gtk_clist_set_hadjustment">
7543         <return-value transfer-ownership="none">
7544           <type name="none" c:type="void"/>
7545         </return-value>
7546         <parameters>
7547           <parameter name="adjustment" transfer-ownership="none">
7548             <type name="Adjustment" c:type="GtkAdjustment*"/>
7549           </parameter>
7550         </parameters>
7551       </method>
7552       <method name="set_vadjustment" c:identifier="gtk_clist_set_vadjustment">
7553         <return-value transfer-ownership="none">
7554           <type name="none" c:type="void"/>
7555         </return-value>
7556         <parameters>
7557           <parameter name="adjustment" transfer-ownership="none">
7558             <type name="Adjustment" c:type="GtkAdjustment*"/>
7559           </parameter>
7560         </parameters>
7561       </method>
7562       <method name="get_hadjustment" c:identifier="gtk_clist_get_hadjustment">
7563         <return-value transfer-ownership="full">
7564           <type name="Adjustment" c:type="GtkAdjustment*"/>
7565         </return-value>
7566       </method>
7567       <method name="get_vadjustment" c:identifier="gtk_clist_get_vadjustment">
7568         <return-value transfer-ownership="full">
7569           <type name="Adjustment" c:type="GtkAdjustment*"/>
7570         </return-value>
7571       </method>
7572       <method name="set_shadow_type" c:identifier="gtk_clist_set_shadow_type">
7573         <return-value transfer-ownership="none">
7574           <type name="none" c:type="void"/>
7575         </return-value>
7576         <parameters>
7577           <parameter name="type" transfer-ownership="none">
7578             <type name="ShadowType" c:type="GtkShadowType"/>
7579           </parameter>
7580         </parameters>
7581       </method>
7582       <method name="set_selection_mode"
7583               c:identifier="gtk_clist_set_selection_mode">
7584         <return-value transfer-ownership="none">
7585           <type name="none" c:type="void"/>
7586         </return-value>
7587         <parameters>
7588           <parameter name="mode" transfer-ownership="none">
7589             <type name="SelectionMode" c:type="GtkSelectionMode"/>
7590           </parameter>
7591         </parameters>
7592       </method>
7593       <method name="set_reorderable" c:identifier="gtk_clist_set_reorderable">
7594         <return-value transfer-ownership="none">
7595           <type name="none" c:type="void"/>
7596         </return-value>
7597         <parameters>
7598           <parameter name="reorderable" transfer-ownership="none">
7599             <type name="boolean" c:type="gboolean"/>
7600           </parameter>
7601         </parameters>
7602       </method>
7603       <method name="set_use_drag_icons"
7604               c:identifier="gtk_clist_set_use_drag_icons">
7605         <return-value transfer-ownership="none">
7606           <type name="none" c:type="void"/>
7607         </return-value>
7608         <parameters>
7609           <parameter name="use_icons" transfer-ownership="none">
7610             <type name="boolean" c:type="gboolean"/>
7611           </parameter>
7612         </parameters>
7613       </method>
7614       <method name="set_button_actions"
7615               c:identifier="gtk_clist_set_button_actions">
7616         <return-value transfer-ownership="none">
7617           <type name="none" c:type="void"/>
7618         </return-value>
7619         <parameters>
7620           <parameter name="button" transfer-ownership="none">
7621             <type name="uint" c:type="guint"/>
7622           </parameter>
7623           <parameter name="button_actions" transfer-ownership="none">
7624             <type name="uint8" c:type="guint8"/>
7625           </parameter>
7626         </parameters>
7627       </method>
7628       <method name="freeze" c:identifier="gtk_clist_freeze">
7629         <return-value transfer-ownership="none">
7630           <type name="none" c:type="void"/>
7631         </return-value>
7632       </method>
7633       <method name="thaw" c:identifier="gtk_clist_thaw">
7634         <return-value transfer-ownership="none">
7635           <type name="none" c:type="void"/>
7636         </return-value>
7637       </method>
7638       <method name="column_titles_show"
7639               c:identifier="gtk_clist_column_titles_show">
7640         <return-value transfer-ownership="none">
7641           <type name="none" c:type="void"/>
7642         </return-value>
7643       </method>
7644       <method name="column_titles_hide"
7645               c:identifier="gtk_clist_column_titles_hide">
7646         <return-value transfer-ownership="none">
7647           <type name="none" c:type="void"/>
7648         </return-value>
7649       </method>
7650       <method name="column_title_active"
7651               c:identifier="gtk_clist_column_title_active">
7652         <return-value transfer-ownership="none">
7653           <type name="none" c:type="void"/>
7654         </return-value>
7655         <parameters>
7656           <parameter name="column" transfer-ownership="none">
7657             <type name="int" c:type="gint"/>
7658           </parameter>
7659         </parameters>
7660       </method>
7661       <method name="column_title_passive"
7662               c:identifier="gtk_clist_column_title_passive">
7663         <return-value transfer-ownership="none">
7664           <type name="none" c:type="void"/>
7665         </return-value>
7666         <parameters>
7667           <parameter name="column" transfer-ownership="none">
7668             <type name="int" c:type="gint"/>
7669           </parameter>
7670         </parameters>
7671       </method>
7672       <method name="column_titles_active"
7673               c:identifier="gtk_clist_column_titles_active">
7674         <return-value transfer-ownership="none">
7675           <type name="none" c:type="void"/>
7676         </return-value>
7677       </method>
7678       <method name="column_titles_passive"
7679               c:identifier="gtk_clist_column_titles_passive">
7680         <return-value transfer-ownership="none">
7681           <type name="none" c:type="void"/>
7682         </return-value>
7683       </method>
7684       <method name="set_column_title"
7685               c:identifier="gtk_clist_set_column_title">
7686         <return-value transfer-ownership="none">
7687           <type name="none" c:type="void"/>
7688         </return-value>
7689         <parameters>
7690           <parameter name="column" transfer-ownership="none">
7691             <type name="int" c:type="gint"/>
7692           </parameter>
7693           <parameter name="title" transfer-ownership="none">
7694             <type name="utf8" c:type="gchar*"/>
7695           </parameter>
7696         </parameters>
7697       </method>
7698       <method name="get_column_title"
7699               c:identifier="gtk_clist_get_column_title">
7700         <return-value transfer-ownership="full">
7701           <type name="utf8" c:type="gchar*"/>
7702         </return-value>
7703         <parameters>
7704           <parameter name="column" transfer-ownership="none">
7705             <type name="int" c:type="gint"/>
7706           </parameter>
7707         </parameters>
7708       </method>
7709       <method name="set_column_widget"
7710               c:identifier="gtk_clist_set_column_widget">
7711         <return-value transfer-ownership="none">
7712           <type name="none" c:type="void"/>
7713         </return-value>
7714         <parameters>
7715           <parameter name="column" transfer-ownership="none">
7716             <type name="int" c:type="gint"/>
7717           </parameter>
7718           <parameter name="widget" transfer-ownership="none">
7719             <type name="Widget" c:type="GtkWidget*"/>
7720           </parameter>
7721         </parameters>
7722       </method>
7723       <method name="get_column_widget"
7724               c:identifier="gtk_clist_get_column_widget">
7725         <return-value transfer-ownership="full">
7726           <type name="Widget" c:type="GtkWidget*"/>
7727         </return-value>
7728         <parameters>
7729           <parameter name="column" transfer-ownership="none">
7730             <type name="int" c:type="gint"/>
7731           </parameter>
7732         </parameters>
7733       </method>
7734       <method name="set_column_justification"
7735               c:identifier="gtk_clist_set_column_justification">
7736         <return-value transfer-ownership="none">
7737           <type name="none" c:type="void"/>
7738         </return-value>
7739         <parameters>
7740           <parameter name="column" transfer-ownership="none">
7741             <type name="int" c:type="gint"/>
7742           </parameter>
7743           <parameter name="justification" transfer-ownership="none">
7744             <type name="Justification" c:type="GtkJustification"/>
7745           </parameter>
7746         </parameters>
7747       </method>
7748       <method name="set_column_visibility"
7749               c:identifier="gtk_clist_set_column_visibility">
7750         <return-value transfer-ownership="none">
7751           <type name="none" c:type="void"/>
7752         </return-value>
7753         <parameters>
7754           <parameter name="column" transfer-ownership="none">
7755             <type name="int" c:type="gint"/>
7756           </parameter>
7757           <parameter name="visible" transfer-ownership="none">
7758             <type name="boolean" c:type="gboolean"/>
7759           </parameter>
7760         </parameters>
7761       </method>
7762       <method name="set_column_resizeable"
7763               c:identifier="gtk_clist_set_column_resizeable">
7764         <return-value transfer-ownership="none">
7765           <type name="none" c:type="void"/>
7766         </return-value>
7767         <parameters>
7768           <parameter name="column" transfer-ownership="none">
7769             <type name="int" c:type="gint"/>
7770           </parameter>
7771           <parameter name="resizeable" transfer-ownership="none">
7772             <type name="boolean" c:type="gboolean"/>
7773           </parameter>
7774         </parameters>
7775       </method>
7776       <method name="set_column_auto_resize"
7777               c:identifier="gtk_clist_set_column_auto_resize">
7778         <return-value transfer-ownership="none">
7779           <type name="none" c:type="void"/>
7780         </return-value>
7781         <parameters>
7782           <parameter name="column" transfer-ownership="none">
7783             <type name="int" c:type="gint"/>
7784           </parameter>
7785           <parameter name="auto_resize" transfer-ownership="none">
7786             <type name="boolean" c:type="gboolean"/>
7787           </parameter>
7788         </parameters>
7789       </method>
7790       <method name="columns_autosize"
7791               c:identifier="gtk_clist_columns_autosize">
7792         <return-value transfer-ownership="none">
7793           <type name="int" c:type="gint"/>
7794         </return-value>
7795       </method>
7796       <method name="optimal_column_width"
7797               c:identifier="gtk_clist_optimal_column_width">
7798         <return-value transfer-ownership="none">
7799           <type name="int" c:type="gint"/>
7800         </return-value>
7801         <parameters>
7802           <parameter name="column" transfer-ownership="none">
7803             <type name="int" c:type="gint"/>
7804           </parameter>
7805         </parameters>
7806       </method>
7807       <method name="set_column_width"
7808               c:identifier="gtk_clist_set_column_width">
7809         <return-value transfer-ownership="none">
7810           <type name="none" c:type="void"/>
7811         </return-value>
7812         <parameters>
7813           <parameter name="column" transfer-ownership="none">
7814             <type name="int" c:type="gint"/>
7815           </parameter>
7816           <parameter name="width" transfer-ownership="none">
7817             <type name="int" c:type="gint"/>
7818           </parameter>
7819         </parameters>
7820       </method>
7821       <method name="set_column_min_width"
7822               c:identifier="gtk_clist_set_column_min_width">
7823         <return-value transfer-ownership="none">
7824           <type name="none" c:type="void"/>
7825         </return-value>
7826         <parameters>
7827           <parameter name="column" transfer-ownership="none">
7828             <type name="int" c:type="gint"/>
7829           </parameter>
7830           <parameter name="min_width" transfer-ownership="none">
7831             <type name="int" c:type="gint"/>
7832           </parameter>
7833         </parameters>
7834       </method>
7835       <method name="set_column_max_width"
7836               c:identifier="gtk_clist_set_column_max_width">
7837         <return-value transfer-ownership="none">
7838           <type name="none" c:type="void"/>
7839         </return-value>
7840         <parameters>
7841           <parameter name="column" transfer-ownership="none">
7842             <type name="int" c:type="gint"/>
7843           </parameter>
7844           <parameter name="max_width" transfer-ownership="none">
7845             <type name="int" c:type="gint"/>
7846           </parameter>
7847         </parameters>
7848       </method>
7849       <method name="set_row_height" c:identifier="gtk_clist_set_row_height">
7850         <return-value transfer-ownership="none">
7851           <type name="none" c:type="void"/>
7852         </return-value>
7853         <parameters>
7854           <parameter name="height" transfer-ownership="none">
7855             <type name="uint" c:type="guint"/>
7856           </parameter>
7857         </parameters>
7858       </method>
7859       <method name="moveto" c:identifier="gtk_clist_moveto">
7860         <return-value transfer-ownership="none">
7861           <type name="none" c:type="void"/>
7862         </return-value>
7863         <parameters>
7864           <parameter name="row" transfer-ownership="none">
7865             <type name="int" c:type="gint"/>
7866           </parameter>
7867           <parameter name="column" transfer-ownership="none">
7868             <type name="int" c:type="gint"/>
7869           </parameter>
7870           <parameter name="row_align" transfer-ownership="none">
7871             <type name="float" c:type="gfloat"/>
7872           </parameter>
7873           <parameter name="col_align" transfer-ownership="none">
7874             <type name="float" c:type="gfloat"/>
7875           </parameter>
7876         </parameters>
7877       </method>
7878       <method name="row_is_visible" c:identifier="gtk_clist_row_is_visible">
7879         <return-value transfer-ownership="full">
7880           <type name="Visibility" c:type="GtkVisibility"/>
7881         </return-value>
7882         <parameters>
7883           <parameter name="row" transfer-ownership="none">
7884             <type name="int" c:type="gint"/>
7885           </parameter>
7886         </parameters>
7887       </method>
7888       <method name="get_cell_type" c:identifier="gtk_clist_get_cell_type">
7889         <return-value transfer-ownership="full">
7890           <type name="CellType" c:type="GtkCellType"/>
7891         </return-value>
7892         <parameters>
7893           <parameter name="row" transfer-ownership="none">
7894             <type name="int" c:type="gint"/>
7895           </parameter>
7896           <parameter name="column" transfer-ownership="none">
7897             <type name="int" c:type="gint"/>
7898           </parameter>
7899         </parameters>
7900       </method>
7901       <method name="set_text" c:identifier="gtk_clist_set_text">
7902         <return-value transfer-ownership="none">
7903           <type name="none" c:type="void"/>
7904         </return-value>
7905         <parameters>
7906           <parameter name="row" transfer-ownership="none">
7907             <type name="int" c:type="gint"/>
7908           </parameter>
7909           <parameter name="column" transfer-ownership="none">
7910             <type name="int" c:type="gint"/>
7911           </parameter>
7912           <parameter name="text" transfer-ownership="none">
7913             <type name="utf8" c:type="gchar*"/>
7914           </parameter>
7915         </parameters>
7916       </method>
7917       <method name="get_text" c:identifier="gtk_clist_get_text">
7918         <return-value transfer-ownership="none">
7919           <type name="int" c:type="gint"/>
7920         </return-value>
7921         <parameters>
7922           <parameter name="row" transfer-ownership="none">
7923             <type name="int" c:type="gint"/>
7924           </parameter>
7925           <parameter name="column" transfer-ownership="none">
7926             <type name="int" c:type="gint"/>
7927           </parameter>
7928           <parameter name="text" transfer-ownership="none">
7929             <array c:type="gchar**">
7930               <type name="utf8"/>
7931             </array>
7932           </parameter>
7933         </parameters>
7934       </method>
7935       <method name="set_pixmap" c:identifier="gtk_clist_set_pixmap">
7936         <return-value transfer-ownership="none">
7937           <type name="none" c:type="void"/>
7938         </return-value>
7939         <parameters>
7940           <parameter name="row" transfer-ownership="none">
7941             <type name="int" c:type="gint"/>
7942           </parameter>
7943           <parameter name="column" transfer-ownership="none">
7944             <type name="int" c:type="gint"/>
7945           </parameter>
7946           <parameter name="pixmap" transfer-ownership="none">
7947             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
7948           </parameter>
7949           <parameter name="mask" transfer-ownership="none" allow-none="1">
7950             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
7951           </parameter>
7952         </parameters>
7953       </method>
7954       <method name="get_pixmap" c:identifier="gtk_clist_get_pixmap">
7955         <return-value transfer-ownership="none">
7956           <type name="int" c:type="gint"/>
7957         </return-value>
7958         <parameters>
7959           <parameter name="row" transfer-ownership="none">
7960             <type name="int" c:type="gint"/>
7961           </parameter>
7962           <parameter name="column" transfer-ownership="none">
7963             <type name="int" c:type="gint"/>
7964           </parameter>
7965           <parameter name="pixmap" transfer-ownership="none">
7966             <type name="Gdk.Pixmap" c:type="GdkPixmap**"/>
7967           </parameter>
7968           <parameter name="mask" transfer-ownership="none">
7969             <type name="Gdk.Bitmap" c:type="GdkBitmap**"/>
7970           </parameter>
7971         </parameters>
7972       </method>
7973       <method name="set_pixtext" c:identifier="gtk_clist_set_pixtext">
7974         <return-value transfer-ownership="none">
7975           <type name="none" c:type="void"/>
7976         </return-value>
7977         <parameters>
7978           <parameter name="row" transfer-ownership="none">
7979             <type name="int" c:type="gint"/>
7980           </parameter>
7981           <parameter name="column" transfer-ownership="none">
7982             <type name="int" c:type="gint"/>
7983           </parameter>
7984           <parameter name="text" transfer-ownership="none">
7985             <type name="utf8" c:type="gchar*"/>
7986           </parameter>
7987           <parameter name="spacing" transfer-ownership="none">
7988             <type name="uint8" c:type="guint8"/>
7989           </parameter>
7990           <parameter name="pixmap" transfer-ownership="none">
7991             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
7992           </parameter>
7993           <parameter name="mask" transfer-ownership="none">
7994             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
7995           </parameter>
7996         </parameters>
7997       </method>
7998       <method name="get_pixtext" c:identifier="gtk_clist_get_pixtext">
7999         <return-value transfer-ownership="none">
8000           <type name="int" c:type="gint"/>
8001         </return-value>
8002         <parameters>
8003           <parameter name="row" transfer-ownership="none">
8004             <type name="int" c:type="gint"/>
8005           </parameter>
8006           <parameter name="column" transfer-ownership="none">
8007             <type name="int" c:type="gint"/>
8008           </parameter>
8009           <parameter name="text" transfer-ownership="none">
8010             <array c:type="gchar**">
8011               <type name="utf8"/>
8012             </array>
8013           </parameter>
8014           <parameter name="spacing" transfer-ownership="none">
8015             <array c:type="guint8*">
8016               <type name="uint8"/>
8017             </array>
8018           </parameter>
8019           <parameter name="pixmap" transfer-ownership="none">
8020             <type name="Gdk.Pixmap" c:type="GdkPixmap**"/>
8021           </parameter>
8022           <parameter name="mask" transfer-ownership="none">
8023             <type name="Gdk.Bitmap" c:type="GdkBitmap**"/>
8024           </parameter>
8025         </parameters>
8026       </method>
8027       <method name="set_foreground" c:identifier="gtk_clist_set_foreground">
8028         <return-value transfer-ownership="none">
8029           <type name="none" c:type="void"/>
8030         </return-value>
8031         <parameters>
8032           <parameter name="row" transfer-ownership="none">
8033             <type name="int" c:type="gint"/>
8034           </parameter>
8035           <parameter name="color" transfer-ownership="none">
8036             <type name="Gdk.Color" c:type="GdkColor*"/>
8037           </parameter>
8038         </parameters>
8039       </method>
8040       <method name="set_background" c:identifier="gtk_clist_set_background">
8041         <return-value transfer-ownership="none">
8042           <type name="none" c:type="void"/>
8043         </return-value>
8044         <parameters>
8045           <parameter name="row" transfer-ownership="none">
8046             <type name="int" c:type="gint"/>
8047           </parameter>
8048           <parameter name="color" transfer-ownership="none">
8049             <type name="Gdk.Color" c:type="GdkColor*"/>
8050           </parameter>
8051         </parameters>
8052       </method>
8053       <method name="set_cell_style" c:identifier="gtk_clist_set_cell_style">
8054         <return-value transfer-ownership="none">
8055           <type name="none" c:type="void"/>
8056         </return-value>
8057         <parameters>
8058           <parameter name="row" transfer-ownership="none">
8059             <type name="int" c:type="gint"/>
8060           </parameter>
8061           <parameter name="column" transfer-ownership="none">
8062             <type name="int" c:type="gint"/>
8063           </parameter>
8064           <parameter name="style" transfer-ownership="none">
8065             <type name="Style" c:type="GtkStyle*"/>
8066           </parameter>
8067         </parameters>
8068       </method>
8069       <method name="get_cell_style" c:identifier="gtk_clist_get_cell_style">
8070         <return-value transfer-ownership="full">
8071           <type name="Style" c:type="GtkStyle*"/>
8072         </return-value>
8073         <parameters>
8074           <parameter name="row" transfer-ownership="none">
8075             <type name="int" c:type="gint"/>
8076           </parameter>
8077           <parameter name="column" transfer-ownership="none">
8078             <type name="int" c:type="gint"/>
8079           </parameter>
8080         </parameters>
8081       </method>
8082       <method name="set_row_style" c:identifier="gtk_clist_set_row_style">
8083         <return-value transfer-ownership="none">
8084           <type name="none" c:type="void"/>
8085         </return-value>
8086         <parameters>
8087           <parameter name="row" transfer-ownership="none">
8088             <type name="int" c:type="gint"/>
8089           </parameter>
8090           <parameter name="style" transfer-ownership="none">
8091             <type name="Style" c:type="GtkStyle*"/>
8092           </parameter>
8093         </parameters>
8094       </method>
8095       <method name="get_row_style" c:identifier="gtk_clist_get_row_style">
8096         <return-value transfer-ownership="full">
8097           <type name="Style" c:type="GtkStyle*"/>
8098         </return-value>
8099         <parameters>
8100           <parameter name="row" transfer-ownership="none">
8101             <type name="int" c:type="gint"/>
8102           </parameter>
8103         </parameters>
8104       </method>
8105       <method name="set_shift" c:identifier="gtk_clist_set_shift">
8106         <return-value transfer-ownership="none">
8107           <type name="none" c:type="void"/>
8108         </return-value>
8109         <parameters>
8110           <parameter name="row" transfer-ownership="none">
8111             <type name="int" c:type="gint"/>
8112           </parameter>
8113           <parameter name="column" transfer-ownership="none">
8114             <type name="int" c:type="gint"/>
8115           </parameter>
8116           <parameter name="vertical" transfer-ownership="none">
8117             <type name="int" c:type="gint"/>
8118           </parameter>
8119           <parameter name="horizontal" transfer-ownership="none">
8120             <type name="int" c:type="gint"/>
8121           </parameter>
8122         </parameters>
8123       </method>
8124       <method name="set_selectable" c:identifier="gtk_clist_set_selectable">
8125         <return-value transfer-ownership="none">
8126           <type name="none" c:type="void"/>
8127         </return-value>
8128         <parameters>
8129           <parameter name="row" transfer-ownership="none">
8130             <type name="int" c:type="gint"/>
8131           </parameter>
8132           <parameter name="selectable" transfer-ownership="none">
8133             <type name="boolean" c:type="gboolean"/>
8134           </parameter>
8135         </parameters>
8136       </method>
8137       <method name="get_selectable" c:identifier="gtk_clist_get_selectable">
8138         <return-value transfer-ownership="none">
8139           <type name="boolean" c:type="gboolean"/>
8140         </return-value>
8141         <parameters>
8142           <parameter name="row" transfer-ownership="none">
8143             <type name="int" c:type="gint"/>
8144           </parameter>
8145         </parameters>
8146       </method>
8147       <method name="prepend" c:identifier="gtk_clist_prepend">
8148         <return-value transfer-ownership="none">
8149           <type name="int" c:type="gint"/>
8150         </return-value>
8151         <parameters>
8152           <parameter name="text" transfer-ownership="full">
8153             <type name="utf8" c:type="gchar*"/>
8154           </parameter>
8155         </parameters>
8156       </method>
8157       <method name="append" c:identifier="gtk_clist_append">
8158         <return-value transfer-ownership="none">
8159           <type name="int" c:type="gint"/>
8160         </return-value>
8161         <parameters>
8162           <parameter name="text" transfer-ownership="full">
8163             <type name="utf8" c:type="gchar*"/>
8164           </parameter>
8165         </parameters>
8166       </method>
8167       <method name="insert" c:identifier="gtk_clist_insert">
8168         <return-value transfer-ownership="none">
8169           <type name="int" c:type="gint"/>
8170         </return-value>
8171         <parameters>
8172           <parameter name="row" transfer-ownership="none">
8173             <type name="int" c:type="gint"/>
8174           </parameter>
8175           <parameter name="text" transfer-ownership="full">
8176             <type name="utf8" c:type="gchar*"/>
8177           </parameter>
8178         </parameters>
8179       </method>
8180       <method name="remove" c:identifier="gtk_clist_remove">
8181         <return-value transfer-ownership="none">
8182           <type name="none" c:type="void"/>
8183         </return-value>
8184         <parameters>
8185           <parameter name="row" transfer-ownership="none">
8186             <type name="int" c:type="gint"/>
8187           </parameter>
8188         </parameters>
8189       </method>
8190       <method name="set_row_data" c:identifier="gtk_clist_set_row_data">
8191         <return-value transfer-ownership="none">
8192           <type name="none" c:type="void"/>
8193         </return-value>
8194         <parameters>
8195           <parameter name="row" transfer-ownership="none">
8196             <type name="int" c:type="gint"/>
8197           </parameter>
8198           <parameter name="data" transfer-ownership="none">
8199             <type name="any" c:type="gpointer"/>
8200           </parameter>
8201         </parameters>
8202       </method>
8203       <method name="set_row_data_full"
8204               c:identifier="gtk_clist_set_row_data_full">
8205         <return-value transfer-ownership="none">
8206           <type name="none" c:type="void"/>
8207         </return-value>
8208         <parameters>
8209           <parameter name="row" transfer-ownership="none">
8210             <type name="int" c:type="gint"/>
8211           </parameter>
8212           <parameter name="data" transfer-ownership="none">
8213             <type name="any" c:type="gpointer"/>
8214           </parameter>
8215           <parameter name="destroy" transfer-ownership="none" scope="call">
8216             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
8217           </parameter>
8218         </parameters>
8219       </method>
8220       <method name="get_row_data" c:identifier="gtk_clist_get_row_data">
8221         <return-value transfer-ownership="none">
8222           <type name="any" c:type="gpointer"/>
8223         </return-value>
8224         <parameters>
8225           <parameter name="row" transfer-ownership="none">
8226             <type name="int" c:type="gint"/>
8227           </parameter>
8228         </parameters>
8229       </method>
8230       <method name="find_row_from_data"
8231               c:identifier="gtk_clist_find_row_from_data">
8232         <return-value transfer-ownership="none">
8233           <type name="int" c:type="gint"/>
8234         </return-value>
8235         <parameters>
8236           <parameter name="data" transfer-ownership="none">
8237             <type name="any" c:type="gpointer"/>
8238           </parameter>
8239         </parameters>
8240       </method>
8241       <method name="select_row" c:identifier="gtk_clist_select_row">
8242         <return-value transfer-ownership="none">
8243           <type name="none" c:type="void"/>
8244         </return-value>
8245         <parameters>
8246           <parameter name="row" transfer-ownership="none">
8247             <type name="int" c:type="gint"/>
8248           </parameter>
8249           <parameter name="column" transfer-ownership="none">
8250             <type name="int" c:type="gint"/>
8251           </parameter>
8252         </parameters>
8253       </method>
8254       <method name="unselect_row" c:identifier="gtk_clist_unselect_row">
8255         <return-value transfer-ownership="none">
8256           <type name="none" c:type="void"/>
8257         </return-value>
8258         <parameters>
8259           <parameter name="row" transfer-ownership="none">
8260             <type name="int" c:type="gint"/>
8261           </parameter>
8262           <parameter name="column" transfer-ownership="none">
8263             <type name="int" c:type="gint"/>
8264           </parameter>
8265         </parameters>
8266       </method>
8267       <method name="undo_selection" c:identifier="gtk_clist_undo_selection">
8268         <return-value transfer-ownership="none">
8269           <type name="none" c:type="void"/>
8270         </return-value>
8271       </method>
8272       <method name="clear" c:identifier="gtk_clist_clear">
8273         <return-value transfer-ownership="none">
8274           <type name="none" c:type="void"/>
8275         </return-value>
8276       </method>
8277       <method name="get_selection_info"
8278               c:identifier="gtk_clist_get_selection_info">
8279         <return-value transfer-ownership="none">
8280           <type name="int" c:type="gint"/>
8281         </return-value>
8282         <parameters>
8283           <parameter name="x" transfer-ownership="none">
8284             <type name="int" c:type="gint"/>
8285           </parameter>
8286           <parameter name="y" transfer-ownership="none">
8287             <type name="int" c:type="gint"/>
8288           </parameter>
8289           <parameter name="row"
8290                      direction="out"
8291                      caller-allocates="0"
8292                      transfer-ownership="full">
8293             <type name="int" c:type="gint*"/>
8294           </parameter>
8295           <parameter name="column"
8296                      direction="out"
8297                      caller-allocates="0"
8298                      transfer-ownership="full">
8299             <type name="int" c:type="gint*"/>
8300           </parameter>
8301         </parameters>
8302       </method>
8303       <method name="select_all" c:identifier="gtk_clist_select_all">
8304         <return-value transfer-ownership="none">
8305           <type name="none" c:type="void"/>
8306         </return-value>
8307       </method>
8308       <method name="unselect_all" c:identifier="gtk_clist_unselect_all">
8309         <return-value transfer-ownership="none">
8310           <type name="none" c:type="void"/>
8311         </return-value>
8312       </method>
8313       <method name="swap_rows" c:identifier="gtk_clist_swap_rows">
8314         <return-value transfer-ownership="none">
8315           <type name="none" c:type="void"/>
8316         </return-value>
8317         <parameters>
8318           <parameter name="row1" transfer-ownership="none">
8319             <type name="int" c:type="gint"/>
8320           </parameter>
8321           <parameter name="row2" transfer-ownership="none">
8322             <type name="int" c:type="gint"/>
8323           </parameter>
8324         </parameters>
8325       </method>
8326       <method name="row_move" c:identifier="gtk_clist_row_move">
8327         <return-value transfer-ownership="none">
8328           <type name="none" c:type="void"/>
8329         </return-value>
8330         <parameters>
8331           <parameter name="source_row" transfer-ownership="none">
8332             <type name="int" c:type="gint"/>
8333           </parameter>
8334           <parameter name="dest_row" transfer-ownership="none">
8335             <type name="int" c:type="gint"/>
8336           </parameter>
8337         </parameters>
8338       </method>
8339       <method name="set_compare_func"
8340               c:identifier="gtk_clist_set_compare_func">
8341         <return-value transfer-ownership="none">
8342           <type name="none" c:type="void"/>
8343         </return-value>
8344         <parameters>
8345           <parameter name="cmp_func" transfer-ownership="none" scope="call">
8346             <type name="CListCompareFunc" c:type="GtkCListCompareFunc"/>
8347           </parameter>
8348         </parameters>
8349       </method>
8350       <method name="set_sort_column" c:identifier="gtk_clist_set_sort_column">
8351         <return-value transfer-ownership="none">
8352           <type name="none" c:type="void"/>
8353         </return-value>
8354         <parameters>
8355           <parameter name="column" transfer-ownership="none">
8356             <type name="int" c:type="gint"/>
8357           </parameter>
8358         </parameters>
8359       </method>
8360       <method name="set_sort_type" c:identifier="gtk_clist_set_sort_type">
8361         <return-value transfer-ownership="none">
8362           <type name="none" c:type="void"/>
8363         </return-value>
8364         <parameters>
8365           <parameter name="sort_type" transfer-ownership="none">
8366             <type name="SortType" c:type="GtkSortType"/>
8367           </parameter>
8368         </parameters>
8369       </method>
8370       <method name="sort" c:identifier="gtk_clist_sort">
8371         <return-value transfer-ownership="none">
8372           <type name="none" c:type="void"/>
8373         </return-value>
8374       </method>
8375       <method name="set_auto_sort" c:identifier="gtk_clist_set_auto_sort">
8376         <return-value transfer-ownership="none">
8377           <type name="none" c:type="void"/>
8378         </return-value>
8379         <parameters>
8380           <parameter name="auto_sort" transfer-ownership="none">
8381             <type name="boolean" c:type="gboolean"/>
8382           </parameter>
8383         </parameters>
8384       </method>
8385       <property name="n-columns"
8386                 writable="1"
8387                 construct-only="1"
8388                 transfer-ownership="none">
8389         <type name="uint" c:type="guint"/>
8390       </property>
8391       <property name="reorderable" writable="1" transfer-ownership="none">
8392         <type name="boolean" c:type="gboolean"/>
8393       </property>
8394       <property name="row-height" writable="1" transfer-ownership="none">
8395         <type name="uint" c:type="guint"/>
8396       </property>
8397       <property name="selection-mode" writable="1" transfer-ownership="none">
8398         <type name="SelectionMode" c:type="GtkSelectionMode"/>
8399       </property>
8400       <property name="shadow-type" writable="1" transfer-ownership="none">
8401         <type name="ShadowType" c:type="GtkShadowType"/>
8402       </property>
8403       <property name="sort-type" writable="1" transfer-ownership="none">
8404         <type name="SortType" c:type="GtkSortType"/>
8405       </property>
8406       <property name="titles-active" writable="1" transfer-ownership="none">
8407         <type name="boolean" c:type="gboolean"/>
8408       </property>
8409       <property name="use-drag-icons" writable="1" transfer-ownership="none">
8410         <type name="boolean" c:type="gboolean"/>
8411       </property>
8412       <field name="container">
8413         <type name="Container" c:type="GtkContainer"/>
8414       </field>
8415       <field name="flags">
8416         <type name="uint16" c:type="guint16"/>
8417       </field>
8418       <field name="reserved1">
8419         <type name="any" c:type="gpointer"/>
8420       </field>
8421       <field name="reserved2">
8422         <type name="any" c:type="gpointer"/>
8423       </field>
8424       <field name="freeze_count">
8425         <type name="uint" c:type="guint"/>
8426       </field>
8427       <field name="internal_allocation">
8428         <type name="Gdk.Rectangle" c:type="GdkRectangle"/>
8429       </field>
8430       <field name="rows">
8431         <type name="int" c:type="gint"/>
8432       </field>
8433       <field name="row_height">
8434         <type name="int" c:type="gint"/>
8435       </field>
8436       <field name="row_list">
8437         <type name="GLib.List" c:type="GList*">
8438           <type name="any" c:type="gpointer"/>
8439         </type>
8440       </field>
8441       <field name="row_list_end">
8442         <type name="GLib.List" c:type="GList*">
8443           <type name="any" c:type="gpointer"/>
8444         </type>
8445       </field>
8446       <field name="columns">
8447         <type name="int" c:type="gint"/>
8448       </field>
8449       <field name="column_title_area">
8450         <type name="Gdk.Rectangle" c:type="GdkRectangle"/>
8451       </field>
8452       <field name="title_window">
8453         <type name="Gdk.Window" c:type="GdkWindow*"/>
8454       </field>
8455       <field name="column">
8456         <type name="CListColumn" c:type="GtkCListColumn*"/>
8457       </field>
8458       <field name="clist_window">
8459         <type name="Gdk.Window" c:type="GdkWindow*"/>
8460       </field>
8461       <field name="clist_window_width">
8462         <type name="int" c:type="gint"/>
8463       </field>
8464       <field name="clist_window_height">
8465         <type name="int" c:type="gint"/>
8466       </field>
8467       <field name="hoffset">
8468         <type name="int" c:type="gint"/>
8469       </field>
8470       <field name="voffset">
8471         <type name="int" c:type="gint"/>
8472       </field>
8473       <field name="shadow_type">
8474         <type name="ShadowType" c:type="GtkShadowType"/>
8475       </field>
8476       <field name="selection_mode">
8477         <type name="SelectionMode" c:type="GtkSelectionMode"/>
8478       </field>
8479       <field name="selection">
8480         <type name="GLib.List" c:type="GList*">
8481           <type name="any" c:type="gpointer"/>
8482         </type>
8483       </field>
8484       <field name="selection_end">
8485         <type name="GLib.List" c:type="GList*">
8486           <type name="any" c:type="gpointer"/>
8487         </type>
8488       </field>
8489       <field name="undo_selection">
8490         <type name="GLib.List" c:type="GList*">
8491           <type name="any" c:type="gpointer"/>
8492         </type>
8493       </field>
8494       <field name="undo_unselection">
8495         <type name="GLib.List" c:type="GList*">
8496           <type name="any" c:type="gpointer"/>
8497         </type>
8498       </field>
8499       <field name="undo_anchor">
8500         <type name="int" c:type="gint"/>
8501       </field>
8502       <field name="button_actions">
8503         <array zero-terminated="0" c:type="guint8" fixed-size="5">
8504           <type name="uint8"/>
8505         </array>
8506       </field>
8507       <field name="drag_button">
8508         <type name="uint8" c:type="guint8"/>
8509       </field>
8510       <field name="click_cell">
8511         <type name="CListCellInfo" c:type="GtkCListCellInfo"/>
8512       </field>
8513       <field name="hadjustment">
8514         <type name="Adjustment" c:type="GtkAdjustment*"/>
8515       </field>
8516       <field name="vadjustment">
8517         <type name="Adjustment" c:type="GtkAdjustment*"/>
8518       </field>
8519       <field name="xor_gc">
8520         <type name="Gdk.GC" c:type="GdkGC*"/>
8521       </field>
8522       <field name="fg_gc">
8523         <type name="Gdk.GC" c:type="GdkGC*"/>
8524       </field>
8525       <field name="bg_gc">
8526         <type name="Gdk.GC" c:type="GdkGC*"/>
8527       </field>
8528       <field name="cursor_drag">
8529         <type name="Gdk.Cursor" c:type="GdkCursor*"/>
8530       </field>
8531       <field name="x_drag">
8532         <type name="int" c:type="gint"/>
8533       </field>
8534       <field name="focus_row">
8535         <type name="int" c:type="gint"/>
8536       </field>
8537       <field name="focus_header_column">
8538         <type name="int" c:type="gint"/>
8539       </field>
8540       <field name="anchor">
8541         <type name="int" c:type="gint"/>
8542       </field>
8543       <field name="anchor_state">
8544         <type name="StateType" c:type="GtkStateType"/>
8545       </field>
8546       <field name="drag_pos">
8547         <type name="int" c:type="gint"/>
8548       </field>
8549       <field name="htimer">
8550         <type name="int" c:type="gint"/>
8551       </field>
8552       <field name="vtimer">
8553         <type name="int" c:type="gint"/>
8554       </field>
8555       <field name="sort_type">
8556         <type name="SortType" c:type="GtkSortType"/>
8557       </field>
8558       <field name="compare">
8559         <type name="CListCompareFunc" c:type="GtkCListCompareFunc"/>
8560       </field>
8561       <field name="sort_column">
8562         <type name="int" c:type="gint"/>
8563       </field>
8564       <field name="drag_highlight_row">
8565         <type name="int" c:type="gint"/>
8566       </field>
8567       <field name="drag_highlight_pos">
8568         <type name="CListDragPos" c:type="GtkCListDragPos"/>
8569       </field>
8570       <glib:signal name="abort-column-resize">
8571         <return-value transfer-ownership="full">
8572           <type name="none" c:type="void"/>
8573         </return-value>
8574       </glib:signal>
8575       <glib:signal name="click-column">
8576         <return-value transfer-ownership="full">
8577           <type name="none" c:type="void"/>
8578         </return-value>
8579         <parameters>
8580           <parameter name="object" transfer-ownership="none">
8581             <type name="int" c:type="gint"/>
8582           </parameter>
8583         </parameters>
8584       </glib:signal>
8585       <glib:signal name="end-selection">
8586         <return-value transfer-ownership="full">
8587           <type name="none" c:type="void"/>
8588         </return-value>
8589       </glib:signal>
8590       <glib:signal name="extend-selection">
8591         <return-value transfer-ownership="full">
8592           <type name="none" c:type="void"/>
8593         </return-value>
8594         <parameters>
8595           <parameter name="object" transfer-ownership="none">
8596             <type name="ScrollType" c:type="GtkScrollType"/>
8597           </parameter>
8598           <parameter name="p0" transfer-ownership="none">
8599             <type name="float" c:type="gfloat"/>
8600           </parameter>
8601           <parameter name="p1" transfer-ownership="none">
8602             <type name="boolean" c:type="gboolean"/>
8603           </parameter>
8604         </parameters>
8605       </glib:signal>
8606       <glib:signal name="resize-column">
8607         <return-value transfer-ownership="full">
8608           <type name="none" c:type="void"/>
8609         </return-value>
8610         <parameters>
8611           <parameter name="object" transfer-ownership="none">
8612             <type name="int" c:type="gint"/>
8613           </parameter>
8614           <parameter name="p0" transfer-ownership="none">
8615             <type name="int" c:type="gint"/>
8616           </parameter>
8617         </parameters>
8618       </glib:signal>
8619       <glib:signal name="row-move">
8620         <return-value transfer-ownership="full">
8621           <type name="none" c:type="void"/>
8622         </return-value>
8623         <parameters>
8624           <parameter name="object" transfer-ownership="none">
8625             <type name="int" c:type="gint"/>
8626           </parameter>
8627           <parameter name="p0" transfer-ownership="none">
8628             <type name="int" c:type="gint"/>
8629           </parameter>
8630         </parameters>
8631       </glib:signal>
8632       <glib:signal name="scroll-horizontal">
8633         <return-value transfer-ownership="full">
8634           <type name="none" c:type="void"/>
8635         </return-value>
8636         <parameters>
8637           <parameter name="object" transfer-ownership="none">
8638             <type name="ScrollType" c:type="GtkScrollType"/>
8639           </parameter>
8640           <parameter name="p0" transfer-ownership="none">
8641             <type name="float" c:type="gfloat"/>
8642           </parameter>
8643         </parameters>
8644       </glib:signal>
8645       <glib:signal name="scroll-vertical">
8646         <return-value transfer-ownership="full">
8647           <type name="none" c:type="void"/>
8648         </return-value>
8649         <parameters>
8650           <parameter name="object" transfer-ownership="none">
8651             <type name="ScrollType" c:type="GtkScrollType"/>
8652           </parameter>
8653           <parameter name="p0" transfer-ownership="none">
8654             <type name="float" c:type="gfloat"/>
8655           </parameter>
8656         </parameters>
8657       </glib:signal>
8658       <glib:signal name="select-all">
8659         <return-value transfer-ownership="full">
8660           <type name="none" c:type="void"/>
8661         </return-value>
8662       </glib:signal>
8663       <glib:signal name="select-row">
8664         <return-value transfer-ownership="full">
8665           <type name="none" c:type="void"/>
8666         </return-value>
8667         <parameters>
8668           <parameter name="object" transfer-ownership="none">
8669             <type name="int" c:type="gint"/>
8670           </parameter>
8671           <parameter name="p0" transfer-ownership="none">
8672             <type name="int" c:type="gint"/>
8673           </parameter>
8674           <parameter name="p1" transfer-ownership="none">
8675             <type name="Gdk.Event" c:type="GdkEvent"/>
8676           </parameter>
8677         </parameters>
8678       </glib:signal>
8679       <glib:signal name="set-scroll-adjustments">
8680         <return-value transfer-ownership="full">
8681           <type name="none" c:type="void"/>
8682         </return-value>
8683         <parameters>
8684           <parameter name="object" transfer-ownership="none">
8685             <type name="Adjustment" c:type="GtkAdjustment"/>
8686           </parameter>
8687           <parameter name="p0" transfer-ownership="none">
8688             <type name="Adjustment" c:type="GtkAdjustment"/>
8689           </parameter>
8690         </parameters>
8691       </glib:signal>
8692       <glib:signal name="start-selection">
8693         <return-value transfer-ownership="full">
8694           <type name="none" c:type="void"/>
8695         </return-value>
8696       </glib:signal>
8697       <glib:signal name="toggle-add-mode">
8698         <return-value transfer-ownership="full">
8699           <type name="none" c:type="void"/>
8700         </return-value>
8701       </glib:signal>
8702       <glib:signal name="toggle-focus-row">
8703         <return-value transfer-ownership="full">
8704           <type name="none" c:type="void"/>
8705         </return-value>
8706       </glib:signal>
8707       <glib:signal name="undo-selection">
8708         <return-value transfer-ownership="full">
8709           <type name="none" c:type="void"/>
8710         </return-value>
8711       </glib:signal>
8712       <glib:signal name="unselect-all">
8713         <return-value transfer-ownership="full">
8714           <type name="none" c:type="void"/>
8715         </return-value>
8716       </glib:signal>
8717       <glib:signal name="unselect-row">
8718         <return-value transfer-ownership="full">
8719           <type name="none" c:type="void"/>
8720         </return-value>
8721         <parameters>
8722           <parameter name="object" transfer-ownership="none">
8723             <type name="int" c:type="gint"/>
8724           </parameter>
8725           <parameter name="p0" transfer-ownership="none">
8726             <type name="int" c:type="gint"/>
8727           </parameter>
8728           <parameter name="p1" transfer-ownership="none">
8729             <type name="Gdk.Event" c:type="GdkEvent"/>
8730           </parameter>
8731         </parameters>
8732       </glib:signal>
8733     </class>
8734     <record name="CListCellInfo" c:type="GtkCListCellInfo">
8735       <field name="row" writable="1">
8736         <type name="int" c:type="gint"/>
8737       </field>
8738       <field name="column" writable="1">
8739         <type name="int" c:type="gint"/>
8740       </field>
8741     </record>
8742     <record name="CListClass"
8743             c:type="GtkCListClass"
8744             glib:is-gtype-struct-for="CList">
8745       <field name="parent_class">
8746         <type name="ContainerClass" c:type="GtkContainerClass"/>
8747       </field>
8748       <field name="set_scroll_adjustments">
8749         <callback name="set_scroll_adjustments"
8750                   c:type="set_scroll_adjustments">
8751           <return-value transfer-ownership="none">
8752             <type name="none" c:type="void"/>
8753           </return-value>
8754           <parameters>
8755             <parameter name="clist" transfer-ownership="none">
8756               <type name="CList" c:type="GtkCList*"/>
8757             </parameter>
8758             <parameter name="hadjustment" transfer-ownership="none">
8759               <type name="Adjustment" c:type="GtkAdjustment*"/>
8760             </parameter>
8761             <parameter name="vadjustment" transfer-ownership="none">
8762               <type name="Adjustment" c:type="GtkAdjustment*"/>
8763             </parameter>
8764           </parameters>
8765         </callback>
8766       </field>
8767       <field name="refresh">
8768         <callback name="refresh" c:type="refresh">
8769           <return-value transfer-ownership="none">
8770             <type name="none" c:type="void"/>
8771           </return-value>
8772           <parameters>
8773             <parameter name="clist" transfer-ownership="none">
8774               <type name="CList" c:type="GtkCList*"/>
8775             </parameter>
8776           </parameters>
8777         </callback>
8778       </field>
8779       <field name="select_row">
8780         <callback name="select_row" c:type="select_row">
8781           <return-value transfer-ownership="none">
8782             <type name="none" c:type="void"/>
8783           </return-value>
8784           <parameters>
8785             <parameter name="clist" transfer-ownership="none">
8786               <type name="CList" c:type="GtkCList*"/>
8787             </parameter>
8788             <parameter name="row" transfer-ownership="none">
8789               <type name="int" c:type="gint"/>
8790             </parameter>
8791             <parameter name="column" transfer-ownership="none">
8792               <type name="int" c:type="gint"/>
8793             </parameter>
8794             <parameter name="event" transfer-ownership="none">
8795               <type name="Gdk.Event" c:type="GdkEvent*"/>
8796             </parameter>
8797           </parameters>
8798         </callback>
8799       </field>
8800       <field name="unselect_row">
8801         <callback name="unselect_row" c:type="unselect_row">
8802           <return-value transfer-ownership="none">
8803             <type name="none" c:type="void"/>
8804           </return-value>
8805           <parameters>
8806             <parameter name="clist" transfer-ownership="none">
8807               <type name="CList" c:type="GtkCList*"/>
8808             </parameter>
8809             <parameter name="row" transfer-ownership="none">
8810               <type name="int" c:type="gint"/>
8811             </parameter>
8812             <parameter name="column" transfer-ownership="none">
8813               <type name="int" c:type="gint"/>
8814             </parameter>
8815             <parameter name="event" transfer-ownership="none">
8816               <type name="Gdk.Event" c:type="GdkEvent*"/>
8817             </parameter>
8818           </parameters>
8819         </callback>
8820       </field>
8821       <field name="row_move">
8822         <callback name="row_move" c:type="row_move">
8823           <return-value transfer-ownership="none">
8824             <type name="none" c:type="void"/>
8825           </return-value>
8826           <parameters>
8827             <parameter name="clist" transfer-ownership="none">
8828               <type name="CList" c:type="GtkCList*"/>
8829             </parameter>
8830             <parameter name="source_row" transfer-ownership="none">
8831               <type name="int" c:type="gint"/>
8832             </parameter>
8833             <parameter name="dest_row" transfer-ownership="none">
8834               <type name="int" c:type="gint"/>
8835             </parameter>
8836           </parameters>
8837         </callback>
8838       </field>
8839       <field name="click_column">
8840         <callback name="click_column" c:type="click_column">
8841           <return-value transfer-ownership="none">
8842             <type name="none" c:type="void"/>
8843           </return-value>
8844           <parameters>
8845             <parameter name="clist" transfer-ownership="none">
8846               <type name="CList" c:type="GtkCList*"/>
8847             </parameter>
8848             <parameter name="column" transfer-ownership="none">
8849               <type name="int" c:type="gint"/>
8850             </parameter>
8851           </parameters>
8852         </callback>
8853       </field>
8854       <field name="resize_column">
8855         <callback name="resize_column" c:type="resize_column">
8856           <return-value transfer-ownership="none">
8857             <type name="none" c:type="void"/>
8858           </return-value>
8859           <parameters>
8860             <parameter name="clist" transfer-ownership="none">
8861               <type name="CList" c:type="GtkCList*"/>
8862             </parameter>
8863             <parameter name="column" transfer-ownership="none">
8864               <type name="int" c:type="gint"/>
8865             </parameter>
8866             <parameter name="width" transfer-ownership="none">
8867               <type name="int" c:type="gint"/>
8868             </parameter>
8869           </parameters>
8870         </callback>
8871       </field>
8872       <field name="toggle_focus_row">
8873         <callback name="toggle_focus_row" c:type="toggle_focus_row">
8874           <return-value transfer-ownership="none">
8875             <type name="none" c:type="void"/>
8876           </return-value>
8877           <parameters>
8878             <parameter name="clist" transfer-ownership="none">
8879               <type name="CList" c:type="GtkCList*"/>
8880             </parameter>
8881           </parameters>
8882         </callback>
8883       </field>
8884       <field name="select_all">
8885         <callback name="select_all" c:type="select_all">
8886           <return-value transfer-ownership="none">
8887             <type name="none" c:type="void"/>
8888           </return-value>
8889           <parameters>
8890             <parameter name="clist" transfer-ownership="none">
8891               <type name="CList" c:type="GtkCList*"/>
8892             </parameter>
8893           </parameters>
8894         </callback>
8895       </field>
8896       <field name="unselect_all">
8897         <callback name="unselect_all" c:type="unselect_all">
8898           <return-value transfer-ownership="none">
8899             <type name="none" c:type="void"/>
8900           </return-value>
8901           <parameters>
8902             <parameter name="clist" transfer-ownership="none">
8903               <type name="CList" c:type="GtkCList*"/>
8904             </parameter>
8905           </parameters>
8906         </callback>
8907       </field>
8908       <field name="undo_selection">
8909         <callback name="undo_selection" c:type="undo_selection">
8910           <return-value transfer-ownership="none">
8911             <type name="none" c:type="void"/>
8912           </return-value>
8913           <parameters>
8914             <parameter name="clist" transfer-ownership="none">
8915               <type name="CList" c:type="GtkCList*"/>
8916             </parameter>
8917           </parameters>
8918         </callback>
8919       </field>
8920       <field name="start_selection">
8921         <callback name="start_selection" c:type="start_selection">
8922           <return-value transfer-ownership="none">
8923             <type name="none" c:type="void"/>
8924           </return-value>
8925           <parameters>
8926             <parameter name="clist" transfer-ownership="none">
8927               <type name="CList" c:type="GtkCList*"/>
8928             </parameter>
8929           </parameters>
8930         </callback>
8931       </field>
8932       <field name="end_selection">
8933         <callback name="end_selection" c:type="end_selection">
8934           <return-value transfer-ownership="none">
8935             <type name="none" c:type="void"/>
8936           </return-value>
8937           <parameters>
8938             <parameter name="clist" transfer-ownership="none">
8939               <type name="CList" c:type="GtkCList*"/>
8940             </parameter>
8941           </parameters>
8942         </callback>
8943       </field>
8944       <field name="extend_selection">
8945         <callback name="extend_selection" c:type="extend_selection">
8946           <return-value transfer-ownership="none">
8947             <type name="none" c:type="void"/>
8948           </return-value>
8949           <parameters>
8950             <parameter name="clist" transfer-ownership="none">
8951               <type name="CList" c:type="GtkCList*"/>
8952             </parameter>
8953             <parameter name="scroll_type" transfer-ownership="none">
8954               <type name="ScrollType" c:type="GtkScrollType"/>
8955             </parameter>
8956             <parameter name="position" transfer-ownership="none">
8957               <type name="float" c:type="gfloat"/>
8958             </parameter>
8959             <parameter name="auto_start_selection" transfer-ownership="none">
8960               <type name="boolean" c:type="gboolean"/>
8961             </parameter>
8962           </parameters>
8963         </callback>
8964       </field>
8965       <field name="scroll_horizontal">
8966         <callback name="scroll_horizontal" c:type="scroll_horizontal">
8967           <return-value transfer-ownership="none">
8968             <type name="none" c:type="void"/>
8969           </return-value>
8970           <parameters>
8971             <parameter name="clist" transfer-ownership="none">
8972               <type name="CList" c:type="GtkCList*"/>
8973             </parameter>
8974             <parameter name="scroll_type" transfer-ownership="none">
8975               <type name="ScrollType" c:type="GtkScrollType"/>
8976             </parameter>
8977             <parameter name="position" transfer-ownership="none">
8978               <type name="float" c:type="gfloat"/>
8979             </parameter>
8980           </parameters>
8981         </callback>
8982       </field>
8983       <field name="scroll_vertical">
8984         <callback name="scroll_vertical" c:type="scroll_vertical">
8985           <return-value transfer-ownership="none">
8986             <type name="none" c:type="void"/>
8987           </return-value>
8988           <parameters>
8989             <parameter name="clist" transfer-ownership="none">
8990               <type name="CList" c:type="GtkCList*"/>
8991             </parameter>
8992             <parameter name="scroll_type" transfer-ownership="none">
8993               <type name="ScrollType" c:type="GtkScrollType"/>
8994             </parameter>
8995             <parameter name="position" transfer-ownership="none">
8996               <type name="float" c:type="gfloat"/>
8997             </parameter>
8998           </parameters>
8999         </callback>
9000       </field>
9001       <field name="toggle_add_mode">
9002         <callback name="toggle_add_mode" c:type="toggle_add_mode">
9003           <return-value transfer-ownership="none">
9004             <type name="none" c:type="void"/>
9005           </return-value>
9006           <parameters>
9007             <parameter name="clist" transfer-ownership="none">
9008               <type name="CList" c:type="GtkCList*"/>
9009             </parameter>
9010           </parameters>
9011         </callback>
9012       </field>
9013       <field name="abort_column_resize">
9014         <callback name="abort_column_resize" c:type="abort_column_resize">
9015           <return-value transfer-ownership="none">
9016             <type name="none" c:type="void"/>
9017           </return-value>
9018           <parameters>
9019             <parameter name="clist" transfer-ownership="none">
9020               <type name="CList" c:type="GtkCList*"/>
9021             </parameter>
9022           </parameters>
9023         </callback>
9024       </field>
9025       <field name="resync_selection">
9026         <callback name="resync_selection" c:type="resync_selection">
9027           <return-value transfer-ownership="none">
9028             <type name="none" c:type="void"/>
9029           </return-value>
9030           <parameters>
9031             <parameter name="clist" transfer-ownership="none">
9032               <type name="CList" c:type="GtkCList*"/>
9033             </parameter>
9034             <parameter name="event" transfer-ownership="none">
9035               <type name="Gdk.Event" c:type="GdkEvent*"/>
9036             </parameter>
9037           </parameters>
9038         </callback>
9039       </field>
9040       <field name="selection_find">
9041         <callback name="selection_find" c:type="selection_find">
9042           <return-value transfer-ownership="full">
9043             <type name="GLib.List" c:type="GList*">
9044               <type name="any" c:type="gpointer"/>
9045             </type>
9046           </return-value>
9047           <parameters>
9048             <parameter name="clist" transfer-ownership="none">
9049               <type name="CList" c:type="GtkCList*"/>
9050             </parameter>
9051             <parameter name="row_number" transfer-ownership="none">
9052               <type name="int" c:type="gint"/>
9053             </parameter>
9054             <parameter name="row_list_element" transfer-ownership="none">
9055               <type name="GLib.List" c:type="GList*">
9056                 <type name="any" c:type="gpointer"/>
9057               </type>
9058             </parameter>
9059           </parameters>
9060         </callback>
9061       </field>
9062       <field name="draw_row">
9063         <callback name="draw_row" c:type="draw_row">
9064           <return-value transfer-ownership="none">
9065             <type name="none" c:type="void"/>
9066           </return-value>
9067           <parameters>
9068             <parameter name="clist" transfer-ownership="none">
9069               <type name="CList" c:type="GtkCList*"/>
9070             </parameter>
9071             <parameter name="area" transfer-ownership="none">
9072               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
9073             </parameter>
9074             <parameter name="row" transfer-ownership="none">
9075               <type name="int" c:type="gint"/>
9076             </parameter>
9077             <parameter name="clist_row" transfer-ownership="none">
9078               <type name="CListRow" c:type="GtkCListRow*"/>
9079             </parameter>
9080           </parameters>
9081         </callback>
9082       </field>
9083       <field name="draw_drag_highlight">
9084         <callback name="draw_drag_highlight" c:type="draw_drag_highlight">
9085           <return-value transfer-ownership="none">
9086             <type name="none" c:type="void"/>
9087           </return-value>
9088           <parameters>
9089             <parameter name="clist" transfer-ownership="none">
9090               <type name="CList" c:type="GtkCList*"/>
9091             </parameter>
9092             <parameter name="target_row" transfer-ownership="none">
9093               <type name="CListRow" c:type="GtkCListRow*"/>
9094             </parameter>
9095             <parameter name="target_row_number" transfer-ownership="none">
9096               <type name="int" c:type="gint"/>
9097             </parameter>
9098             <parameter name="drag_pos" transfer-ownership="none">
9099               <type name="CListDragPos" c:type="GtkCListDragPos"/>
9100             </parameter>
9101           </parameters>
9102         </callback>
9103       </field>
9104       <field name="clear">
9105         <callback name="clear" c:type="clear">
9106           <return-value transfer-ownership="none">
9107             <type name="none" c:type="void"/>
9108           </return-value>
9109           <parameters>
9110             <parameter name="clist" transfer-ownership="none">
9111               <type name="CList" c:type="GtkCList*"/>
9112             </parameter>
9113           </parameters>
9114         </callback>
9115       </field>
9116       <field name="fake_unselect_all">
9117         <callback name="fake_unselect_all" c:type="fake_unselect_all">
9118           <return-value transfer-ownership="none">
9119             <type name="none" c:type="void"/>
9120           </return-value>
9121           <parameters>
9122             <parameter name="clist" transfer-ownership="none">
9123               <type name="CList" c:type="GtkCList*"/>
9124             </parameter>
9125             <parameter name="row" transfer-ownership="none">
9126               <type name="int" c:type="gint"/>
9127             </parameter>
9128           </parameters>
9129         </callback>
9130       </field>
9131       <field name="sort_list">
9132         <callback name="sort_list" c:type="sort_list">
9133           <return-value transfer-ownership="none">
9134             <type name="none" c:type="void"/>
9135           </return-value>
9136           <parameters>
9137             <parameter name="clist" transfer-ownership="none">
9138               <type name="CList" c:type="GtkCList*"/>
9139             </parameter>
9140           </parameters>
9141         </callback>
9142       </field>
9143       <field name="insert_row">
9144         <callback name="insert_row" c:type="insert_row">
9145           <return-value transfer-ownership="none">
9146             <type name="int" c:type="gint"/>
9147           </return-value>
9148           <parameters>
9149             <parameter name="clist" transfer-ownership="none">
9150               <type name="CList" c:type="GtkCList*"/>
9151             </parameter>
9152             <parameter name="row" transfer-ownership="none">
9153               <type name="int" c:type="gint"/>
9154             </parameter>
9155             <parameter name="text" transfer-ownership="full">
9156               <type name="utf8" c:type="gchar*"/>
9157             </parameter>
9158           </parameters>
9159         </callback>
9160       </field>
9161       <field name="remove_row">
9162         <callback name="remove_row" c:type="remove_row">
9163           <return-value transfer-ownership="none">
9164             <type name="none" c:type="void"/>
9165           </return-value>
9166           <parameters>
9167             <parameter name="clist" transfer-ownership="none">
9168               <type name="CList" c:type="GtkCList*"/>
9169             </parameter>
9170             <parameter name="row" transfer-ownership="none">
9171               <type name="int" c:type="gint"/>
9172             </parameter>
9173           </parameters>
9174         </callback>
9175       </field>
9176       <field name="set_cell_contents">
9177         <callback name="set_cell_contents" c:type="set_cell_contents">
9178           <return-value transfer-ownership="none">
9179             <type name="none" c:type="void"/>
9180           </return-value>
9181           <parameters>
9182             <parameter name="clist" transfer-ownership="none">
9183               <type name="CList" c:type="GtkCList*"/>
9184             </parameter>
9185             <parameter name="clist_row" transfer-ownership="none">
9186               <type name="CListRow" c:type="GtkCListRow*"/>
9187             </parameter>
9188             <parameter name="column" transfer-ownership="none">
9189               <type name="int" c:type="gint"/>
9190             </parameter>
9191             <parameter name="type" transfer-ownership="none">
9192               <type name="CellType" c:type="GtkCellType"/>
9193             </parameter>
9194             <parameter name="text" transfer-ownership="none">
9195               <type name="utf8" c:type="gchar*"/>
9196             </parameter>
9197             <parameter name="spacing" transfer-ownership="none">
9198               <type name="uint8" c:type="guint8"/>
9199             </parameter>
9200             <parameter name="pixmap" transfer-ownership="none">
9201               <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
9202             </parameter>
9203             <parameter name="mask" transfer-ownership="none">
9204               <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
9205             </parameter>
9206           </parameters>
9207         </callback>
9208       </field>
9209       <field name="cell_size_request">
9210         <callback name="cell_size_request" c:type="cell_size_request">
9211           <return-value transfer-ownership="none">
9212             <type name="none" c:type="void"/>
9213           </return-value>
9214           <parameters>
9215             <parameter name="clist" transfer-ownership="none">
9216               <type name="CList" c:type="GtkCList*"/>
9217             </parameter>
9218             <parameter name="clist_row" transfer-ownership="none">
9219               <type name="CListRow" c:type="GtkCListRow*"/>
9220             </parameter>
9221             <parameter name="column" transfer-ownership="none">
9222               <type name="int" c:type="gint"/>
9223             </parameter>
9224             <parameter name="requisition" transfer-ownership="none">
9225               <type name="Requisition" c:type="GtkRequisition*"/>
9226             </parameter>
9227           </parameters>
9228         </callback>
9229       </field>
9230     </record>
9231     <record name="CListColumn" c:type="GtkCListColumn">
9232       <field name="title" writable="1">
9233         <type name="utf8" c:type="gchar*"/>
9234       </field>
9235       <field name="area" writable="1">
9236         <type name="Gdk.Rectangle" c:type="GdkRectangle"/>
9237       </field>
9238       <field name="button" writable="1">
9239         <type name="Widget" c:type="GtkWidget*"/>
9240       </field>
9241       <field name="window" writable="1">
9242         <type name="Gdk.Window" c:type="GdkWindow*"/>
9243       </field>
9244       <field name="width" writable="1">
9245         <type name="int" c:type="gint"/>
9246       </field>
9247       <field name="min_width" writable="1">
9248         <type name="int" c:type="gint"/>
9249       </field>
9250       <field name="max_width" writable="1">
9251         <type name="int" c:type="gint"/>
9252       </field>
9253       <field name="justification" writable="1">
9254         <type name="Justification" c:type="GtkJustification"/>
9255       </field>
9256       <field name="visible" writable="1" bits="1">
9257         <type name="uint" c:type="guint"/>
9258       </field>
9259       <field name="width_set" writable="1" bits="1">
9260         <type name="uint" c:type="guint"/>
9261       </field>
9262       <field name="resizeable" writable="1" bits="1">
9263         <type name="uint" c:type="guint"/>
9264       </field>
9265       <field name="auto_resize" writable="1" bits="1">
9266         <type name="uint" c:type="guint"/>
9267       </field>
9268       <field name="button_passive" writable="1" bits="1">
9269         <type name="uint" c:type="guint"/>
9270       </field>
9271     </record>
9272     <callback name="CListCompareFunc" c:type="GtkCListCompareFunc">
9273       <return-value transfer-ownership="none">
9274         <type name="int" c:type="gint"/>
9275       </return-value>
9276       <parameters>
9277         <parameter name="clist" transfer-ownership="none">
9278           <type name="CList" c:type="GtkCList*"/>
9279         </parameter>
9280         <parameter name="ptr1" transfer-ownership="none">
9281           <type name="any" c:type="gconstpointer"/>
9282         </parameter>
9283         <parameter name="ptr2" transfer-ownership="none">
9284           <type name="any" c:type="gconstpointer"/>
9285         </parameter>
9286       </parameters>
9287     </callback>
9288     <record name="CListDestInfo" c:type="GtkCListDestInfo">
9289       <field name="cell" writable="1">
9290         <type name="CListCellInfo" c:type="GtkCListCellInfo"/>
9291       </field>
9292       <field name="insert_pos" writable="1">
9293         <type name="CListDragPos" c:type="GtkCListDragPos"/>
9294       </field>
9295     </record>
9296     <enumeration name="CListDragPos"
9297                  glib:type-name="GtkCListDragPos"
9298                  glib:get-type="gtk_clist_drag_pos_get_type"
9299                  c:type="GtkCListDragPos">
9300       <member name="none"
9301               value="0"
9302               c:identifier="GTK_CLIST_DRAG_NONE"
9303               glib:nick="none"/>
9304       <member name="before"
9305               value="1"
9306               c:identifier="GTK_CLIST_DRAG_BEFORE"
9307               glib:nick="before"/>
9308       <member name="into"
9309               value="2"
9310               c:identifier="GTK_CLIST_DRAG_INTO"
9311               glib:nick="into"/>
9312       <member name="after"
9313               value="3"
9314               c:identifier="GTK_CLIST_DRAG_AFTER"
9315               glib:nick="after"/>
9316     </enumeration>
9317     <record name="CListRow" c:type="GtkCListRow">
9318       <field name="cell" writable="1">
9319         <type name="Cell" c:type="GtkCell*"/>
9320       </field>
9321       <field name="state" writable="1">
9322         <type name="StateType" c:type="GtkStateType"/>
9323       </field>
9324       <field name="foreground" writable="1">
9325         <type name="Gdk.Color" c:type="GdkColor"/>
9326       </field>
9327       <field name="background" writable="1">
9328         <type name="Gdk.Color" c:type="GdkColor"/>
9329       </field>
9330       <field name="style" writable="1">
9331         <type name="Style" c:type="GtkStyle*"/>
9332       </field>
9333       <field name="data" writable="1">
9334         <type name="any" c:type="gpointer"/>
9335       </field>
9336       <field name="destroy" writable="1">
9337         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
9338       </field>
9339       <field name="fg_set" writable="1" bits="1">
9340         <type name="uint" c:type="guint"/>
9341       </field>
9342       <field name="bg_set" writable="1" bits="1">
9343         <type name="uint" c:type="guint"/>
9344       </field>
9345       <field name="selectable" writable="1" bits="1">
9346         <type name="uint" c:type="guint"/>
9347       </field>
9348     </record>
9349     <class name="CTree"
9350            c:type="GtkCTree"
9351            parent="CList"
9352            glib:type-name="GtkCTree"
9353            glib:get-type="gtk_ctree_get_type"
9354            glib:type-struct="CTreeClass">
9355       <implements name="Atk.ImplementorIface"/>
9356       <implements name="Buildable"/>
9357       <constructor name="new_with_titles"
9358                    c:identifier="gtk_ctree_new_with_titles">
9359         <return-value transfer-ownership="full">
9360           <type name="CTree" c:type="GtkWidget*"/>
9361         </return-value>
9362         <parameters>
9363           <parameter name="columns" transfer-ownership="none">
9364             <type name="int" c:type="gint"/>
9365           </parameter>
9366           <parameter name="tree_column" transfer-ownership="none">
9367             <type name="int" c:type="gint"/>
9368           </parameter>
9369           <parameter name="titles" transfer-ownership="full">
9370             <type name="utf8" c:type="gchar*"/>
9371           </parameter>
9372         </parameters>
9373       </constructor>
9374       <constructor name="new" c:identifier="gtk_ctree_new">
9375         <return-value transfer-ownership="full">
9376           <type name="CTree" c:type="GtkWidget*"/>
9377         </return-value>
9378         <parameters>
9379           <parameter name="columns" transfer-ownership="none">
9380             <type name="int" c:type="gint"/>
9381           </parameter>
9382           <parameter name="tree_column" transfer-ownership="none">
9383             <type name="int" c:type="gint"/>
9384           </parameter>
9385         </parameters>
9386       </constructor>
9387       <method name="insert_node" c:identifier="gtk_ctree_insert_node">
9388         <return-value transfer-ownership="full">
9389           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9390         </return-value>
9391         <parameters>
9392           <parameter name="parent" transfer-ownership="none">
9393             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9394           </parameter>
9395           <parameter name="sibling" transfer-ownership="none">
9396             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9397           </parameter>
9398           <parameter name="text" transfer-ownership="full">
9399             <type name="utf8" c:type="gchar*"/>
9400           </parameter>
9401           <parameter name="spacing" transfer-ownership="none">
9402             <type name="uint8" c:type="guint8"/>
9403           </parameter>
9404           <parameter name="pixmap_closed"
9405                      transfer-ownership="none"
9406                      allow-none="1">
9407             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
9408           </parameter>
9409           <parameter name="mask_closed"
9410                      transfer-ownership="none"
9411                      allow-none="1">
9412             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
9413           </parameter>
9414           <parameter name="pixmap_opened"
9415                      transfer-ownership="none"
9416                      allow-none="1">
9417             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
9418           </parameter>
9419           <parameter name="mask_opened"
9420                      transfer-ownership="none"
9421                      allow-none="1">
9422             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
9423           </parameter>
9424           <parameter name="is_leaf" transfer-ownership="none">
9425             <type name="boolean" c:type="gboolean"/>
9426           </parameter>
9427           <parameter name="expanded" transfer-ownership="none">
9428             <type name="boolean" c:type="gboolean"/>
9429           </parameter>
9430         </parameters>
9431       </method>
9432       <method name="remove_node" c:identifier="gtk_ctree_remove_node">
9433         <return-value transfer-ownership="none">
9434           <type name="none" c:type="void"/>
9435         </return-value>
9436         <parameters>
9437           <parameter name="node" transfer-ownership="none">
9438             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9439           </parameter>
9440         </parameters>
9441       </method>
9442       <method name="insert_gnode" c:identifier="gtk_ctree_insert_gnode">
9443         <return-value transfer-ownership="full">
9444           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9445         </return-value>
9446         <parameters>
9447           <parameter name="parent" transfer-ownership="none">
9448             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9449           </parameter>
9450           <parameter name="sibling" transfer-ownership="none">
9451             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9452           </parameter>
9453           <parameter name="gnode" transfer-ownership="none">
9454             <type name="GLib.Node" c:type="GNode*"/>
9455           </parameter>
9456           <parameter name="func"
9457                      transfer-ownership="none"
9458                      scope="call"
9459                      closure="5">
9460             <type name="CTreeGNodeFunc" c:type="GtkCTreeGNodeFunc"/>
9461           </parameter>
9462           <parameter name="data" transfer-ownership="none">
9463             <type name="any" c:type="gpointer"/>
9464           </parameter>
9465         </parameters>
9466       </method>
9467       <method name="export_to_gnode" c:identifier="gtk_ctree_export_to_gnode">
9468         <return-value transfer-ownership="full">
9469           <type name="GLib.Node" c:type="GNode*"/>
9470         </return-value>
9471         <parameters>
9472           <parameter name="parent" transfer-ownership="none">
9473             <type name="GLib.Node" c:type="GNode*"/>
9474           </parameter>
9475           <parameter name="sibling" transfer-ownership="none">
9476             <type name="GLib.Node" c:type="GNode*"/>
9477           </parameter>
9478           <parameter name="node" transfer-ownership="none">
9479             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9480           </parameter>
9481           <parameter name="func"
9482                      transfer-ownership="none"
9483                      scope="call"
9484                      closure="5">
9485             <type name="CTreeGNodeFunc" c:type="GtkCTreeGNodeFunc"/>
9486           </parameter>
9487           <parameter name="data" transfer-ownership="none">
9488             <type name="any" c:type="gpointer"/>
9489           </parameter>
9490         </parameters>
9491       </method>
9492       <method name="post_recursive" c:identifier="gtk_ctree_post_recursive">
9493         <return-value transfer-ownership="none">
9494           <type name="none" c:type="void"/>
9495         </return-value>
9496         <parameters>
9497           <parameter name="node" transfer-ownership="none">
9498             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9499           </parameter>
9500           <parameter name="func"
9501                      transfer-ownership="none"
9502                      scope="call"
9503                      closure="3">
9504             <type name="CTreeFunc" c:type="GtkCTreeFunc"/>
9505           </parameter>
9506           <parameter name="data" transfer-ownership="none">
9507             <type name="any" c:type="gpointer"/>
9508           </parameter>
9509         </parameters>
9510       </method>
9511       <method name="post_recursive_to_depth"
9512               c:identifier="gtk_ctree_post_recursive_to_depth">
9513         <return-value transfer-ownership="none">
9514           <type name="none" c:type="void"/>
9515         </return-value>
9516         <parameters>
9517           <parameter name="node" transfer-ownership="none">
9518             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9519           </parameter>
9520           <parameter name="depth" transfer-ownership="none">
9521             <type name="int" c:type="gint"/>
9522           </parameter>
9523           <parameter name="func"
9524                      transfer-ownership="none"
9525                      scope="call"
9526                      closure="4">
9527             <type name="CTreeFunc" c:type="GtkCTreeFunc"/>
9528           </parameter>
9529           <parameter name="data" transfer-ownership="none">
9530             <type name="any" c:type="gpointer"/>
9531           </parameter>
9532         </parameters>
9533       </method>
9534       <method name="pre_recursive" c:identifier="gtk_ctree_pre_recursive">
9535         <return-value transfer-ownership="none">
9536           <type name="none" c:type="void"/>
9537         </return-value>
9538         <parameters>
9539           <parameter name="node" transfer-ownership="none">
9540             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9541           </parameter>
9542           <parameter name="func"
9543                      transfer-ownership="none"
9544                      scope="call"
9545                      closure="3">
9546             <type name="CTreeFunc" c:type="GtkCTreeFunc"/>
9547           </parameter>
9548           <parameter name="data" transfer-ownership="none">
9549             <type name="any" c:type="gpointer"/>
9550           </parameter>
9551         </parameters>
9552       </method>
9553       <method name="pre_recursive_to_depth"
9554               c:identifier="gtk_ctree_pre_recursive_to_depth">
9555         <return-value transfer-ownership="none">
9556           <type name="none" c:type="void"/>
9557         </return-value>
9558         <parameters>
9559           <parameter name="node" transfer-ownership="none">
9560             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9561           </parameter>
9562           <parameter name="depth" transfer-ownership="none">
9563             <type name="int" c:type="gint"/>
9564           </parameter>
9565           <parameter name="func"
9566                      transfer-ownership="none"
9567                      scope="call"
9568                      closure="4">
9569             <type name="CTreeFunc" c:type="GtkCTreeFunc"/>
9570           </parameter>
9571           <parameter name="data" transfer-ownership="none">
9572             <type name="any" c:type="gpointer"/>
9573           </parameter>
9574         </parameters>
9575       </method>
9576       <method name="is_viewable" c:identifier="gtk_ctree_is_viewable">
9577         <return-value transfer-ownership="none">
9578           <type name="boolean" c:type="gboolean"/>
9579         </return-value>
9580         <parameters>
9581           <parameter name="node" transfer-ownership="none">
9582             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9583           </parameter>
9584         </parameters>
9585       </method>
9586       <method name="last" c:identifier="gtk_ctree_last">
9587         <return-value transfer-ownership="full">
9588           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9589         </return-value>
9590         <parameters>
9591           <parameter name="node" transfer-ownership="none">
9592             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9593           </parameter>
9594         </parameters>
9595       </method>
9596       <method name="find_node_ptr" c:identifier="gtk_ctree_find_node_ptr">
9597         <return-value transfer-ownership="full">
9598           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9599         </return-value>
9600         <parameters>
9601           <parameter name="ctree_row" transfer-ownership="none">
9602             <type name="CTreeRow" c:type="GtkCTreeRow*"/>
9603           </parameter>
9604         </parameters>
9605       </method>
9606       <method name="node_nth" c:identifier="gtk_ctree_node_nth">
9607         <return-value transfer-ownership="full">
9608           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9609         </return-value>
9610         <parameters>
9611           <parameter name="row" transfer-ownership="none">
9612             <type name="uint" c:type="guint"/>
9613           </parameter>
9614         </parameters>
9615       </method>
9616       <method name="find" c:identifier="gtk_ctree_find">
9617         <return-value transfer-ownership="none">
9618           <type name="boolean" c:type="gboolean"/>
9619         </return-value>
9620         <parameters>
9621           <parameter name="node" transfer-ownership="none">
9622             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9623           </parameter>
9624           <parameter name="child" transfer-ownership="none">
9625             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9626           </parameter>
9627         </parameters>
9628       </method>
9629       <method name="is_ancestor" c:identifier="gtk_ctree_is_ancestor">
9630         <return-value transfer-ownership="none">
9631           <type name="boolean" c:type="gboolean"/>
9632         </return-value>
9633         <parameters>
9634           <parameter name="node" transfer-ownership="none">
9635             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9636           </parameter>
9637           <parameter name="child" transfer-ownership="none">
9638             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9639           </parameter>
9640         </parameters>
9641       </method>
9642       <method name="find_by_row_data"
9643               c:identifier="gtk_ctree_find_by_row_data">
9644         <return-value transfer-ownership="full">
9645           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9646         </return-value>
9647         <parameters>
9648           <parameter name="node" transfer-ownership="none">
9649             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9650           </parameter>
9651           <parameter name="data" transfer-ownership="none">
9652             <type name="any" c:type="gpointer"/>
9653           </parameter>
9654         </parameters>
9655       </method>
9656       <method name="find_all_by_row_data"
9657               c:identifier="gtk_ctree_find_all_by_row_data"
9658               introspectable="0">
9659         <return-value transfer-ownership="full">
9660           <type name="GLib.List" c:type="GList*">
9661             <type name="any" c:type="gpointer"/>
9662           </type>
9663         </return-value>
9664         <parameters>
9665           <parameter name="node" transfer-ownership="none">
9666             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9667           </parameter>
9668           <parameter name="data" transfer-ownership="none">
9669             <type name="any" c:type="gpointer"/>
9670           </parameter>
9671         </parameters>
9672       </method>
9673       <method name="find_by_row_data_custom"
9674               c:identifier="gtk_ctree_find_by_row_data_custom">
9675         <return-value transfer-ownership="full">
9676           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9677         </return-value>
9678         <parameters>
9679           <parameter name="node" transfer-ownership="none">
9680             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9681           </parameter>
9682           <parameter name="data" transfer-ownership="none">
9683             <type name="any" c:type="gpointer"/>
9684           </parameter>
9685           <parameter name="func" transfer-ownership="none" scope="call">
9686             <type name="GLib.CompareFunc" c:type="GCompareFunc"/>
9687           </parameter>
9688         </parameters>
9689       </method>
9690       <method name="find_all_by_row_data_custom"
9691               c:identifier="gtk_ctree_find_all_by_row_data_custom"
9692               introspectable="0">
9693         <return-value transfer-ownership="full">
9694           <type name="GLib.List" c:type="GList*">
9695             <type name="any" c:type="gpointer"/>
9696           </type>
9697         </return-value>
9698         <parameters>
9699           <parameter name="node" transfer-ownership="none">
9700             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9701           </parameter>
9702           <parameter name="data" transfer-ownership="none">
9703             <type name="any" c:type="gpointer"/>
9704           </parameter>
9705           <parameter name="func" transfer-ownership="none" scope="call">
9706             <type name="GLib.CompareFunc" c:type="GCompareFunc"/>
9707           </parameter>
9708         </parameters>
9709       </method>
9710       <method name="is_hot_spot" c:identifier="gtk_ctree_is_hot_spot">
9711         <return-value transfer-ownership="none">
9712           <type name="boolean" c:type="gboolean"/>
9713         </return-value>
9714         <parameters>
9715           <parameter name="x" transfer-ownership="none">
9716             <type name="int" c:type="gint"/>
9717           </parameter>
9718           <parameter name="y" transfer-ownership="none">
9719             <type name="int" c:type="gint"/>
9720           </parameter>
9721         </parameters>
9722       </method>
9723       <method name="move" c:identifier="gtk_ctree_move">
9724         <return-value transfer-ownership="none">
9725           <type name="none" c:type="void"/>
9726         </return-value>
9727         <parameters>
9728           <parameter name="node" transfer-ownership="none">
9729             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9730           </parameter>
9731           <parameter name="new_parent"
9732                      transfer-ownership="none"
9733                      allow-none="1">
9734             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9735           </parameter>
9736           <parameter name="new_sibling"
9737                      transfer-ownership="none"
9738                      allow-none="1">
9739             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9740           </parameter>
9741         </parameters>
9742       </method>
9743       <method name="expand" c:identifier="gtk_ctree_expand">
9744         <return-value transfer-ownership="none">
9745           <type name="none" c:type="void"/>
9746         </return-value>
9747         <parameters>
9748           <parameter name="node" transfer-ownership="none">
9749             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9750           </parameter>
9751         </parameters>
9752       </method>
9753       <method name="expand_recursive"
9754               c:identifier="gtk_ctree_expand_recursive">
9755         <return-value transfer-ownership="none">
9756           <type name="none" c:type="void"/>
9757         </return-value>
9758         <parameters>
9759           <parameter name="node" transfer-ownership="none">
9760             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9761           </parameter>
9762         </parameters>
9763       </method>
9764       <method name="expand_to_depth" c:identifier="gtk_ctree_expand_to_depth">
9765         <return-value transfer-ownership="none">
9766           <type name="none" c:type="void"/>
9767         </return-value>
9768         <parameters>
9769           <parameter name="node" transfer-ownership="none">
9770             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9771           </parameter>
9772           <parameter name="depth" transfer-ownership="none">
9773             <type name="int" c:type="gint"/>
9774           </parameter>
9775         </parameters>
9776       </method>
9777       <method name="collapse" c:identifier="gtk_ctree_collapse">
9778         <return-value transfer-ownership="none">
9779           <type name="none" c:type="void"/>
9780         </return-value>
9781         <parameters>
9782           <parameter name="node" transfer-ownership="none">
9783             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9784           </parameter>
9785         </parameters>
9786       </method>
9787       <method name="collapse_recursive"
9788               c:identifier="gtk_ctree_collapse_recursive">
9789         <return-value transfer-ownership="none">
9790           <type name="none" c:type="void"/>
9791         </return-value>
9792         <parameters>
9793           <parameter name="node" transfer-ownership="none">
9794             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9795           </parameter>
9796         </parameters>
9797       </method>
9798       <method name="collapse_to_depth"
9799               c:identifier="gtk_ctree_collapse_to_depth">
9800         <return-value transfer-ownership="none">
9801           <type name="none" c:type="void"/>
9802         </return-value>
9803         <parameters>
9804           <parameter name="node" transfer-ownership="none">
9805             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9806           </parameter>
9807           <parameter name="depth" transfer-ownership="none">
9808             <type name="int" c:type="gint"/>
9809           </parameter>
9810         </parameters>
9811       </method>
9812       <method name="toggle_expansion"
9813               c:identifier="gtk_ctree_toggle_expansion">
9814         <return-value transfer-ownership="none">
9815           <type name="none" c:type="void"/>
9816         </return-value>
9817         <parameters>
9818           <parameter name="node" transfer-ownership="none">
9819             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9820           </parameter>
9821         </parameters>
9822       </method>
9823       <method name="toggle_expansion_recursive"
9824               c:identifier="gtk_ctree_toggle_expansion_recursive">
9825         <return-value transfer-ownership="none">
9826           <type name="none" c:type="void"/>
9827         </return-value>
9828         <parameters>
9829           <parameter name="node" transfer-ownership="none">
9830             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9831           </parameter>
9832         </parameters>
9833       </method>
9834       <method name="select" c:identifier="gtk_ctree_select">
9835         <return-value transfer-ownership="none">
9836           <type name="none" c:type="void"/>
9837         </return-value>
9838         <parameters>
9839           <parameter name="node" transfer-ownership="none">
9840             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9841           </parameter>
9842         </parameters>
9843       </method>
9844       <method name="select_recursive"
9845               c:identifier="gtk_ctree_select_recursive">
9846         <return-value transfer-ownership="none">
9847           <type name="none" c:type="void"/>
9848         </return-value>
9849         <parameters>
9850           <parameter name="node" transfer-ownership="none">
9851             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9852           </parameter>
9853         </parameters>
9854       </method>
9855       <method name="unselect" c:identifier="gtk_ctree_unselect">
9856         <return-value transfer-ownership="none">
9857           <type name="none" c:type="void"/>
9858         </return-value>
9859         <parameters>
9860           <parameter name="node" transfer-ownership="none">
9861             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9862           </parameter>
9863         </parameters>
9864       </method>
9865       <method name="unselect_recursive"
9866               c:identifier="gtk_ctree_unselect_recursive">
9867         <return-value transfer-ownership="none">
9868           <type name="none" c:type="void"/>
9869         </return-value>
9870         <parameters>
9871           <parameter name="node" transfer-ownership="none">
9872             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9873           </parameter>
9874         </parameters>
9875       </method>
9876       <method name="real_select_recursive"
9877               c:identifier="gtk_ctree_real_select_recursive">
9878         <return-value transfer-ownership="none">
9879           <type name="none" c:type="void"/>
9880         </return-value>
9881         <parameters>
9882           <parameter name="node" transfer-ownership="none">
9883             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9884           </parameter>
9885           <parameter name="state" transfer-ownership="none">
9886             <type name="int" c:type="gint"/>
9887           </parameter>
9888         </parameters>
9889       </method>
9890       <method name="node_set_text" c:identifier="gtk_ctree_node_set_text">
9891         <return-value transfer-ownership="none">
9892           <type name="none" c:type="void"/>
9893         </return-value>
9894         <parameters>
9895           <parameter name="node" transfer-ownership="none">
9896             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9897           </parameter>
9898           <parameter name="column" transfer-ownership="none">
9899             <type name="int" c:type="gint"/>
9900           </parameter>
9901           <parameter name="text" transfer-ownership="none">
9902             <type name="utf8" c:type="gchar*"/>
9903           </parameter>
9904         </parameters>
9905       </method>
9906       <method name="node_set_pixmap" c:identifier="gtk_ctree_node_set_pixmap">
9907         <return-value transfer-ownership="none">
9908           <type name="none" c:type="void"/>
9909         </return-value>
9910         <parameters>
9911           <parameter name="node" transfer-ownership="none">
9912             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9913           </parameter>
9914           <parameter name="column" transfer-ownership="none">
9915             <type name="int" c:type="gint"/>
9916           </parameter>
9917           <parameter name="pixmap" transfer-ownership="none">
9918             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
9919           </parameter>
9920           <parameter name="mask" transfer-ownership="none" allow-none="1">
9921             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
9922           </parameter>
9923         </parameters>
9924       </method>
9925       <method name="node_set_pixtext"
9926               c:identifier="gtk_ctree_node_set_pixtext">
9927         <return-value transfer-ownership="none">
9928           <type name="none" c:type="void"/>
9929         </return-value>
9930         <parameters>
9931           <parameter name="node" transfer-ownership="none">
9932             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9933           </parameter>
9934           <parameter name="column" transfer-ownership="none">
9935             <type name="int" c:type="gint"/>
9936           </parameter>
9937           <parameter name="text" transfer-ownership="none">
9938             <type name="utf8" c:type="gchar*"/>
9939           </parameter>
9940           <parameter name="spacing" transfer-ownership="none">
9941             <type name="uint8" c:type="guint8"/>
9942           </parameter>
9943           <parameter name="pixmap" transfer-ownership="none">
9944             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
9945           </parameter>
9946           <parameter name="mask" transfer-ownership="none" allow-none="1">
9947             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
9948           </parameter>
9949         </parameters>
9950       </method>
9951       <method name="set_node_info" c:identifier="gtk_ctree_set_node_info">
9952         <return-value transfer-ownership="none">
9953           <type name="none" c:type="void"/>
9954         </return-value>
9955         <parameters>
9956           <parameter name="node" transfer-ownership="none">
9957             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
9958           </parameter>
9959           <parameter name="text" transfer-ownership="none">
9960             <type name="utf8" c:type="gchar*"/>
9961           </parameter>
9962           <parameter name="spacing" transfer-ownership="none">
9963             <type name="uint8" c:type="guint8"/>
9964           </parameter>
9965           <parameter name="pixmap_closed"
9966                      transfer-ownership="none"
9967                      allow-none="1">
9968             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
9969           </parameter>
9970           <parameter name="mask_closed"
9971                      transfer-ownership="none"
9972                      allow-none="1">
9973             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
9974           </parameter>
9975           <parameter name="pixmap_opened"
9976                      transfer-ownership="none"
9977                      allow-none="1">
9978             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
9979           </parameter>
9980           <parameter name="mask_opened"
9981                      transfer-ownership="none"
9982                      allow-none="1">
9983             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
9984           </parameter>
9985           <parameter name="is_leaf" transfer-ownership="none">
9986             <type name="boolean" c:type="gboolean"/>
9987           </parameter>
9988           <parameter name="expanded" transfer-ownership="none">
9989             <type name="boolean" c:type="gboolean"/>
9990           </parameter>
9991         </parameters>
9992       </method>
9993       <method name="node_set_shift" c:identifier="gtk_ctree_node_set_shift">
9994         <return-value transfer-ownership="none">
9995           <type name="none" c:type="void"/>
9996         </return-value>
9997         <parameters>
9998           <parameter name="node" transfer-ownership="none">
9999             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10000           </parameter>
10001           <parameter name="column" transfer-ownership="none">
10002             <type name="int" c:type="gint"/>
10003           </parameter>
10004           <parameter name="vertical" transfer-ownership="none">
10005             <type name="int" c:type="gint"/>
10006           </parameter>
10007           <parameter name="horizontal" transfer-ownership="none">
10008             <type name="int" c:type="gint"/>
10009           </parameter>
10010         </parameters>
10011       </method>
10012       <method name="node_set_selectable"
10013               c:identifier="gtk_ctree_node_set_selectable">
10014         <return-value transfer-ownership="none">
10015           <type name="none" c:type="void"/>
10016         </return-value>
10017         <parameters>
10018           <parameter name="node" transfer-ownership="none">
10019             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10020           </parameter>
10021           <parameter name="selectable" transfer-ownership="none">
10022             <type name="boolean" c:type="gboolean"/>
10023           </parameter>
10024         </parameters>
10025       </method>
10026       <method name="node_get_selectable"
10027               c:identifier="gtk_ctree_node_get_selectable">
10028         <return-value transfer-ownership="none">
10029           <type name="boolean" c:type="gboolean"/>
10030         </return-value>
10031         <parameters>
10032           <parameter name="node" transfer-ownership="none">
10033             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10034           </parameter>
10035         </parameters>
10036       </method>
10037       <method name="node_get_cell_type"
10038               c:identifier="gtk_ctree_node_get_cell_type">
10039         <return-value transfer-ownership="full">
10040           <type name="CellType" c:type="GtkCellType"/>
10041         </return-value>
10042         <parameters>
10043           <parameter name="node" transfer-ownership="none">
10044             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10045           </parameter>
10046           <parameter name="column" transfer-ownership="none">
10047             <type name="int" c:type="gint"/>
10048           </parameter>
10049         </parameters>
10050       </method>
10051       <method name="node_get_text" c:identifier="gtk_ctree_node_get_text">
10052         <return-value transfer-ownership="none">
10053           <type name="boolean" c:type="gboolean"/>
10054         </return-value>
10055         <parameters>
10056           <parameter name="node" transfer-ownership="none">
10057             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10058           </parameter>
10059           <parameter name="column" transfer-ownership="none">
10060             <type name="int" c:type="gint"/>
10061           </parameter>
10062           <parameter name="text" transfer-ownership="none">
10063             <array c:type="gchar**">
10064               <type name="utf8"/>
10065             </array>
10066           </parameter>
10067         </parameters>
10068       </method>
10069       <method name="node_get_pixmap" c:identifier="gtk_ctree_node_get_pixmap">
10070         <return-value transfer-ownership="none">
10071           <type name="boolean" c:type="gboolean"/>
10072         </return-value>
10073         <parameters>
10074           <parameter name="node" transfer-ownership="none">
10075             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10076           </parameter>
10077           <parameter name="column" transfer-ownership="none">
10078             <type name="int" c:type="gint"/>
10079           </parameter>
10080           <parameter name="pixmap" transfer-ownership="none">
10081             <type name="Gdk.Pixmap" c:type="GdkPixmap**"/>
10082           </parameter>
10083           <parameter name="mask" transfer-ownership="none">
10084             <type name="Gdk.Bitmap" c:type="GdkBitmap**"/>
10085           </parameter>
10086         </parameters>
10087       </method>
10088       <method name="node_get_pixtext"
10089               c:identifier="gtk_ctree_node_get_pixtext">
10090         <return-value transfer-ownership="none">
10091           <type name="boolean" c:type="gboolean"/>
10092         </return-value>
10093         <parameters>
10094           <parameter name="node" transfer-ownership="none">
10095             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10096           </parameter>
10097           <parameter name="column" transfer-ownership="none">
10098             <type name="int" c:type="gint"/>
10099           </parameter>
10100           <parameter name="text" transfer-ownership="none">
10101             <array c:type="gchar**">
10102               <type name="utf8"/>
10103             </array>
10104           </parameter>
10105           <parameter name="spacing" transfer-ownership="none">
10106             <array c:type="guint8*">
10107               <type name="uint8"/>
10108             </array>
10109           </parameter>
10110           <parameter name="pixmap" transfer-ownership="none">
10111             <type name="Gdk.Pixmap" c:type="GdkPixmap**"/>
10112           </parameter>
10113           <parameter name="mask" transfer-ownership="none">
10114             <type name="Gdk.Bitmap" c:type="GdkBitmap**"/>
10115           </parameter>
10116         </parameters>
10117       </method>
10118       <method name="get_node_info" c:identifier="gtk_ctree_get_node_info">
10119         <return-value transfer-ownership="none">
10120           <type name="boolean" c:type="gboolean"/>
10121         </return-value>
10122         <parameters>
10123           <parameter name="node" transfer-ownership="none">
10124             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10125           </parameter>
10126           <parameter name="text" transfer-ownership="none">
10127             <array c:type="gchar**">
10128               <type name="utf8"/>
10129             </array>
10130           </parameter>
10131           <parameter name="spacing" transfer-ownership="none">
10132             <array c:type="guint8*">
10133               <type name="uint8"/>
10134             </array>
10135           </parameter>
10136           <parameter name="pixmap_closed" transfer-ownership="none">
10137             <type name="Gdk.Pixmap" c:type="GdkPixmap**"/>
10138           </parameter>
10139           <parameter name="mask_closed" transfer-ownership="none">
10140             <type name="Gdk.Bitmap" c:type="GdkBitmap**"/>
10141           </parameter>
10142           <parameter name="pixmap_opened" transfer-ownership="none">
10143             <type name="Gdk.Pixmap" c:type="GdkPixmap**"/>
10144           </parameter>
10145           <parameter name="mask_opened" transfer-ownership="none">
10146             <type name="Gdk.Bitmap" c:type="GdkBitmap**"/>
10147           </parameter>
10148           <parameter name="is_leaf"
10149                      direction="out"
10150                      caller-allocates="0"
10151                      transfer-ownership="full">
10152             <type name="boolean" c:type="gboolean*"/>
10153           </parameter>
10154           <parameter name="expanded"
10155                      direction="out"
10156                      caller-allocates="0"
10157                      transfer-ownership="full">
10158             <type name="boolean" c:type="gboolean*"/>
10159           </parameter>
10160         </parameters>
10161       </method>
10162       <method name="node_set_row_style"
10163               c:identifier="gtk_ctree_node_set_row_style">
10164         <return-value transfer-ownership="none">
10165           <type name="none" c:type="void"/>
10166         </return-value>
10167         <parameters>
10168           <parameter name="node" transfer-ownership="none">
10169             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10170           </parameter>
10171           <parameter name="style" transfer-ownership="none">
10172             <type name="Style" c:type="GtkStyle*"/>
10173           </parameter>
10174         </parameters>
10175       </method>
10176       <method name="node_get_row_style"
10177               c:identifier="gtk_ctree_node_get_row_style">
10178         <return-value transfer-ownership="full">
10179           <type name="Style" c:type="GtkStyle*"/>
10180         </return-value>
10181         <parameters>
10182           <parameter name="node" transfer-ownership="none">
10183             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10184           </parameter>
10185         </parameters>
10186       </method>
10187       <method name="node_set_cell_style"
10188               c:identifier="gtk_ctree_node_set_cell_style">
10189         <return-value transfer-ownership="none">
10190           <type name="none" c:type="void"/>
10191         </return-value>
10192         <parameters>
10193           <parameter name="node" transfer-ownership="none">
10194             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10195           </parameter>
10196           <parameter name="column" transfer-ownership="none">
10197             <type name="int" c:type="gint"/>
10198           </parameter>
10199           <parameter name="style" transfer-ownership="none">
10200             <type name="Style" c:type="GtkStyle*"/>
10201           </parameter>
10202         </parameters>
10203       </method>
10204       <method name="node_get_cell_style"
10205               c:identifier="gtk_ctree_node_get_cell_style">
10206         <return-value transfer-ownership="full">
10207           <type name="Style" c:type="GtkStyle*"/>
10208         </return-value>
10209         <parameters>
10210           <parameter name="node" transfer-ownership="none">
10211             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10212           </parameter>
10213           <parameter name="column" transfer-ownership="none">
10214             <type name="int" c:type="gint"/>
10215           </parameter>
10216         </parameters>
10217       </method>
10218       <method name="node_set_foreground"
10219               c:identifier="gtk_ctree_node_set_foreground">
10220         <return-value transfer-ownership="none">
10221           <type name="none" c:type="void"/>
10222         </return-value>
10223         <parameters>
10224           <parameter name="node" transfer-ownership="none">
10225             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10226           </parameter>
10227           <parameter name="color" transfer-ownership="none">
10228             <type name="Gdk.Color" c:type="GdkColor*"/>
10229           </parameter>
10230         </parameters>
10231       </method>
10232       <method name="node_set_background"
10233               c:identifier="gtk_ctree_node_set_background">
10234         <return-value transfer-ownership="none">
10235           <type name="none" c:type="void"/>
10236         </return-value>
10237         <parameters>
10238           <parameter name="node" transfer-ownership="none">
10239             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10240           </parameter>
10241           <parameter name="color" transfer-ownership="none">
10242             <type name="Gdk.Color" c:type="GdkColor*"/>
10243           </parameter>
10244         </parameters>
10245       </method>
10246       <method name="node_set_row_data"
10247               c:identifier="gtk_ctree_node_set_row_data">
10248         <return-value transfer-ownership="none">
10249           <type name="none" c:type="void"/>
10250         </return-value>
10251         <parameters>
10252           <parameter name="node" transfer-ownership="none">
10253             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10254           </parameter>
10255           <parameter name="data" transfer-ownership="none">
10256             <type name="any" c:type="gpointer"/>
10257           </parameter>
10258         </parameters>
10259       </method>
10260       <method name="node_set_row_data_full"
10261               c:identifier="gtk_ctree_node_set_row_data_full">
10262         <return-value transfer-ownership="none">
10263           <type name="none" c:type="void"/>
10264         </return-value>
10265         <parameters>
10266           <parameter name="node" transfer-ownership="none">
10267             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10268           </parameter>
10269           <parameter name="data" transfer-ownership="none">
10270             <type name="any" c:type="gpointer"/>
10271           </parameter>
10272           <parameter name="destroy" transfer-ownership="none" scope="call">
10273             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
10274           </parameter>
10275         </parameters>
10276       </method>
10277       <method name="node_get_row_data"
10278               c:identifier="gtk_ctree_node_get_row_data">
10279         <return-value transfer-ownership="none">
10280           <type name="any" c:type="gpointer"/>
10281         </return-value>
10282         <parameters>
10283           <parameter name="node" transfer-ownership="none">
10284             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10285           </parameter>
10286         </parameters>
10287       </method>
10288       <method name="node_moveto" c:identifier="gtk_ctree_node_moveto">
10289         <return-value transfer-ownership="none">
10290           <type name="none" c:type="void"/>
10291         </return-value>
10292         <parameters>
10293           <parameter name="node" transfer-ownership="none">
10294             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10295           </parameter>
10296           <parameter name="column" transfer-ownership="none">
10297             <type name="int" c:type="gint"/>
10298           </parameter>
10299           <parameter name="row_align" transfer-ownership="none">
10300             <type name="float" c:type="gfloat"/>
10301           </parameter>
10302           <parameter name="col_align" transfer-ownership="none">
10303             <type name="float" c:type="gfloat"/>
10304           </parameter>
10305         </parameters>
10306       </method>
10307       <method name="node_is_visible" c:identifier="gtk_ctree_node_is_visible">
10308         <return-value transfer-ownership="full">
10309           <type name="Visibility" c:type="GtkVisibility"/>
10310         </return-value>
10311         <parameters>
10312           <parameter name="node" transfer-ownership="none">
10313             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10314           </parameter>
10315         </parameters>
10316       </method>
10317       <method name="set_indent" c:identifier="gtk_ctree_set_indent">
10318         <return-value transfer-ownership="none">
10319           <type name="none" c:type="void"/>
10320         </return-value>
10321         <parameters>
10322           <parameter name="indent" transfer-ownership="none">
10323             <type name="int" c:type="gint"/>
10324           </parameter>
10325         </parameters>
10326       </method>
10327       <method name="set_spacing" c:identifier="gtk_ctree_set_spacing">
10328         <return-value transfer-ownership="none">
10329           <type name="none" c:type="void"/>
10330         </return-value>
10331         <parameters>
10332           <parameter name="spacing" transfer-ownership="none">
10333             <type name="int" c:type="gint"/>
10334           </parameter>
10335         </parameters>
10336       </method>
10337       <method name="set_show_stub" c:identifier="gtk_ctree_set_show_stub">
10338         <return-value transfer-ownership="none">
10339           <type name="none" c:type="void"/>
10340         </return-value>
10341         <parameters>
10342           <parameter name="show_stub" transfer-ownership="none">
10343             <type name="boolean" c:type="gboolean"/>
10344           </parameter>
10345         </parameters>
10346       </method>
10347       <method name="set_line_style" c:identifier="gtk_ctree_set_line_style">
10348         <return-value transfer-ownership="none">
10349           <type name="none" c:type="void"/>
10350         </return-value>
10351         <parameters>
10352           <parameter name="line_style" transfer-ownership="none">
10353             <type name="CTreeLineStyle" c:type="GtkCTreeLineStyle"/>
10354           </parameter>
10355         </parameters>
10356       </method>
10357       <method name="set_expander_style"
10358               c:identifier="gtk_ctree_set_expander_style">
10359         <return-value transfer-ownership="none">
10360           <type name="none" c:type="void"/>
10361         </return-value>
10362         <parameters>
10363           <parameter name="expander_style" transfer-ownership="none">
10364             <type name="CTreeExpanderStyle" c:type="GtkCTreeExpanderStyle"/>
10365           </parameter>
10366         </parameters>
10367       </method>
10368       <method name="set_drag_compare_func"
10369               c:identifier="gtk_ctree_set_drag_compare_func">
10370         <return-value transfer-ownership="none">
10371           <type name="none" c:type="void"/>
10372         </return-value>
10373         <parameters>
10374           <parameter name="cmp_func" transfer-ownership="none" scope="call">
10375             <type name="CTreeCompareDragFunc"
10376                   c:type="GtkCTreeCompareDragFunc"/>
10377           </parameter>
10378         </parameters>
10379       </method>
10380       <method name="sort_node" c:identifier="gtk_ctree_sort_node">
10381         <return-value transfer-ownership="none">
10382           <type name="none" c:type="void"/>
10383         </return-value>
10384         <parameters>
10385           <parameter name="node" transfer-ownership="none">
10386             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10387           </parameter>
10388         </parameters>
10389       </method>
10390       <method name="sort_recursive" c:identifier="gtk_ctree_sort_recursive">
10391         <return-value transfer-ownership="none">
10392           <type name="none" c:type="void"/>
10393         </return-value>
10394         <parameters>
10395           <parameter name="node" transfer-ownership="none">
10396             <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10397           </parameter>
10398         </parameters>
10399       </method>
10400       <property name="expander-style" writable="1" transfer-ownership="none">
10401         <type name="CTreeExpanderStyle" c:type="GtkCTreeExpanderStyle"/>
10402       </property>
10403       <property name="indent" writable="1" transfer-ownership="none">
10404         <type name="uint" c:type="guint"/>
10405       </property>
10406       <property name="line-style" writable="1" transfer-ownership="none">
10407         <type name="CTreeLineStyle" c:type="GtkCTreeLineStyle"/>
10408       </property>
10409       <property name="n-columns"
10410                 writable="1"
10411                 construct-only="1"
10412                 transfer-ownership="none">
10413         <type name="uint" c:type="guint"/>
10414       </property>
10415       <property name="show-stub" writable="1" transfer-ownership="none">
10416         <type name="boolean" c:type="gboolean"/>
10417       </property>
10418       <property name="spacing" writable="1" transfer-ownership="none">
10419         <type name="uint" c:type="guint"/>
10420       </property>
10421       <property name="tree-column"
10422                 writable="1"
10423                 construct-only="1"
10424                 transfer-ownership="none">
10425         <type name="uint" c:type="guint"/>
10426       </property>
10427       <field name="clist">
10428         <type name="CList" c:type="GtkCList"/>
10429       </field>
10430       <field name="lines_gc">
10431         <type name="Gdk.GC" c:type="GdkGC*"/>
10432       </field>
10433       <field name="tree_indent">
10434         <type name="int" c:type="gint"/>
10435       </field>
10436       <field name="tree_spacing">
10437         <type name="int" c:type="gint"/>
10438       </field>
10439       <field name="tree_column">
10440         <type name="int" c:type="gint"/>
10441       </field>
10442       <field name="line_style" bits="2">
10443         <type name="uint" c:type="guint"/>
10444       </field>
10445       <field name="expander_style" bits="2">
10446         <type name="uint" c:type="guint"/>
10447       </field>
10448       <field name="show_stub" bits="1">
10449         <type name="uint" c:type="guint"/>
10450       </field>
10451       <field name="drag_compare">
10452         <type name="CTreeCompareDragFunc" c:type="GtkCTreeCompareDragFunc"/>
10453       </field>
10454       <glib:signal name="change-focus-row-expansion">
10455         <return-value transfer-ownership="full">
10456           <type name="none" c:type="void"/>
10457         </return-value>
10458         <parameters>
10459           <parameter name="object" transfer-ownership="none">
10460             <type name="CTreeExpansionType" c:type="GtkCTreeExpansionType"/>
10461           </parameter>
10462         </parameters>
10463       </glib:signal>
10464       <glib:signal name="tree-collapse">
10465         <return-value transfer-ownership="full">
10466           <type name="none" c:type="void"/>
10467         </return-value>
10468         <parameters>
10469           <parameter name="object" transfer-ownership="none">
10470             <type name="CTreeNode" c:type="GtkCTreeNode"/>
10471           </parameter>
10472         </parameters>
10473       </glib:signal>
10474       <glib:signal name="tree-expand">
10475         <return-value transfer-ownership="full">
10476           <type name="none" c:type="void"/>
10477         </return-value>
10478         <parameters>
10479           <parameter name="object" transfer-ownership="none">
10480             <type name="CTreeNode" c:type="GtkCTreeNode"/>
10481           </parameter>
10482         </parameters>
10483       </glib:signal>
10484       <glib:signal name="tree-move">
10485         <return-value transfer-ownership="full">
10486           <type name="none" c:type="void"/>
10487         </return-value>
10488         <parameters>
10489           <parameter name="object" transfer-ownership="none">
10490             <type name="CTreeNode" c:type="GtkCTreeNode"/>
10491           </parameter>
10492           <parameter name="p0" transfer-ownership="none">
10493             <type name="CTreeNode" c:type="GtkCTreeNode"/>
10494           </parameter>
10495           <parameter name="p1" transfer-ownership="none">
10496             <type name="CTreeNode" c:type="GtkCTreeNode"/>
10497           </parameter>
10498         </parameters>
10499       </glib:signal>
10500       <glib:signal name="tree-select-row">
10501         <return-value transfer-ownership="full">
10502           <type name="none" c:type="void"/>
10503         </return-value>
10504         <parameters>
10505           <parameter name="object" transfer-ownership="none">
10506             <type name="CTreeNode" c:type="GtkCTreeNode"/>
10507           </parameter>
10508           <parameter name="p0" transfer-ownership="none">
10509             <type name="int" c:type="gint"/>
10510           </parameter>
10511         </parameters>
10512       </glib:signal>
10513       <glib:signal name="tree-unselect-row">
10514         <return-value transfer-ownership="full">
10515           <type name="none" c:type="void"/>
10516         </return-value>
10517         <parameters>
10518           <parameter name="object" transfer-ownership="none">
10519             <type name="CTreeNode" c:type="GtkCTreeNode"/>
10520           </parameter>
10521           <parameter name="p0" transfer-ownership="none">
10522             <type name="int" c:type="gint"/>
10523           </parameter>
10524         </parameters>
10525       </glib:signal>
10526     </class>
10527     <record name="CTreeClass"
10528             c:type="GtkCTreeClass"
10529             glib:is-gtype-struct-for="CTree">
10530       <field name="parent_class">
10531         <type name="CListClass" c:type="GtkCListClass"/>
10532       </field>
10533       <field name="tree_select_row">
10534         <callback name="tree_select_row" c:type="tree_select_row">
10535           <return-value transfer-ownership="none">
10536             <type name="none" c:type="void"/>
10537           </return-value>
10538           <parameters>
10539             <parameter name="ctree" transfer-ownership="none">
10540               <type name="CTree" c:type="GtkCTree*"/>
10541             </parameter>
10542             <parameter name="row" transfer-ownership="none">
10543               <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10544             </parameter>
10545             <parameter name="column" transfer-ownership="none">
10546               <type name="int" c:type="gint"/>
10547             </parameter>
10548           </parameters>
10549         </callback>
10550       </field>
10551       <field name="tree_unselect_row">
10552         <callback name="tree_unselect_row" c:type="tree_unselect_row">
10553           <return-value transfer-ownership="none">
10554             <type name="none" c:type="void"/>
10555           </return-value>
10556           <parameters>
10557             <parameter name="ctree" transfer-ownership="none">
10558               <type name="CTree" c:type="GtkCTree*"/>
10559             </parameter>
10560             <parameter name="row" transfer-ownership="none">
10561               <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10562             </parameter>
10563             <parameter name="column" transfer-ownership="none">
10564               <type name="int" c:type="gint"/>
10565             </parameter>
10566           </parameters>
10567         </callback>
10568       </field>
10569       <field name="tree_expand">
10570         <callback name="tree_expand" c:type="tree_expand">
10571           <return-value transfer-ownership="none">
10572             <type name="none" c:type="void"/>
10573           </return-value>
10574           <parameters>
10575             <parameter name="ctree" transfer-ownership="none">
10576               <type name="CTree" c:type="GtkCTree*"/>
10577             </parameter>
10578             <parameter name="node" transfer-ownership="none">
10579               <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10580             </parameter>
10581           </parameters>
10582         </callback>
10583       </field>
10584       <field name="tree_collapse">
10585         <callback name="tree_collapse" c:type="tree_collapse">
10586           <return-value transfer-ownership="none">
10587             <type name="none" c:type="void"/>
10588           </return-value>
10589           <parameters>
10590             <parameter name="ctree" transfer-ownership="none">
10591               <type name="CTree" c:type="GtkCTree*"/>
10592             </parameter>
10593             <parameter name="node" transfer-ownership="none">
10594               <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10595             </parameter>
10596           </parameters>
10597         </callback>
10598       </field>
10599       <field name="tree_move">
10600         <callback name="tree_move" c:type="tree_move">
10601           <return-value transfer-ownership="none">
10602             <type name="none" c:type="void"/>
10603           </return-value>
10604           <parameters>
10605             <parameter name="ctree" transfer-ownership="none">
10606               <type name="CTree" c:type="GtkCTree*"/>
10607             </parameter>
10608             <parameter name="node" transfer-ownership="none">
10609               <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10610             </parameter>
10611             <parameter name="new_parent" transfer-ownership="none">
10612               <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10613             </parameter>
10614             <parameter name="new_sibling" transfer-ownership="none">
10615               <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10616             </parameter>
10617           </parameters>
10618         </callback>
10619       </field>
10620       <field name="change_focus_row_expansion">
10621         <callback name="change_focus_row_expansion"
10622                   c:type="change_focus_row_expansion">
10623           <return-value transfer-ownership="none">
10624             <type name="none" c:type="void"/>
10625           </return-value>
10626           <parameters>
10627             <parameter name="ctree" transfer-ownership="none">
10628               <type name="CTree" c:type="GtkCTree*"/>
10629             </parameter>
10630             <parameter name="action" transfer-ownership="none">
10631               <type name="CTreeExpansionType" c:type="GtkCTreeExpansionType"/>
10632             </parameter>
10633           </parameters>
10634         </callback>
10635       </field>
10636     </record>
10637     <callback name="CTreeCompareDragFunc" c:type="GtkCTreeCompareDragFunc">
10638       <return-value transfer-ownership="none">
10639         <type name="boolean" c:type="gboolean"/>
10640       </return-value>
10641       <parameters>
10642         <parameter name="ctree" transfer-ownership="none">
10643           <type name="CTree" c:type="GtkCTree*"/>
10644         </parameter>
10645         <parameter name="source_node" transfer-ownership="none">
10646           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10647         </parameter>
10648         <parameter name="new_parent" transfer-ownership="none">
10649           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10650         </parameter>
10651         <parameter name="new_sibling" transfer-ownership="none">
10652           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10653         </parameter>
10654       </parameters>
10655     </callback>
10656     <enumeration name="CTreeExpanderStyle"
10657                  glib:type-name="GtkCTreeExpanderStyle"
10658                  glib:get-type="gtk_ctree_expander_style_get_type"
10659                  c:type="GtkCTreeExpanderStyle">
10660       <member name="none"
10661               value="0"
10662               c:identifier="GTK_CTREE_EXPANDER_NONE"
10663               glib:nick="none"/>
10664       <member name="square"
10665               value="1"
10666               c:identifier="GTK_CTREE_EXPANDER_SQUARE"
10667               glib:nick="square"/>
10668       <member name="triangle"
10669               value="2"
10670               c:identifier="GTK_CTREE_EXPANDER_TRIANGLE"
10671               glib:nick="triangle"/>
10672       <member name="circular"
10673               value="3"
10674               c:identifier="GTK_CTREE_EXPANDER_CIRCULAR"
10675               glib:nick="circular"/>
10676     </enumeration>
10677     <enumeration name="CTreeExpansionType"
10678                  glib:type-name="GtkCTreeExpansionType"
10679                  glib:get-type="gtk_ctree_expansion_type_get_type"
10680                  c:type="GtkCTreeExpansionType">
10681       <member name="expand"
10682               value="0"
10683               c:identifier="GTK_CTREE_EXPANSION_EXPAND"
10684               glib:nick="expand"/>
10685       <member name="expand_recursive"
10686               value="1"
10687               c:identifier="GTK_CTREE_EXPANSION_EXPAND_RECURSIVE"
10688               glib:nick="expand-recursive"/>
10689       <member name="collapse"
10690               value="2"
10691               c:identifier="GTK_CTREE_EXPANSION_COLLAPSE"
10692               glib:nick="collapse"/>
10693       <member name="collapse_recursive"
10694               value="3"
10695               c:identifier="GTK_CTREE_EXPANSION_COLLAPSE_RECURSIVE"
10696               glib:nick="collapse-recursive"/>
10697       <member name="toggle"
10698               value="4"
10699               c:identifier="GTK_CTREE_EXPANSION_TOGGLE"
10700               glib:nick="toggle"/>
10701       <member name="toggle_recursive"
10702               value="5"
10703               c:identifier="GTK_CTREE_EXPANSION_TOGGLE_RECURSIVE"
10704               glib:nick="toggle-recursive"/>
10705     </enumeration>
10706     <callback name="CTreeFunc" c:type="GtkCTreeFunc">
10707       <return-value transfer-ownership="none">
10708         <type name="none" c:type="void"/>
10709       </return-value>
10710       <parameters>
10711         <parameter name="ctree" transfer-ownership="none">
10712           <type name="CTree" c:type="GtkCTree*"/>
10713         </parameter>
10714         <parameter name="node" transfer-ownership="none">
10715           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10716         </parameter>
10717         <parameter name="data" transfer-ownership="none">
10718           <type name="any" c:type="gpointer"/>
10719         </parameter>
10720       </parameters>
10721     </callback>
10722     <callback name="CTreeGNodeFunc" c:type="GtkCTreeGNodeFunc">
10723       <return-value transfer-ownership="none">
10724         <type name="boolean" c:type="gboolean"/>
10725       </return-value>
10726       <parameters>
10727         <parameter name="ctree" transfer-ownership="none">
10728           <type name="CTree" c:type="GtkCTree*"/>
10729         </parameter>
10730         <parameter name="depth" transfer-ownership="none">
10731           <type name="uint" c:type="guint"/>
10732         </parameter>
10733         <parameter name="gnode" transfer-ownership="none">
10734           <type name="GLib.Node" c:type="GNode*"/>
10735         </parameter>
10736         <parameter name="cnode" transfer-ownership="none">
10737           <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10738         </parameter>
10739         <parameter name="data" transfer-ownership="none">
10740           <type name="any" c:type="gpointer"/>
10741         </parameter>
10742       </parameters>
10743     </callback>
10744     <enumeration name="CTreeLineStyle"
10745                  glib:type-name="GtkCTreeLineStyle"
10746                  glib:get-type="gtk_ctree_line_style_get_type"
10747                  c:type="GtkCTreeLineStyle">
10748       <member name="none"
10749               value="0"
10750               c:identifier="GTK_CTREE_LINES_NONE"
10751               glib:nick="none"/>
10752       <member name="solid"
10753               value="1"
10754               c:identifier="GTK_CTREE_LINES_SOLID"
10755               glib:nick="solid"/>
10756       <member name="dotted"
10757               value="2"
10758               c:identifier="GTK_CTREE_LINES_DOTTED"
10759               glib:nick="dotted"/>
10760       <member name="tabbed"
10761               value="3"
10762               c:identifier="GTK_CTREE_LINES_TABBED"
10763               glib:nick="tabbed"/>
10764     </enumeration>
10765     <record name="CTreeNode" c:type="GtkCTreeNode">
10766       <field name="list" writable="1">
10767         <type name="GLib.List" c:type="GList">
10768           <type name="any" c:type="gpointer"/>
10769         </type>
10770       </field>
10771     </record>
10772     <enumeration name="CTreePos"
10773                  glib:type-name="GtkCTreePos"
10774                  glib:get-type="gtk_ctree_pos_get_type"
10775                  c:type="GtkCTreePos">
10776       <member name="before"
10777               value="0"
10778               c:identifier="GTK_CTREE_POS_BEFORE"
10779               glib:nick="before"/>
10780       <member name="as_child"
10781               value="1"
10782               c:identifier="GTK_CTREE_POS_AS_CHILD"
10783               glib:nick="as-child"/>
10784       <member name="after"
10785               value="2"
10786               c:identifier="GTK_CTREE_POS_AFTER"
10787               glib:nick="after"/>
10788     </enumeration>
10789     <record name="CTreeRow" c:type="GtkCTreeRow">
10790       <field name="row" writable="1">
10791         <type name="CListRow" c:type="GtkCListRow"/>
10792       </field>
10793       <field name="parent" writable="1">
10794         <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10795       </field>
10796       <field name="sibling" writable="1">
10797         <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10798       </field>
10799       <field name="children" writable="1">
10800         <type name="CTreeNode" c:type="GtkCTreeNode*"/>
10801       </field>
10802       <field name="pixmap_closed" writable="1">
10803         <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
10804       </field>
10805       <field name="mask_closed" writable="1">
10806         <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
10807       </field>
10808       <field name="pixmap_opened" writable="1">
10809         <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
10810       </field>
10811       <field name="mask_opened" writable="1">
10812         <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
10813       </field>
10814       <field name="level" writable="1">
10815         <type name="uint16" c:type="guint16"/>
10816       </field>
10817       <field name="is_leaf" writable="1" bits="1">
10818         <type name="uint" c:type="guint"/>
10819       </field>
10820       <field name="expanded" writable="1" bits="1">
10821         <type name="uint" c:type="guint"/>
10822       </field>
10823     </record>
10824     <class name="Calendar"
10825            c:type="GtkCalendar"
10826            parent="Widget"
10827            glib:type-name="GtkCalendar"
10828            glib:get-type="gtk_calendar_get_type"
10829            glib:type-struct="CalendarClass">
10830       <implements name="Atk.ImplementorIface"/>
10831       <implements name="Buildable"/>
10832       <constructor name="new" c:identifier="gtk_calendar_new">
10833         <doc xml:whitespace="preserve">Creates a new calendar, with the current date being selected.</doc>
10834         <return-value transfer-ownership="full">
10835           <doc xml:whitespace="preserve">a newly #GtkCalendar widget</doc>
10836           <type name="Calendar" c:type="GtkWidget*"/>
10837         </return-value>
10838       </constructor>
10839       <method name="select_month" c:identifier="gtk_calendar_select_month">
10840         <doc xml:whitespace="preserve">Shifts the calendar to a different month.</doc>
10841         <return-value transfer-ownership="none">
10842           <doc xml:whitespace="preserve">%TRUE, always</doc>
10843           <type name="boolean" c:type="gboolean"/>
10844         </return-value>
10845         <parameters>
10846           <parameter name="month" transfer-ownership="none">
10847             <doc xml:whitespace="preserve">a month number between 0 and 11.</doc>
10848             <type name="uint" c:type="guint"/>
10849           </parameter>
10850           <parameter name="year" transfer-ownership="none">
10851             <doc xml:whitespace="preserve">the year the month is in.</doc>
10852             <type name="uint" c:type="guint"/>
10853           </parameter>
10854         </parameters>
10855       </method>
10856       <method name="select_day" c:identifier="gtk_calendar_select_day">
10857         <doc xml:whitespace="preserve">Selects a day from the current month.</doc>
10858         <return-value transfer-ownership="none">
10859           <type name="none" c:type="void"/>
10860         </return-value>
10861         <parameters>
10862           <parameter name="day" transfer-ownership="none">
10863             <doc xml:whitespace="preserve">the day number between 1 and 31, or 0 to unselect the currently selected day.</doc>
10864             <type name="uint" c:type="guint"/>
10865           </parameter>
10866         </parameters>
10867       </method>
10868       <method name="mark_day" c:identifier="gtk_calendar_mark_day">
10869         <doc xml:whitespace="preserve">Places a visual marker on a particular day.</doc>
10870         <return-value transfer-ownership="none">
10871           <doc xml:whitespace="preserve">%TRUE, always</doc>
10872           <type name="boolean" c:type="gboolean"/>
10873         </return-value>
10874         <parameters>
10875           <parameter name="day" transfer-ownership="none">
10876             <doc xml:whitespace="preserve">the day number to mark between 1 and 31.</doc>
10877             <type name="uint" c:type="guint"/>
10878           </parameter>
10879         </parameters>
10880       </method>
10881       <method name="unmark_day" c:identifier="gtk_calendar_unmark_day">
10882         <doc xml:whitespace="preserve">Removes the visual marker from a particular day.</doc>
10883         <return-value transfer-ownership="none">
10884           <doc xml:whitespace="preserve">%TRUE, always</doc>
10885           <type name="boolean" c:type="gboolean"/>
10886         </return-value>
10887         <parameters>
10888           <parameter name="day" transfer-ownership="none">
10889             <doc xml:whitespace="preserve">the day number to unmark between 1 and 31.</doc>
10890             <type name="uint" c:type="guint"/>
10891           </parameter>
10892         </parameters>
10893       </method>
10894       <method name="clear_marks" c:identifier="gtk_calendar_clear_marks">
10895         <doc xml:whitespace="preserve">Remove all visual markers.</doc>
10896         <return-value transfer-ownership="none">
10897           <type name="none" c:type="void"/>
10898         </return-value>
10899       </method>
10900       <method name="set_display_options"
10901               c:identifier="gtk_calendar_set_display_options"
10902               version="2.4">
10903         <doc xml:whitespace="preserve">Sets display options (whether to display the heading and the month  
10904 headings).</doc>
10905         <return-value transfer-ownership="none">
10906           <type name="none" c:type="void"/>
10907         </return-value>
10908         <parameters>
10909           <parameter name="flags" transfer-ownership="none">
10910             <doc xml:whitespace="preserve">the display options to set</doc>
10911             <type name="CalendarDisplayOptions"
10912                   c:type="GtkCalendarDisplayOptions"/>
10913           </parameter>
10914         </parameters>
10915       </method>
10916       <method name="get_display_options"
10917               c:identifier="gtk_calendar_get_display_options"
10918               version="2.4">
10919         <doc xml:whitespace="preserve">Returns the current display options of @calendar.</doc>
10920         <return-value transfer-ownership="full">
10921           <doc xml:whitespace="preserve">the display options.</doc>
10922           <type name="CalendarDisplayOptions"
10923                 c:type="GtkCalendarDisplayOptions"/>
10924         </return-value>
10925       </method>
10926       <method name="display_options"
10927               c:identifier="gtk_calendar_display_options"
10928               deprecated="Use gtk_calendar_set_display_options() instead"
10929               deprecated-version="2.4">
10930         <doc xml:whitespace="preserve">Sets display options (whether to display the heading and the month headings).</doc>
10931         <return-value transfer-ownership="none">
10932           <type name="none" c:type="void"/>
10933         </return-value>
10934         <parameters>
10935           <parameter name="flags" transfer-ownership="none">
10936             <doc xml:whitespace="preserve">the display options to set.</doc>
10937             <type name="CalendarDisplayOptions"
10938                   c:type="GtkCalendarDisplayOptions"/>
10939           </parameter>
10940         </parameters>
10941       </method>
10942       <method name="get_date" c:identifier="gtk_calendar_get_date">
10943         <doc xml:whitespace="preserve">Obtains the selected date from a #GtkCalendar.</doc>
10944         <return-value transfer-ownership="none">
10945           <type name="none" c:type="void"/>
10946         </return-value>
10947         <parameters>
10948           <parameter name="year"
10949                      direction="out"
10950                      caller-allocates="0"
10951                      transfer-ownership="full"
10952                      allow-none="1">
10953             <doc xml:whitespace="preserve">location to store the year number, or %NULL</doc>
10954             <type name="uint" c:type="guint*"/>
10955           </parameter>
10956           <parameter name="month"
10957                      direction="out"
10958                      caller-allocates="0"
10959                      transfer-ownership="full"
10960                      allow-none="1">
10961             <doc xml:whitespace="preserve">location to store the month number (between 0 and 11), or %NULL</doc>
10962             <type name="uint" c:type="guint*"/>
10963           </parameter>
10964           <parameter name="day"
10965                      direction="out"
10966                      caller-allocates="0"
10967                      transfer-ownership="full"
10968                      allow-none="1">
10969             <doc xml:whitespace="preserve">location to store the day number (between 1 and 31), or %NULL</doc>
10970             <type name="uint" c:type="guint*"/>
10971           </parameter>
10972         </parameters>
10973       </method>
10974       <method name="set_detail_func"
10975               c:identifier="gtk_calendar_set_detail_func"
10976               version="2.14">
10977         <doc xml:whitespace="preserve">Installs a function which provides Pango markup with detail information
10978 for each day. Examples for such details are holidays or appointments. That
10979 information is shown below each day when #GtkCalendar:show-details is set.
10980 A tooltip containing with full detail information is provided, if the entire
10981 text should not fit into the details area, or if #GtkCalendar:show-details
10982 is not set.
10983 The size of the details area can be restricted by setting the
10984 #GtkCalendar:detail-width-chars and #GtkCalendar:detail-height-rows
10985 properties.</doc>
10986         <return-value transfer-ownership="none">
10987           <type name="none" c:type="void"/>
10988         </return-value>
10989         <parameters>
10990           <parameter name="func"
10991                      transfer-ownership="none"
10992                      scope="notified"
10993                      closure="2"
10994                      destroy="3">
10995             <doc xml:whitespace="preserve">a function providing details for each day.</doc>
10996             <type name="CalendarDetailFunc" c:type="GtkCalendarDetailFunc"/>
10997           </parameter>
10998           <parameter name="data" transfer-ownership="none">
10999             <doc xml:whitespace="preserve">data to pass to @func invokations.</doc>
11000             <type name="any" c:type="gpointer"/>
11001           </parameter>
11002           <parameter name="destroy" transfer-ownership="none" scope="call">
11003             <doc xml:whitespace="preserve">a function for releasing @data.</doc>
11004             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
11005           </parameter>
11006         </parameters>
11007       </method>
11008       <method name="set_detail_width_chars"
11009               c:identifier="gtk_calendar_set_detail_width_chars"
11010               version="2.14">
11011         <doc xml:whitespace="preserve">Updates the width of detail cells.
11012 See #GtkCalendar:detail-width-chars.</doc>
11013         <return-value transfer-ownership="none">
11014           <type name="none" c:type="void"/>
11015         </return-value>
11016         <parameters>
11017           <parameter name="chars" transfer-ownership="none">
11018             <doc xml:whitespace="preserve">detail width in characters.</doc>
11019             <type name="int" c:type="gint"/>
11020           </parameter>
11021         </parameters>
11022       </method>
11023       <method name="set_detail_height_rows"
11024               c:identifier="gtk_calendar_set_detail_height_rows"
11025               version="2.14">
11026         <doc xml:whitespace="preserve">Updates the height of detail cells.
11027 See #GtkCalendar:detail-height-rows.</doc>
11028         <return-value transfer-ownership="none">
11029           <type name="none" c:type="void"/>
11030         </return-value>
11031         <parameters>
11032           <parameter name="rows" transfer-ownership="none">
11033             <doc xml:whitespace="preserve">detail height in rows.</doc>
11034             <type name="int" c:type="gint"/>
11035           </parameter>
11036         </parameters>
11037       </method>
11038       <method name="get_detail_width_chars"
11039               c:identifier="gtk_calendar_get_detail_width_chars"
11040               version="2.14">
11041         <doc xml:whitespace="preserve">Queries the width of detail cells, in characters.
11042 See #GtkCalendar:detail-width-chars.</doc>
11043         <return-value transfer-ownership="none">
11044           <doc xml:whitespace="preserve">The width of detail cells, in characters.</doc>
11045           <type name="int" c:type="gint"/>
11046         </return-value>
11047       </method>
11048       <method name="get_detail_height_rows"
11049               c:identifier="gtk_calendar_get_detail_height_rows"
11050               version="2.14">
11051         <doc xml:whitespace="preserve">Queries the height of detail cells, in rows.
11052 See #GtkCalendar:detail-width-chars.</doc>
11053         <return-value transfer-ownership="none">
11054           <doc xml:whitespace="preserve">The height of detail cells, in rows.</doc>
11055           <type name="int" c:type="gint"/>
11056         </return-value>
11057       </method>
11058       <method name="freeze" c:identifier="gtk_calendar_freeze">
11059         <doc xml:whitespace="preserve">Does nothing. Previously locked the display of the calendar until
11060 it was thawed with gtk_calendar_thaw().</doc>
11061         <return-value transfer-ownership="none">
11062           <type name="none" c:type="void"/>
11063         </return-value>
11064       </method>
11065       <method name="thaw" c:identifier="gtk_calendar_thaw">
11066         <doc xml:whitespace="preserve">Does nothing. Previously defrosted a calendar; all the changes made
11067 since the last gtk_calendar_freeze() were displayed.</doc>
11068         <return-value transfer-ownership="none">
11069           <type name="none" c:type="void"/>
11070         </return-value>
11071       </method>
11072       <property name="day" writable="1" transfer-ownership="none">
11073         <doc xml:whitespace="preserve">The selected day (as a number between 1 and 31, or 0 
11074 to unselect the currently selected day).
11075 This property gets initially set to the current day.</doc>
11076         <type name="int" c:type="gint"/>
11077       </property>
11078       <property name="detail-height-rows"
11079                 version="2.14"
11080                 writable="1"
11081                 transfer-ownership="none">
11082         <doc xml:whitespace="preserve">Height of a detail cell, in rows.
11083 A value of 0 allows any width. See gtk_calendar_set_detail_func().</doc>
11084         <type name="int" c:type="gint"/>
11085       </property>
11086       <property name="detail-width-chars"
11087                 version="2.14"
11088                 writable="1"
11089                 transfer-ownership="none">
11090         <doc xml:whitespace="preserve">Width of a detail cell, in characters.
11091 A value of 0 allows any width. See gtk_calendar_set_detail_func().</doc>
11092         <type name="int" c:type="gint"/>
11093       </property>
11094       <property name="month" writable="1" transfer-ownership="none">
11095         <doc xml:whitespace="preserve">The selected month (as a number between 0 and 11). 
11096 This property gets initially set to the current month.</doc>
11097         <type name="int" c:type="gint"/>
11098       </property>
11099       <property name="no-month-change"
11100                 version="2.4"
11101                 writable="1"
11102                 transfer-ownership="none">
11103         <doc xml:whitespace="preserve">Determines whether the selected month can be changed.</doc>
11104         <type name="boolean" c:type="gboolean"/>
11105       </property>
11106       <property name="show-day-names"
11107                 version="2.4"
11108                 writable="1"
11109                 transfer-ownership="none">
11110         <doc xml:whitespace="preserve">Determines whether day names are displayed.</doc>
11111         <type name="boolean" c:type="gboolean"/>
11112       </property>
11113       <property name="show-details"
11114                 version="2.14"
11115                 writable="1"
11116                 transfer-ownership="none">
11117         <doc xml:whitespace="preserve">Determines whether details are shown directly in the widget, or if they are
11118 available only as tooltip. When this property is set days with details are
11119 marked.</doc>
11120         <type name="boolean" c:type="gboolean"/>
11121       </property>
11122       <property name="show-heading"
11123                 version="2.4"
11124                 writable="1"
11125                 transfer-ownership="none">
11126         <doc xml:whitespace="preserve">Determines whether a heading is displayed.</doc>
11127         <type name="boolean" c:type="gboolean"/>
11128       </property>
11129       <property name="show-week-numbers"
11130                 version="2.4"
11131                 writable="1"
11132                 transfer-ownership="none">
11133         <doc xml:whitespace="preserve">Determines whether week numbers are displayed.</doc>
11134         <type name="boolean" c:type="gboolean"/>
11135       </property>
11136       <property name="year" writable="1" transfer-ownership="none">
11137         <doc xml:whitespace="preserve">The selected year. 
11138 This property gets initially set to the current year.</doc>
11139         <type name="int" c:type="gint"/>
11140       </property>
11141       <field name="widget">
11142         <type name="Widget" c:type="GtkWidget"/>
11143       </field>
11144       <field name="header_style">
11145         <type name="Style" c:type="GtkStyle*"/>
11146       </field>
11147       <field name="label_style">
11148         <type name="Style" c:type="GtkStyle*"/>
11149       </field>
11150       <field name="month">
11151         <type name="int" c:type="gint"/>
11152       </field>
11153       <field name="year">
11154         <type name="int" c:type="gint"/>
11155       </field>
11156       <field name="selected_day">
11157         <type name="int" c:type="gint"/>
11158       </field>
11159       <field name="day_month">
11160         <array zero-terminated="0" c:type="gint" fixed-size="6">
11161           <type name="int"/>
11162         </array>
11163       </field>
11164       <field name="day">
11165         <array zero-terminated="0" c:type="gint" fixed-size="6">
11166           <type name="int"/>
11167         </array>
11168       </field>
11169       <field name="num_marked_dates">
11170         <type name="int" c:type="gint"/>
11171       </field>
11172       <field name="marked_date">
11173         <array zero-terminated="0" c:type="gint" fixed-size="31">
11174           <type name="int"/>
11175         </array>
11176       </field>
11177       <field name="display_flags">
11178         <type name="CalendarDisplayOptions"
11179               c:type="GtkCalendarDisplayOptions"/>
11180       </field>
11181       <field name="marked_date_color">
11182         <array zero-terminated="0" c:type="GdkColor" fixed-size="31">
11183           <type name="Gdk.Color"/>
11184         </array>
11185       </field>
11186       <field name="gc">
11187         <type name="Gdk.GC" c:type="GdkGC*"/>
11188       </field>
11189       <field name="xor_gc">
11190         <type name="Gdk.GC" c:type="GdkGC*"/>
11191       </field>
11192       <field name="focus_row">
11193         <type name="int" c:type="gint"/>
11194       </field>
11195       <field name="focus_col">
11196         <type name="int" c:type="gint"/>
11197       </field>
11198       <field name="highlight_row">
11199         <type name="int" c:type="gint"/>
11200       </field>
11201       <field name="highlight_col">
11202         <type name="int" c:type="gint"/>
11203       </field>
11204       <field name="priv">
11205         <type name="CalendarPrivate" c:type="GtkCalendarPrivate*"/>
11206       </field>
11207       <field name="grow_space">
11208         <array zero-terminated="0" c:type="gchar" fixed-size="32">
11209           <type name="int8"/>
11210         </array>
11211       </field>
11212       <field name="gtk_reserved1">
11213         <type name="any" c:type="pointer"/>
11214       </field>
11215       <field name="gtk_reserved2">
11216         <type name="any" c:type="pointer"/>
11217       </field>
11218       <field name="gtk_reserved3">
11219         <type name="any" c:type="pointer"/>
11220       </field>
11221       <field name="gtk_reserved4">
11222         <type name="any" c:type="pointer"/>
11223       </field>
11224       <glib:signal name="day-selected">
11225         <return-value transfer-ownership="full">
11226           <type name="none" c:type="void"/>
11227         </return-value>
11228       </glib:signal>
11229       <glib:signal name="day-selected-double-click">
11230         <return-value transfer-ownership="full">
11231           <type name="none" c:type="void"/>
11232         </return-value>
11233       </glib:signal>
11234       <glib:signal name="month-changed">
11235         <return-value transfer-ownership="full">
11236           <type name="none" c:type="void"/>
11237         </return-value>
11238       </glib:signal>
11239       <glib:signal name="next-month">
11240         <return-value transfer-ownership="full">
11241           <type name="none" c:type="void"/>
11242         </return-value>
11243       </glib:signal>
11244       <glib:signal name="next-year">
11245         <return-value transfer-ownership="full">
11246           <type name="none" c:type="void"/>
11247         </return-value>
11248       </glib:signal>
11249       <glib:signal name="prev-month">
11250         <return-value transfer-ownership="full">
11251           <type name="none" c:type="void"/>
11252         </return-value>
11253       </glib:signal>
11254       <glib:signal name="prev-year">
11255         <return-value transfer-ownership="full">
11256           <type name="none" c:type="void"/>
11257         </return-value>
11258       </glib:signal>
11259     </class>
11260     <record name="CalendarClass"
11261             c:type="GtkCalendarClass"
11262             glib:is-gtype-struct-for="Calendar">
11263       <field name="parent_class">
11264         <type name="WidgetClass" c:type="GtkWidgetClass"/>
11265       </field>
11266       <field name="month_changed">
11267         <callback name="month_changed" c:type="month_changed">
11268           <return-value transfer-ownership="none">
11269             <type name="none" c:type="void"/>
11270           </return-value>
11271           <parameters>
11272             <parameter name="calendar" transfer-ownership="none">
11273               <type name="Calendar" c:type="GtkCalendar*"/>
11274             </parameter>
11275           </parameters>
11276         </callback>
11277       </field>
11278       <field name="day_selected">
11279         <callback name="day_selected" c:type="day_selected">
11280           <return-value transfer-ownership="none">
11281             <type name="none" c:type="void"/>
11282           </return-value>
11283           <parameters>
11284             <parameter name="calendar" transfer-ownership="none">
11285               <type name="Calendar" c:type="GtkCalendar*"/>
11286             </parameter>
11287           </parameters>
11288         </callback>
11289       </field>
11290       <field name="day_selected_double_click">
11291         <callback name="day_selected_double_click"
11292                   c:type="day_selected_double_click">
11293           <return-value transfer-ownership="none">
11294             <type name="none" c:type="void"/>
11295           </return-value>
11296           <parameters>
11297             <parameter name="calendar" transfer-ownership="none">
11298               <type name="Calendar" c:type="GtkCalendar*"/>
11299             </parameter>
11300           </parameters>
11301         </callback>
11302       </field>
11303       <field name="prev_month">
11304         <callback name="prev_month" c:type="prev_month">
11305           <return-value transfer-ownership="none">
11306             <type name="none" c:type="void"/>
11307           </return-value>
11308           <parameters>
11309             <parameter name="calendar" transfer-ownership="none">
11310               <type name="Calendar" c:type="GtkCalendar*"/>
11311             </parameter>
11312           </parameters>
11313         </callback>
11314       </field>
11315       <field name="next_month">
11316         <callback name="next_month" c:type="next_month">
11317           <return-value transfer-ownership="none">
11318             <type name="none" c:type="void"/>
11319           </return-value>
11320           <parameters>
11321             <parameter name="calendar" transfer-ownership="none">
11322               <type name="Calendar" c:type="GtkCalendar*"/>
11323             </parameter>
11324           </parameters>
11325         </callback>
11326       </field>
11327       <field name="prev_year">
11328         <callback name="prev_year" c:type="prev_year">
11329           <return-value transfer-ownership="none">
11330             <type name="none" c:type="void"/>
11331           </return-value>
11332           <parameters>
11333             <parameter name="calendar" transfer-ownership="none">
11334               <type name="Calendar" c:type="GtkCalendar*"/>
11335             </parameter>
11336           </parameters>
11337         </callback>
11338       </field>
11339       <field name="next_year">
11340         <callback name="next_year" c:type="next_year">
11341           <return-value transfer-ownership="none">
11342             <type name="none" c:type="void"/>
11343           </return-value>
11344           <parameters>
11345             <parameter name="calendar" transfer-ownership="none">
11346               <type name="Calendar" c:type="GtkCalendar*"/>
11347             </parameter>
11348           </parameters>
11349         </callback>
11350       </field>
11351     </record>
11352     <callback name="CalendarDetailFunc"
11353               c:type="GtkCalendarDetailFunc"
11354               version="2.14">
11355       <doc xml:whitespace="preserve">This kind of functions provide Pango markup with detail information for the
11356 specified day. Examples for such details are holidays or appointments. The
11357 function returns %NULL when no information is available.
11358 for the specified day, or %NULL.</doc>
11359       <return-value transfer-ownership="full">
11360         <doc xml:whitespace="preserve">Newly allocated string with Pango markup with details</doc>
11361         <type name="utf8" c:type="gchar*"/>
11362       </return-value>
11363       <parameters>
11364         <parameter name="calendar" transfer-ownership="none">
11365           <doc xml:whitespace="preserve">a #GtkCalendar.</doc>
11366           <type name="Calendar" c:type="GtkCalendar*"/>
11367         </parameter>
11368         <parameter name="year" transfer-ownership="none">
11369           <doc xml:whitespace="preserve">the year for which details are needed.</doc>
11370           <type name="uint" c:type="guint"/>
11371         </parameter>
11372         <parameter name="month" transfer-ownership="none">
11373           <doc xml:whitespace="preserve">the month for which details are needed.</doc>
11374           <type name="uint" c:type="guint"/>
11375         </parameter>
11376         <parameter name="day" transfer-ownership="none">
11377           <doc xml:whitespace="preserve">the day of @month for which details are needed.</doc>
11378           <type name="uint" c:type="guint"/>
11379         </parameter>
11380         <parameter name="user_data" transfer-ownership="none" closure="4">
11381           <doc xml:whitespace="preserve">the data passed with gtk_calendar_set_detail_func().</doc>
11382           <type name="any" c:type="gpointer"/>
11383         </parameter>
11384       </parameters>
11385     </callback>
11386     <bitfield name="CalendarDisplayOptions"
11387               glib:type-name="GtkCalendarDisplayOptions"
11388               glib:get-type="gtk_calendar_display_options_get_type"
11389               c:type="GtkCalendarDisplayOptions">
11390       <doc xml:whitespace="preserve">These options can be used to influence the display and behaviour of a #GtkCalendar.</doc>
11391       <member name="show_heading"
11392               value="1"
11393               c:identifier="GTK_CALENDAR_SHOW_HEADING"
11394               glib:nick="show-heading"/>
11395       <member name="show_day_names"
11396               value="2"
11397               c:identifier="GTK_CALENDAR_SHOW_DAY_NAMES"
11398               glib:nick="show-day-names"/>
11399       <member name="no_month_change"
11400               value="4"
11401               c:identifier="GTK_CALENDAR_NO_MONTH_CHANGE"
11402               glib:nick="no-month-change"/>
11403       <member name="show_week_numbers"
11404               value="8"
11405               c:identifier="GTK_CALENDAR_SHOW_WEEK_NUMBERS"
11406               glib:nick="show-week-numbers"/>
11407       <member name="week_start_monday"
11408               value="16"
11409               c:identifier="GTK_CALENDAR_WEEK_START_MONDAY"
11410               glib:nick="week-start-monday"/>
11411       <member name="show_details"
11412               value="32"
11413               c:identifier="GTK_CALENDAR_SHOW_DETAILS"
11414               glib:nick="show-details"/>
11415     </bitfield>
11416     <record name="CalendarPrivate" c:type="GtkCalendarPrivate">
11417     </record>
11418     <callback name="Callback" c:type="GtkCallback">
11419       <doc xml:whitespace="preserve">The type of the callback functions used for e.g. iterating over
11420 the children of a container, see gtk_container_foreach().</doc>
11421       <return-value transfer-ownership="none">
11422         <type name="none" c:type="void"/>
11423       </return-value>
11424       <parameters>
11425         <parameter name="widget" transfer-ownership="none">
11426           <doc xml:whitespace="preserve">the widget to operate on</doc>
11427           <type name="Widget" c:type="GtkWidget*"/>
11428         </parameter>
11429         <parameter name="data" transfer-ownership="none">
11430           <doc xml:whitespace="preserve">user-supplied data</doc>
11431           <type name="any" c:type="gpointer"/>
11432         </parameter>
11433       </parameters>
11434     </callback>
11435     <callback name="CallbackMarshal" c:type="GtkCallbackMarshal">
11436       <return-value transfer-ownership="none">
11437         <type name="none" c:type="void"/>
11438       </return-value>
11439       <parameters>
11440         <parameter name="object" transfer-ownership="none">
11441           <type name="Object" c:type="GtkObject*"/>
11442         </parameter>
11443         <parameter name="data" transfer-ownership="none">
11444           <type name="any" c:type="gpointer"/>
11445         </parameter>
11446         <parameter name="n_args" transfer-ownership="none">
11447           <type name="uint" c:type="guint"/>
11448         </parameter>
11449         <parameter name="args" transfer-ownership="none">
11450           <type name="Arg" c:type="GtkArg*"/>
11451         </parameter>
11452       </parameters>
11453     </callback>
11454     <record name="Cell" c:type="GtkCell">
11455       <field name="type" writable="1">
11456         <type name="CellType" c:type="GtkCellType"/>
11457       </field>
11458       <field name="vertical" writable="1">
11459         <type name="int16" c:type="gint16"/>
11460       </field>
11461       <field name="horizontal" writable="1">
11462         <type name="int16" c:type="gint16"/>
11463       </field>
11464       <field name="style" writable="1">
11465         <type name="Style" c:type="GtkStyle*"/>
11466       </field>
11467       <union name="u" c:type="u">
11468         <field name="text" writable="1">
11469           <type name="utf8" c:type="gchar*"/>
11470         </field>
11471         <record name="pm" c:type="pm">
11472           <field name="pixmap" writable="1">
11473             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
11474           </field>
11475           <field name="mask" writable="1">
11476             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
11477           </field>
11478         </record>
11479         <record name="pt" c:type="pt">
11480           <field name="text" writable="1">
11481             <type name="utf8" c:type="gchar*"/>
11482           </field>
11483           <field name="spacing" writable="1">
11484             <type name="uint8" c:type="guint8"/>
11485           </field>
11486           <field name="pixmap" writable="1">
11487             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
11488           </field>
11489           <field name="mask" writable="1">
11490             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
11491           </field>
11492         </record>
11493         <field name="widget" writable="1">
11494           <type name="Widget" c:type="GtkWidget*"/>
11495         </field>
11496       </union>
11497     </record>
11498     <interface name="CellEditable"
11499                c:type="GtkCellEditable"
11500                glib:type-name="GtkCellEditable"
11501                glib:get-type="gtk_cell_editable_get_type"
11502                glib:type-struct="CellEditableIface">
11503       <prerequisite name="Widget"/>
11504       <virtual-method name="start_editing" invoker="start_editing">
11505         <doc xml:whitespace="preserve">Begins editing on a @cell_editable. @event is the #GdkEvent that began 
11506 the editing process. It may be %NULL, in the instance that editing was 
11507 initiated through programatic means.</doc>
11508         <return-value transfer-ownership="none">
11509           <type name="none" c:type="void"/>
11510         </return-value>
11511         <parameters>
11512           <parameter name="event" transfer-ownership="none" allow-none="1">
11513             <doc xml:whitespace="preserve">A #GdkEvent, or %NULL</doc>
11514             <type name="Gdk.Event" c:type="GdkEvent*"/>
11515           </parameter>
11516         </parameters>
11517       </virtual-method>
11518       <method name="start_editing"
11519               c:identifier="gtk_cell_editable_start_editing">
11520         <doc xml:whitespace="preserve">Begins editing on a @cell_editable. @event is the #GdkEvent that began 
11521 the editing process. It may be %NULL, in the instance that editing was 
11522 initiated through programatic means.</doc>
11523         <return-value transfer-ownership="none">
11524           <type name="none" c:type="void"/>
11525         </return-value>
11526         <parameters>
11527           <parameter name="event" transfer-ownership="none" allow-none="1">
11528             <doc xml:whitespace="preserve">A #GdkEvent, or %NULL</doc>
11529             <type name="Gdk.Event" c:type="GdkEvent*"/>
11530           </parameter>
11531         </parameters>
11532       </method>
11533       <method name="editing_done"
11534               c:identifier="gtk_cell_editable_editing_done">
11535         <doc xml:whitespace="preserve">Emits the #GtkCellEditable::editing-done signal.</doc>
11536         <return-value transfer-ownership="none">
11537           <type name="none" c:type="void"/>
11538         </return-value>
11539       </method>
11540       <method name="remove_widget"
11541               c:identifier="gtk_cell_editable_remove_widget">
11542         <doc xml:whitespace="preserve">Emits the #GtkCellEditable::remove-widget signal.</doc>
11543         <return-value transfer-ownership="none">
11544           <type name="none" c:type="void"/>
11545         </return-value>
11546       </method>
11547       <property name="editing-canceled"
11548                 version="2.20"
11549                 writable="1"
11550                 transfer-ownership="none">
11551         <doc xml:whitespace="preserve">Indicates whether editing on the cell has been canceled.</doc>
11552         <type name="boolean" c:type="gboolean"/>
11553       </property>
11554       <glib:signal name="editing-done">
11555         <doc xml:whitespace="preserve">This signal is a sign for the cell renderer to update its
11556 value from the @cell_editable.
11557 Implementations of #GtkCellEditable are responsible for
11558 emitting this signal when they are done editing, e.g.
11559 #GtkEntry is emitting it when the user presses Enter.
11560 gtk_cell_editable_editing_done() is a convenience method
11561 for emitting GtkCellEditable::editing-done.</doc>
11562         <return-value transfer-ownership="full">
11563           <type name="none" c:type="void"/>
11564         </return-value>
11565       </glib:signal>
11566       <glib:signal name="remove-widget">
11567         <doc xml:whitespace="preserve">This signal is meant to indicate that the cell is finished
11568 editing, and the widget may now be destroyed.
11569 Implementations of #GtkCellEditable are responsible for
11570 emitting this signal when they are done editing. It must
11571 be emitted after the #GtkCellEditable::editing-done signal,
11572 to give the cell renderer a chance to update the cell's value
11573 before the widget is removed.
11574 gtk_cell_editable_remove_widget() is a convenience method
11575 for emitting GtkCellEditable::remove-widget.</doc>
11576         <return-value transfer-ownership="full">
11577           <type name="none" c:type="void"/>
11578         </return-value>
11579       </glib:signal>
11580     </interface>
11581     <record name="CellEditableIface"
11582             c:type="GtkCellEditableIface"
11583             glib:is-gtype-struct-for="CellEditable">
11584       <field name="g_iface">
11585         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
11586       </field>
11587       <field name="editing_done">
11588         <callback name="editing_done" c:type="editing_done">
11589           <return-value transfer-ownership="none">
11590             <type name="none" c:type="void"/>
11591           </return-value>
11592           <parameters>
11593             <parameter name="cell_editable" transfer-ownership="none">
11594               <type name="CellEditable" c:type="GtkCellEditable*"/>
11595             </parameter>
11596           </parameters>
11597         </callback>
11598       </field>
11599       <field name="remove_widget">
11600         <callback name="remove_widget" c:type="remove_widget">
11601           <return-value transfer-ownership="none">
11602             <type name="none" c:type="void"/>
11603           </return-value>
11604           <parameters>
11605             <parameter name="cell_editable" transfer-ownership="none">
11606               <type name="CellEditable" c:type="GtkCellEditable*"/>
11607             </parameter>
11608           </parameters>
11609         </callback>
11610       </field>
11611       <field name="start_editing">
11612         <callback name="start_editing" c:type="start_editing">
11613           <return-value transfer-ownership="none">
11614             <type name="none" c:type="void"/>
11615           </return-value>
11616           <parameters>
11617             <parameter name="cell_editable" transfer-ownership="none">
11618               <type name="CellEditable" c:type="GtkCellEditable*"/>
11619             </parameter>
11620             <parameter name="event" transfer-ownership="none" allow-none="1">
11621               <doc xml:whitespace="preserve">A #GdkEvent, or %NULL</doc>
11622               <type name="Gdk.Event" c:type="GdkEvent*"/>
11623             </parameter>
11624           </parameters>
11625         </callback>
11626       </field>
11627     </record>
11628     <interface name="CellLayout"
11629                c:type="GtkCellLayout"
11630                glib:type-name="GtkCellLayout"
11631                glib:get-type="gtk_cell_layout_get_type"
11632                glib:type-struct="CellLayoutIface">
11633       <virtual-method name="pack_start" invoker="pack_start" version="2.4">
11634         <doc xml:whitespace="preserve">Packs the @cell into the beginning of @cell_layout. If @expand is %FALSE,
11635 then the @cell is allocated no more space than it needs. Any unused space
11636 is divided evenly between cells for which @expand is %TRUE.
11637 Note that reusing the same cell renderer is not supported.</doc>
11638         <return-value transfer-ownership="none">
11639           <type name="none" c:type="void"/>
11640         </return-value>
11641         <parameters>
11642           <parameter name="cell" transfer-ownership="none">
11643             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
11644             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11645           </parameter>
11646           <parameter name="expand" transfer-ownership="none">
11647             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
11648             <type name="boolean" c:type="gboolean"/>
11649           </parameter>
11650         </parameters>
11651       </virtual-method>
11652       <virtual-method name="pack_end" invoker="pack_end" version="2.4">
11653         <doc xml:whitespace="preserve">Adds the @cell to the end of @cell_layout. If @expand is %FALSE, then the
11654 divided evenly between cells for which @expand is %TRUE.
11655 Note that reusing the same cell renderer is not supported.</doc>
11656         <return-value transfer-ownership="none">
11657           <type name="none" c:type="void"/>
11658         </return-value>
11659         <parameters>
11660           <parameter name="cell" transfer-ownership="none">
11661             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
11662             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11663           </parameter>
11664           <parameter name="expand" transfer-ownership="none">
11665             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
11666             <type name="boolean" c:type="gboolean"/>
11667           </parameter>
11668         </parameters>
11669       </virtual-method>
11670       <virtual-method name="clear" invoker="clear" version="2.4">
11671         <doc xml:whitespace="preserve">Unsets all the mappings on all renderers on @cell_layout and
11672 removes all renderers from @cell_layout.</doc>
11673         <return-value transfer-ownership="none">
11674           <type name="none" c:type="void"/>
11675         </return-value>
11676       </virtual-method>
11677       <virtual-method name="add_attribute"
11678                       invoker="add_attribute"
11679                       version="2.4">
11680         <doc xml:whitespace="preserve">Adds an attribute mapping to the list in @cell_layout. The @column is the
11681 column of the model to get a value from, and the @attribute is the
11682 parameter on @cell to be set from the value. So for example if column 2
11683 of the model contains strings, you could have the "text" attribute of a
11684 #GtkCellRendererText get its values from column 2.</doc>
11685         <return-value transfer-ownership="none">
11686           <type name="none" c:type="void"/>
11687         </return-value>
11688         <parameters>
11689           <parameter name="cell" transfer-ownership="none">
11690             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
11691             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11692           </parameter>
11693           <parameter name="attribute" transfer-ownership="none">
11694             <doc xml:whitespace="preserve">An attribute on the renderer.</doc>
11695             <type name="utf8" c:type="gchar*"/>
11696           </parameter>
11697           <parameter name="column" transfer-ownership="none">
11698             <doc xml:whitespace="preserve">The column position on the model to get the attribute from.</doc>
11699             <type name="int" c:type="gint"/>
11700           </parameter>
11701         </parameters>
11702       </virtual-method>
11703       <virtual-method name="set_cell_data_func"
11704                       invoker="set_cell_data_func"
11705                       version="2.4">
11706         <doc xml:whitespace="preserve">Sets the #GtkCellLayoutDataFunc to use for @cell_layout. This function
11707 is used instead of the standard attributes mapping for setting the
11708 column value, and should set the value of @cell_layout's cell renderer(s)
11709 as appropriate. @func may be %NULL to remove and older one.</doc>
11710         <return-value transfer-ownership="none">
11711           <type name="none" c:type="void"/>
11712         </return-value>
11713         <parameters>
11714           <parameter name="cell" transfer-ownership="none">
11715             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
11716             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11717           </parameter>
11718           <parameter name="func" transfer-ownership="none">
11719             <doc xml:whitespace="preserve">The #GtkCellLayoutDataFunc to use.</doc>
11720             <type name="CellLayoutDataFunc" c:type="GtkCellLayoutDataFunc"/>
11721           </parameter>
11722           <parameter name="func_data" transfer-ownership="none">
11723             <doc xml:whitespace="preserve">The user data for @func.</doc>
11724             <type name="any" c:type="gpointer"/>
11725           </parameter>
11726           <parameter name="destroy" transfer-ownership="none">
11727             <doc xml:whitespace="preserve">The destroy notification for @func_data.</doc>
11728             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
11729           </parameter>
11730         </parameters>
11731       </virtual-method>
11732       <virtual-method name="clear_attributes"
11733                       invoker="clear_attributes"
11734                       version="2.4">
11735         <doc xml:whitespace="preserve">Clears all existing attributes previously set with
11736 gtk_cell_layout_set_attributes().</doc>
11737         <return-value transfer-ownership="none">
11738           <type name="none" c:type="void"/>
11739         </return-value>
11740         <parameters>
11741           <parameter name="cell" transfer-ownership="none">
11742             <doc xml:whitespace="preserve">A #GtkCellRenderer to clear the attribute mapping on.</doc>
11743             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11744           </parameter>
11745         </parameters>
11746       </virtual-method>
11747       <virtual-method name="reorder" invoker="reorder" version="2.4">
11748         <doc xml:whitespace="preserve">Re-inserts @cell at @position. Note that @cell has already to be packed
11749 into @cell_layout for this to function properly.</doc>
11750         <return-value transfer-ownership="none">
11751           <type name="none" c:type="void"/>
11752         </return-value>
11753         <parameters>
11754           <parameter name="cell" transfer-ownership="none">
11755             <doc xml:whitespace="preserve">A #GtkCellRenderer to reorder.</doc>
11756             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11757           </parameter>
11758           <parameter name="position" transfer-ownership="none">
11759             <doc xml:whitespace="preserve">New position to insert @cell at.</doc>
11760             <type name="int" c:type="gint"/>
11761           </parameter>
11762         </parameters>
11763       </virtual-method>
11764       <virtual-method name="get_cells" invoker="get_cells" version="2.12">
11765         <doc xml:whitespace="preserve">Returns the cell renderers which have been added to @cell_layout.
11766 renderers has been newly allocated and should be freed with
11767 g_list_free() when no longer needed.</doc>
11768         <return-value transfer-ownership="container">
11769           <doc xml:whitespace="preserve">a list of cell renderers. The list, but not the</doc>
11770           <type name="GLib.List" c:type="GList*">
11771             <type name="CellRenderer"/>
11772           </type>
11773         </return-value>
11774       </virtual-method>
11775       <method name="pack_start"
11776               c:identifier="gtk_cell_layout_pack_start"
11777               version="2.4">
11778         <doc xml:whitespace="preserve">Packs the @cell into the beginning of @cell_layout. If @expand is %FALSE,
11779 then the @cell is allocated no more space than it needs. Any unused space
11780 is divided evenly between cells for which @expand is %TRUE.
11781 Note that reusing the same cell renderer is not supported.</doc>
11782         <return-value transfer-ownership="none">
11783           <type name="none" c:type="void"/>
11784         </return-value>
11785         <parameters>
11786           <parameter name="cell" transfer-ownership="none">
11787             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
11788             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11789           </parameter>
11790           <parameter name="expand" transfer-ownership="none">
11791             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
11792             <type name="boolean" c:type="gboolean"/>
11793           </parameter>
11794         </parameters>
11795       </method>
11796       <method name="pack_end"
11797               c:identifier="gtk_cell_layout_pack_end"
11798               version="2.4">
11799         <doc xml:whitespace="preserve">Adds the @cell to the end of @cell_layout. If @expand is %FALSE, then the
11800 divided evenly between cells for which @expand is %TRUE.
11801 Note that reusing the same cell renderer is not supported.</doc>
11802         <return-value transfer-ownership="none">
11803           <type name="none" c:type="void"/>
11804         </return-value>
11805         <parameters>
11806           <parameter name="cell" transfer-ownership="none">
11807             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
11808             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11809           </parameter>
11810           <parameter name="expand" transfer-ownership="none">
11811             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
11812             <type name="boolean" c:type="gboolean"/>
11813           </parameter>
11814         </parameters>
11815       </method>
11816       <method name="get_cells"
11817               c:identifier="gtk_cell_layout_get_cells"
11818               version="2.12">
11819         <doc xml:whitespace="preserve">Returns the cell renderers which have been added to @cell_layout.
11820 renderers has been newly allocated and should be freed with
11821 g_list_free() when no longer needed.</doc>
11822         <return-value transfer-ownership="container">
11823           <doc xml:whitespace="preserve">a list of cell renderers. The list, but not the</doc>
11824           <type name="GLib.List" c:type="GList*">
11825             <type name="CellRenderer"/>
11826           </type>
11827         </return-value>
11828       </method>
11829       <method name="clear" c:identifier="gtk_cell_layout_clear" version="2.4">
11830         <doc xml:whitespace="preserve">Unsets all the mappings on all renderers on @cell_layout and
11831 removes all renderers from @cell_layout.</doc>
11832         <return-value transfer-ownership="none">
11833           <type name="none" c:type="void"/>
11834         </return-value>
11835       </method>
11836       <method name="set_attributes"
11837               c:identifier="gtk_cell_layout_set_attributes"
11838               version="2.4"
11839               introspectable="0">
11840         <doc xml:whitespace="preserve">Sets the attributes in list as the attributes of @cell_layout. The
11841 attributes should be in attribute/column order, as in
11842 gtk_cell_layout_add_attribute(). All existing attributes are removed, and
11843 replaced with the new attributes.</doc>
11844         <return-value transfer-ownership="none">
11845           <type name="none" c:type="void"/>
11846         </return-value>
11847         <parameters>
11848           <parameter name="cell" transfer-ownership="none">
11849             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
11850             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11851           </parameter>
11852           <parameter transfer-ownership="none">
11853             <varargs>
11854             </varargs>
11855           </parameter>
11856         </parameters>
11857       </method>
11858       <method name="add_attribute"
11859               c:identifier="gtk_cell_layout_add_attribute"
11860               version="2.4">
11861         <doc xml:whitespace="preserve">Adds an attribute mapping to the list in @cell_layout. The @column is the
11862 column of the model to get a value from, and the @attribute is the
11863 parameter on @cell to be set from the value. So for example if column 2
11864 of the model contains strings, you could have the "text" attribute of a
11865 #GtkCellRendererText get its values from column 2.</doc>
11866         <return-value transfer-ownership="none">
11867           <type name="none" c:type="void"/>
11868         </return-value>
11869         <parameters>
11870           <parameter name="cell" transfer-ownership="none">
11871             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
11872             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11873           </parameter>
11874           <parameter name="attribute" transfer-ownership="none">
11875             <doc xml:whitespace="preserve">An attribute on the renderer.</doc>
11876             <type name="utf8" c:type="gchar*"/>
11877           </parameter>
11878           <parameter name="column" transfer-ownership="none">
11879             <doc xml:whitespace="preserve">The column position on the model to get the attribute from.</doc>
11880             <type name="int" c:type="gint"/>
11881           </parameter>
11882         </parameters>
11883       </method>
11884       <method name="set_cell_data_func"
11885               c:identifier="gtk_cell_layout_set_cell_data_func"
11886               version="2.4">
11887         <doc xml:whitespace="preserve">Sets the #GtkCellLayoutDataFunc to use for @cell_layout. This function
11888 is used instead of the standard attributes mapping for setting the
11889 column value, and should set the value of @cell_layout's cell renderer(s)
11890 as appropriate. @func may be %NULL to remove and older one.</doc>
11891         <return-value transfer-ownership="none">
11892           <type name="none" c:type="void"/>
11893         </return-value>
11894         <parameters>
11895           <parameter name="cell" transfer-ownership="none">
11896             <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
11897             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11898           </parameter>
11899           <parameter name="func"
11900                      transfer-ownership="none"
11901                      scope="notified"
11902                      closure="3"
11903                      destroy="4">
11904             <doc xml:whitespace="preserve">The #GtkCellLayoutDataFunc to use.</doc>
11905             <type name="CellLayoutDataFunc" c:type="GtkCellLayoutDataFunc"/>
11906           </parameter>
11907           <parameter name="func_data" transfer-ownership="none">
11908             <doc xml:whitespace="preserve">The user data for @func.</doc>
11909             <type name="any" c:type="gpointer"/>
11910           </parameter>
11911           <parameter name="destroy" transfer-ownership="none" scope="call">
11912             <doc xml:whitespace="preserve">The destroy notification for @func_data.</doc>
11913             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
11914           </parameter>
11915         </parameters>
11916       </method>
11917       <method name="clear_attributes"
11918               c:identifier="gtk_cell_layout_clear_attributes"
11919               version="2.4">
11920         <doc xml:whitespace="preserve">Clears all existing attributes previously set with
11921 gtk_cell_layout_set_attributes().</doc>
11922         <return-value transfer-ownership="none">
11923           <type name="none" c:type="void"/>
11924         </return-value>
11925         <parameters>
11926           <parameter name="cell" transfer-ownership="none">
11927             <doc xml:whitespace="preserve">A #GtkCellRenderer to clear the attribute mapping on.</doc>
11928             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11929           </parameter>
11930         </parameters>
11931       </method>
11932       <method name="reorder"
11933               c:identifier="gtk_cell_layout_reorder"
11934               version="2.4">
11935         <doc xml:whitespace="preserve">Re-inserts @cell at @position. Note that @cell has already to be packed
11936 into @cell_layout for this to function properly.</doc>
11937         <return-value transfer-ownership="none">
11938           <type name="none" c:type="void"/>
11939         </return-value>
11940         <parameters>
11941           <parameter name="cell" transfer-ownership="none">
11942             <doc xml:whitespace="preserve">A #GtkCellRenderer to reorder.</doc>
11943             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11944           </parameter>
11945           <parameter name="position" transfer-ownership="none">
11946             <doc xml:whitespace="preserve">New position to insert @cell at.</doc>
11947             <type name="int" c:type="gint"/>
11948           </parameter>
11949         </parameters>
11950       </method>
11951     </interface>
11952     <callback name="CellLayoutDataFunc" c:type="GtkCellLayoutDataFunc">
11953       <return-value transfer-ownership="none">
11954         <type name="none" c:type="void"/>
11955       </return-value>
11956       <parameters>
11957         <parameter name="cell_layout" transfer-ownership="none">
11958           <type name="CellLayout" c:type="GtkCellLayout*"/>
11959         </parameter>
11960         <parameter name="cell" transfer-ownership="none">
11961           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11962         </parameter>
11963         <parameter name="tree_model" transfer-ownership="none">
11964           <type name="TreeModel" c:type="GtkTreeModel*"/>
11965         </parameter>
11966         <parameter name="iter" transfer-ownership="none">
11967           <type name="TreeIter" c:type="GtkTreeIter*"/>
11968         </parameter>
11969         <parameter name="data" transfer-ownership="none">
11970           <type name="any" c:type="gpointer"/>
11971         </parameter>
11972       </parameters>
11973     </callback>
11974     <record name="CellLayoutIface"
11975             c:type="GtkCellLayoutIface"
11976             glib:is-gtype-struct-for="CellLayout">
11977       <field name="g_iface">
11978         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
11979       </field>
11980       <field name="pack_start">
11981         <callback name="pack_start" c:type="pack_start">
11982           <return-value transfer-ownership="none">
11983             <type name="none" c:type="void"/>
11984           </return-value>
11985           <parameters>
11986             <parameter name="cell_layout" transfer-ownership="none">
11987               <type name="CellLayout" c:type="GtkCellLayout*"/>
11988             </parameter>
11989             <parameter name="cell" transfer-ownership="none">
11990               <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
11991               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
11992             </parameter>
11993             <parameter name="expand" transfer-ownership="none">
11994               <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
11995               <type name="boolean" c:type="gboolean"/>
11996             </parameter>
11997           </parameters>
11998         </callback>
11999       </field>
12000       <field name="pack_end">
12001         <callback name="pack_end" c:type="pack_end">
12002           <return-value transfer-ownership="none">
12003             <type name="none" c:type="void"/>
12004           </return-value>
12005           <parameters>
12006             <parameter name="cell_layout" transfer-ownership="none">
12007               <type name="CellLayout" c:type="GtkCellLayout*"/>
12008             </parameter>
12009             <parameter name="cell" transfer-ownership="none">
12010               <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
12011               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
12012             </parameter>
12013             <parameter name="expand" transfer-ownership="none">
12014               <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @cell_layout.</doc>
12015               <type name="boolean" c:type="gboolean"/>
12016             </parameter>
12017           </parameters>
12018         </callback>
12019       </field>
12020       <field name="clear">
12021         <callback name="clear" c:type="clear">
12022           <return-value transfer-ownership="none">
12023             <type name="none" c:type="void"/>
12024           </return-value>
12025           <parameters>
12026             <parameter name="cell_layout" transfer-ownership="none">
12027               <type name="CellLayout" c:type="GtkCellLayout*"/>
12028             </parameter>
12029           </parameters>
12030         </callback>
12031       </field>
12032       <field name="add_attribute">
12033         <callback name="add_attribute" c:type="add_attribute">
12034           <return-value transfer-ownership="none">
12035             <type name="none" c:type="void"/>
12036           </return-value>
12037           <parameters>
12038             <parameter name="cell_layout" transfer-ownership="none">
12039               <type name="CellLayout" c:type="GtkCellLayout*"/>
12040             </parameter>
12041             <parameter name="cell" transfer-ownership="none">
12042               <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
12043               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
12044             </parameter>
12045             <parameter name="attribute" transfer-ownership="none">
12046               <doc xml:whitespace="preserve">An attribute on the renderer.</doc>
12047               <type name="utf8" c:type="gchar*"/>
12048             </parameter>
12049             <parameter name="column" transfer-ownership="none">
12050               <doc xml:whitespace="preserve">The column position on the model to get the attribute from.</doc>
12051               <type name="int" c:type="gint"/>
12052             </parameter>
12053           </parameters>
12054         </callback>
12055       </field>
12056       <field name="set_cell_data_func">
12057         <callback name="set_cell_data_func" c:type="set_cell_data_func">
12058           <return-value transfer-ownership="none">
12059             <type name="none" c:type="void"/>
12060           </return-value>
12061           <parameters>
12062             <parameter name="cell_layout" transfer-ownership="none">
12063               <type name="CellLayout" c:type="GtkCellLayout*"/>
12064             </parameter>
12065             <parameter name="cell" transfer-ownership="none">
12066               <doc xml:whitespace="preserve">A #GtkCellRenderer.</doc>
12067               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
12068             </parameter>
12069             <parameter name="func" transfer-ownership="none">
12070               <doc xml:whitespace="preserve">The #GtkCellLayoutDataFunc to use.</doc>
12071               <type name="CellLayoutDataFunc" c:type="GtkCellLayoutDataFunc"/>
12072             </parameter>
12073             <parameter name="func_data" transfer-ownership="none">
12074               <doc xml:whitespace="preserve">The user data for @func.</doc>
12075               <type name="any" c:type="gpointer"/>
12076             </parameter>
12077             <parameter name="destroy" transfer-ownership="none">
12078               <doc xml:whitespace="preserve">The destroy notification for @func_data.</doc>
12079               <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
12080             </parameter>
12081           </parameters>
12082         </callback>
12083       </field>
12084       <field name="clear_attributes">
12085         <callback name="clear_attributes" c:type="clear_attributes">
12086           <return-value transfer-ownership="none">
12087             <type name="none" c:type="void"/>
12088           </return-value>
12089           <parameters>
12090             <parameter name="cell_layout" transfer-ownership="none">
12091               <type name="CellLayout" c:type="GtkCellLayout*"/>
12092             </parameter>
12093             <parameter name="cell" transfer-ownership="none">
12094               <doc xml:whitespace="preserve">A #GtkCellRenderer to clear the attribute mapping on.</doc>
12095               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
12096             </parameter>
12097           </parameters>
12098         </callback>
12099       </field>
12100       <field name="reorder">
12101         <callback name="reorder" c:type="reorder">
12102           <return-value transfer-ownership="none">
12103             <type name="none" c:type="void"/>
12104           </return-value>
12105           <parameters>
12106             <parameter name="cell_layout" transfer-ownership="none">
12107               <type name="CellLayout" c:type="GtkCellLayout*"/>
12108             </parameter>
12109             <parameter name="cell" transfer-ownership="none">
12110               <doc xml:whitespace="preserve">A #GtkCellRenderer to reorder.</doc>
12111               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
12112             </parameter>
12113             <parameter name="position" transfer-ownership="none">
12114               <doc xml:whitespace="preserve">New position to insert @cell at.</doc>
12115               <type name="int" c:type="gint"/>
12116             </parameter>
12117           </parameters>
12118         </callback>
12119       </field>
12120       <field name="get_cells">
12121         <callback name="get_cells" c:type="get_cells">
12122           <return-value transfer-ownership="container">
12123             <doc xml:whitespace="preserve">a list of cell renderers. The list, but not the</doc>
12124             <type name="GLib.List" c:type="GList*">
12125               <type name="CellRenderer"/>
12126             </type>
12127           </return-value>
12128           <parameters>
12129             <parameter name="cell_layout" transfer-ownership="none">
12130               <type name="CellLayout" c:type="GtkCellLayout*"/>
12131             </parameter>
12132           </parameters>
12133         </callback>
12134       </field>
12135     </record>
12136     <record name="CellPixText" c:type="GtkCellPixText">
12137       <field name="type" writable="1">
12138         <type name="CellType" c:type="GtkCellType"/>
12139       </field>
12140       <field name="vertical" writable="1">
12141         <type name="int16" c:type="gint16"/>
12142       </field>
12143       <field name="horizontal" writable="1">
12144         <type name="int16" c:type="gint16"/>
12145       </field>
12146       <field name="style" writable="1">
12147         <type name="Style" c:type="GtkStyle*"/>
12148       </field>
12149       <field name="text" writable="1">
12150         <type name="utf8" c:type="gchar*"/>
12151       </field>
12152       <field name="spacing" writable="1">
12153         <type name="uint8" c:type="guint8"/>
12154       </field>
12155       <field name="pixmap" writable="1">
12156         <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
12157       </field>
12158       <field name="mask" writable="1">
12159         <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
12160       </field>
12161     </record>
12162     <record name="CellPixmap" c:type="GtkCellPixmap">
12163       <field name="type" writable="1">
12164         <type name="CellType" c:type="GtkCellType"/>
12165       </field>
12166       <field name="vertical" writable="1">
12167         <type name="int16" c:type="gint16"/>
12168       </field>
12169       <field name="horizontal" writable="1">
12170         <type name="int16" c:type="gint16"/>
12171       </field>
12172       <field name="style" writable="1">
12173         <type name="Style" c:type="GtkStyle*"/>
12174       </field>
12175       <field name="pixmap" writable="1">
12176         <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
12177       </field>
12178       <field name="mask" writable="1">
12179         <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
12180       </field>
12181     </record>
12182     <class name="CellRenderer"
12183            c:type="GtkCellRenderer"
12184            parent="Object"
12185            abstract="1"
12186            glib:type-name="GtkCellRenderer"
12187            glib:get-type="gtk_cell_renderer_get_type"
12188            glib:type-struct="CellRendererClass">
12189       <virtual-method name="get_size" invoker="get_size">
12190         <doc xml:whitespace="preserve">Obtains the width and height needed to render the cell. Used by view 
12191 widgets to determine the appropriate size for the cell_area passed to
12192 gtk_cell_renderer_render().  If @cell_area is not %NULL, fills in the
12193 x and y offsets (if set) of the cell relative to this location. 
12194 Please note that the values set in @width and @height, as well as those 
12195 in @x_offset and @y_offset are inclusive of the xpad and ypad properties.</doc>
12196         <return-value transfer-ownership="none">
12197           <type name="none" c:type="void"/>
12198         </return-value>
12199         <parameters>
12200           <parameter name="widget" transfer-ownership="none">
12201             <doc xml:whitespace="preserve">the widget the renderer is rendering to</doc>
12202             <type name="Widget" c:type="GtkWidget*"/>
12203           </parameter>
12204           <parameter name="cell_area" transfer-ownership="none" allow-none="1">
12205             <doc xml:whitespace="preserve">The area a cell will be allocated, or %NULL</doc>
12206             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12207           </parameter>
12208           <parameter name="x_offset"
12209                      direction="out"
12210                      caller-allocates="0"
12211                      transfer-ownership="full"
12212                      allow-none="1">
12213             <doc xml:whitespace="preserve">location to return x offset of cell relative to @cell_area, or %NULL</doc>
12214             <type name="int" c:type="gint*"/>
12215           </parameter>
12216           <parameter name="y_offset"
12217                      direction="out"
12218                      caller-allocates="0"
12219                      transfer-ownership="full"
12220                      allow-none="1">
12221             <doc xml:whitespace="preserve">location to return y offset of cell relative to @cell_area, or %NULL</doc>
12222             <type name="int" c:type="gint*"/>
12223           </parameter>
12224           <parameter name="width"
12225                      direction="out"
12226                      caller-allocates="0"
12227                      transfer-ownership="full"
12228                      allow-none="1">
12229             <doc xml:whitespace="preserve">location to return width needed to render a cell, or %NULL</doc>
12230             <type name="int" c:type="gint*"/>
12231           </parameter>
12232           <parameter name="height"
12233                      direction="out"
12234                      caller-allocates="0"
12235                      transfer-ownership="full"
12236                      allow-none="1">
12237             <doc xml:whitespace="preserve">location to return height needed to render a cell, or %NULL</doc>
12238             <type name="int" c:type="gint*"/>
12239           </parameter>
12240         </parameters>
12241       </virtual-method>
12242       <virtual-method name="render" invoker="render">
12243         <doc xml:whitespace="preserve">Invokes the virtual render function of the #GtkCellRenderer. The three
12244 passed-in rectangles are areas of @window. Most renderers will draw within
12245 should be honored with respect to @cell_area. @background_area includes the
12246 blank space around the cell, and also the area containing the tree expander;
12247 so the @background_area rectangles for all cells tile to cover the entire</doc>
12248         <return-value transfer-ownership="none">
12249           <type name="none" c:type="void"/>
12250         </return-value>
12251         <parameters>
12252           <parameter name="window" transfer-ownership="none">
12253             <doc xml:whitespace="preserve">a #GdkDrawable to draw to</doc>
12254             <type name="Gdk.Drawable" c:type="GdkDrawable*"/>
12255           </parameter>
12256           <parameter name="widget" transfer-ownership="none">
12257             <doc xml:whitespace="preserve">the widget owning @window</doc>
12258             <type name="Widget" c:type="GtkWidget*"/>
12259           </parameter>
12260           <parameter name="background_area" transfer-ownership="none">
12261             <doc xml:whitespace="preserve">entire cell area (including tree expanders and maybe padding on the sides)</doc>
12262             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12263           </parameter>
12264           <parameter name="cell_area" transfer-ownership="none">
12265             <doc xml:whitespace="preserve">area normally rendered by a cell renderer</doc>
12266             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12267           </parameter>
12268           <parameter name="expose_area" transfer-ownership="none">
12269             <doc xml:whitespace="preserve">area that actually needs updating</doc>
12270             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12271           </parameter>
12272           <parameter name="flags" transfer-ownership="none">
12273             <doc xml:whitespace="preserve">flags that affect rendering</doc>
12274             <type name="CellRendererState" c:type="GtkCellRendererState"/>
12275           </parameter>
12276         </parameters>
12277       </virtual-method>
12278       <virtual-method name="activate" invoker="activate">
12279         <doc xml:whitespace="preserve">Passes an activate event to the cell renderer for possible processing.  
12280 Some cell renderers may use events; for example, #GtkCellRendererToggle 
12281 toggles when it gets a mouse click.</doc>
12282         <return-value transfer-ownership="none">
12283           <doc xml:whitespace="preserve">%TRUE if the event was consumed/handled</doc>
12284           <type name="boolean" c:type="gboolean"/>
12285         </return-value>
12286         <parameters>
12287           <parameter name="event" transfer-ownership="none">
12288             <doc xml:whitespace="preserve">a #GdkEvent</doc>
12289             <type name="Gdk.Event" c:type="GdkEvent*"/>
12290           </parameter>
12291           <parameter name="widget" transfer-ownership="none">
12292             <doc xml:whitespace="preserve">widget that received the event</doc>
12293             <type name="Widget" c:type="GtkWidget*"/>
12294           </parameter>
12295           <parameter name="path" transfer-ownership="none">
12296             <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
12297             <type name="utf8" c:type="gchar*"/>
12298           </parameter>
12299           <parameter name="background_area" transfer-ownership="none">
12300             <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
12301             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12302           </parameter>
12303           <parameter name="cell_area" transfer-ownership="none">
12304             <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
12305             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12306           </parameter>
12307           <parameter name="flags" transfer-ownership="none">
12308             <doc xml:whitespace="preserve">render flags</doc>
12309             <type name="CellRendererState" c:type="GtkCellRendererState"/>
12310           </parameter>
12311         </parameters>
12312       </virtual-method>
12313       <virtual-method name="start_editing" invoker="start_editing">
12314         <doc xml:whitespace="preserve">Passes an activate event to the cell renderer for possible processing.</doc>
12315         <return-value transfer-ownership="full">
12316           <doc xml:whitespace="preserve">A new #GtkCellEditable, or %NULL</doc>
12317           <type name="CellEditable" c:type="GtkCellEditable*"/>
12318         </return-value>
12319         <parameters>
12320           <parameter name="event" transfer-ownership="none">
12321             <doc xml:whitespace="preserve">a #GdkEvent</doc>
12322             <type name="Gdk.Event" c:type="GdkEvent*"/>
12323           </parameter>
12324           <parameter name="widget" transfer-ownership="none">
12325             <doc xml:whitespace="preserve">widget that received the event</doc>
12326             <type name="Widget" c:type="GtkWidget*"/>
12327           </parameter>
12328           <parameter name="path" transfer-ownership="none">
12329             <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
12330             <type name="utf8" c:type="gchar*"/>
12331           </parameter>
12332           <parameter name="background_area" transfer-ownership="none">
12333             <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
12334             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12335           </parameter>
12336           <parameter name="cell_area" transfer-ownership="none">
12337             <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
12338             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12339           </parameter>
12340           <parameter name="flags" transfer-ownership="none">
12341             <doc xml:whitespace="preserve">render flags</doc>
12342             <type name="CellRendererState" c:type="GtkCellRendererState"/>
12343           </parameter>
12344         </parameters>
12345       </virtual-method>
12346       <method name="get_size" c:identifier="gtk_cell_renderer_get_size">
12347         <doc xml:whitespace="preserve">Obtains the width and height needed to render the cell. Used by view 
12348 widgets to determine the appropriate size for the cell_area passed to
12349 gtk_cell_renderer_render().  If @cell_area is not %NULL, fills in the
12350 x and y offsets (if set) of the cell relative to this location. 
12351 Please note that the values set in @width and @height, as well as those 
12352 in @x_offset and @y_offset are inclusive of the xpad and ypad properties.</doc>
12353         <return-value transfer-ownership="none">
12354           <type name="none" c:type="void"/>
12355         </return-value>
12356         <parameters>
12357           <parameter name="widget" transfer-ownership="none">
12358             <doc xml:whitespace="preserve">the widget the renderer is rendering to</doc>
12359             <type name="Widget" c:type="GtkWidget*"/>
12360           </parameter>
12361           <parameter name="cell_area" transfer-ownership="none" allow-none="1">
12362             <doc xml:whitespace="preserve">The area a cell will be allocated, or %NULL</doc>
12363             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12364           </parameter>
12365           <parameter name="x_offset"
12366                      direction="out"
12367                      caller-allocates="0"
12368                      transfer-ownership="full"
12369                      allow-none="1">
12370             <doc xml:whitespace="preserve">location to return x offset of cell relative to @cell_area, or %NULL</doc>
12371             <type name="int" c:type="gint*"/>
12372           </parameter>
12373           <parameter name="y_offset"
12374                      direction="out"
12375                      caller-allocates="0"
12376                      transfer-ownership="full"
12377                      allow-none="1">
12378             <doc xml:whitespace="preserve">location to return y offset of cell relative to @cell_area, or %NULL</doc>
12379             <type name="int" c:type="gint*"/>
12380           </parameter>
12381           <parameter name="width"
12382                      direction="out"
12383                      caller-allocates="0"
12384                      transfer-ownership="full"
12385                      allow-none="1">
12386             <doc xml:whitespace="preserve">location to return width needed to render a cell, or %NULL</doc>
12387             <type name="int" c:type="gint*"/>
12388           </parameter>
12389           <parameter name="height"
12390                      direction="out"
12391                      caller-allocates="0"
12392                      transfer-ownership="full"
12393                      allow-none="1">
12394             <doc xml:whitespace="preserve">location to return height needed to render a cell, or %NULL</doc>
12395             <type name="int" c:type="gint*"/>
12396           </parameter>
12397         </parameters>
12398       </method>
12399       <method name="render" c:identifier="gtk_cell_renderer_render">
12400         <doc xml:whitespace="preserve">Invokes the virtual render function of the #GtkCellRenderer. The three
12401 passed-in rectangles are areas of @window. Most renderers will draw within
12402 should be honored with respect to @cell_area. @background_area includes the
12403 blank space around the cell, and also the area containing the tree expander;
12404 so the @background_area rectangles for all cells tile to cover the entire</doc>
12405         <return-value transfer-ownership="none">
12406           <type name="none" c:type="void"/>
12407         </return-value>
12408         <parameters>
12409           <parameter name="window" transfer-ownership="none">
12410             <doc xml:whitespace="preserve">a #GdkDrawable to draw to</doc>
12411             <type name="Gdk.Window" c:type="GdkWindow*"/>
12412           </parameter>
12413           <parameter name="widget" transfer-ownership="none">
12414             <doc xml:whitespace="preserve">the widget owning @window</doc>
12415             <type name="Widget" c:type="GtkWidget*"/>
12416           </parameter>
12417           <parameter name="background_area" transfer-ownership="none">
12418             <doc xml:whitespace="preserve">entire cell area (including tree expanders and maybe padding on the sides)</doc>
12419             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12420           </parameter>
12421           <parameter name="cell_area" transfer-ownership="none">
12422             <doc xml:whitespace="preserve">area normally rendered by a cell renderer</doc>
12423             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12424           </parameter>
12425           <parameter name="expose_area" transfer-ownership="none">
12426             <doc xml:whitespace="preserve">area that actually needs updating</doc>
12427             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12428           </parameter>
12429           <parameter name="flags" transfer-ownership="none">
12430             <doc xml:whitespace="preserve">flags that affect rendering</doc>
12431             <type name="CellRendererState" c:type="GtkCellRendererState"/>
12432           </parameter>
12433         </parameters>
12434       </method>
12435       <method name="activate" c:identifier="gtk_cell_renderer_activate">
12436         <doc xml:whitespace="preserve">Passes an activate event to the cell renderer for possible processing.  
12437 Some cell renderers may use events; for example, #GtkCellRendererToggle 
12438 toggles when it gets a mouse click.</doc>
12439         <return-value transfer-ownership="none">
12440           <doc xml:whitespace="preserve">%TRUE if the event was consumed/handled</doc>
12441           <type name="boolean" c:type="gboolean"/>
12442         </return-value>
12443         <parameters>
12444           <parameter name="event" transfer-ownership="none">
12445             <doc xml:whitespace="preserve">a #GdkEvent</doc>
12446             <type name="Gdk.Event" c:type="GdkEvent*"/>
12447           </parameter>
12448           <parameter name="widget" transfer-ownership="none">
12449             <doc xml:whitespace="preserve">widget that received the event</doc>
12450             <type name="Widget" c:type="GtkWidget*"/>
12451           </parameter>
12452           <parameter name="path" transfer-ownership="none">
12453             <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
12454             <type name="utf8" c:type="gchar*"/>
12455           </parameter>
12456           <parameter name="background_area" transfer-ownership="none">
12457             <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
12458             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12459           </parameter>
12460           <parameter name="cell_area" transfer-ownership="none">
12461             <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
12462             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12463           </parameter>
12464           <parameter name="flags" transfer-ownership="none">
12465             <doc xml:whitespace="preserve">render flags</doc>
12466             <type name="CellRendererState" c:type="GtkCellRendererState"/>
12467           </parameter>
12468         </parameters>
12469       </method>
12470       <method name="start_editing"
12471               c:identifier="gtk_cell_renderer_start_editing">
12472         <doc xml:whitespace="preserve">Passes an activate event to the cell renderer for possible processing.</doc>
12473         <return-value transfer-ownership="full">
12474           <doc xml:whitespace="preserve">A new #GtkCellEditable, or %NULL</doc>
12475           <type name="CellEditable" c:type="GtkCellEditable*"/>
12476         </return-value>
12477         <parameters>
12478           <parameter name="event" transfer-ownership="none">
12479             <doc xml:whitespace="preserve">a #GdkEvent</doc>
12480             <type name="Gdk.Event" c:type="GdkEvent*"/>
12481           </parameter>
12482           <parameter name="widget" transfer-ownership="none">
12483             <doc xml:whitespace="preserve">widget that received the event</doc>
12484             <type name="Widget" c:type="GtkWidget*"/>
12485           </parameter>
12486           <parameter name="path" transfer-ownership="none">
12487             <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
12488             <type name="utf8" c:type="gchar*"/>
12489           </parameter>
12490           <parameter name="background_area" transfer-ownership="none">
12491             <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
12492             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12493           </parameter>
12494           <parameter name="cell_area" transfer-ownership="none">
12495             <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
12496             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
12497           </parameter>
12498           <parameter name="flags" transfer-ownership="none">
12499             <doc xml:whitespace="preserve">render flags</doc>
12500             <type name="CellRendererState" c:type="GtkCellRendererState"/>
12501           </parameter>
12502         </parameters>
12503       </method>
12504       <method name="set_fixed_size"
12505               c:identifier="gtk_cell_renderer_set_fixed_size">
12506         <doc xml:whitespace="preserve">Sets the renderer size to be explicit, independent of the properties set.</doc>
12507         <return-value transfer-ownership="none">
12508           <type name="none" c:type="void"/>
12509         </return-value>
12510         <parameters>
12511           <parameter name="width" transfer-ownership="none">
12512             <doc xml:whitespace="preserve">the width of the cell renderer, or -1</doc>
12513             <type name="int" c:type="gint"/>
12514           </parameter>
12515           <parameter name="height" transfer-ownership="none">
12516             <doc xml:whitespace="preserve">the height of the cell renderer, or -1</doc>
12517             <type name="int" c:type="gint"/>
12518           </parameter>
12519         </parameters>
12520       </method>
12521       <method name="get_fixed_size"
12522               c:identifier="gtk_cell_renderer_get_fixed_size">
12523         <doc xml:whitespace="preserve">Fills in @width and @height with the appropriate size of @cell.</doc>
12524         <return-value transfer-ownership="none">
12525           <type name="none" c:type="void"/>
12526         </return-value>
12527         <parameters>
12528           <parameter name="width"
12529                      direction="out"
12530                      caller-allocates="0"
12531                      transfer-ownership="full"
12532                      allow-none="1">
12533             <doc xml:whitespace="preserve">location to fill in with the fixed width of the cell, or %NULL</doc>
12534             <type name="int" c:type="gint*"/>
12535           </parameter>
12536           <parameter name="height"
12537                      direction="out"
12538                      caller-allocates="0"
12539                      transfer-ownership="full"
12540                      allow-none="1">
12541             <doc xml:whitespace="preserve">location to fill in with the fixed height of the cell, or %NULL</doc>
12542             <type name="int" c:type="gint*"/>
12543           </parameter>
12544         </parameters>
12545       </method>
12546       <method name="set_alignment"
12547               c:identifier="gtk_cell_renderer_set_alignment"
12548               version="2.18">
12549         <doc xml:whitespace="preserve">Sets the renderer's alignment within its available space.</doc>
12550         <return-value transfer-ownership="none">
12551           <type name="none" c:type="void"/>
12552         </return-value>
12553         <parameters>
12554           <parameter name="xalign" transfer-ownership="none">
12555             <doc xml:whitespace="preserve">the x alignment of the cell renderer</doc>
12556             <type name="float" c:type="gfloat"/>
12557           </parameter>
12558           <parameter name="yalign" transfer-ownership="none">
12559             <doc xml:whitespace="preserve">the y alignment of the cell renderer</doc>
12560             <type name="float" c:type="gfloat"/>
12561           </parameter>
12562         </parameters>
12563       </method>
12564       <method name="get_alignment"
12565               c:identifier="gtk_cell_renderer_get_alignment"
12566               version="2.18">
12567         <doc xml:whitespace="preserve">Fills in @xalign and @yalign with the appropriate values of @cell.</doc>
12568         <return-value transfer-ownership="none">
12569           <type name="none" c:type="void"/>
12570         </return-value>
12571         <parameters>
12572           <parameter name="xalign"
12573                      direction="out"
12574                      caller-allocates="0"
12575                      transfer-ownership="full"
12576                      allow-none="1">
12577             <doc xml:whitespace="preserve">location to fill in with the x alignment of the cell, or %NULL</doc>
12578             <type name="float" c:type="gfloat*"/>
12579           </parameter>
12580           <parameter name="yalign"
12581                      direction="out"
12582                      caller-allocates="0"
12583                      transfer-ownership="full"
12584                      allow-none="1">
12585             <doc xml:whitespace="preserve">location to fill in with the y alignment of the cell, or %NULL</doc>
12586             <type name="float" c:type="gfloat*"/>
12587           </parameter>
12588         </parameters>
12589       </method>
12590       <method name="set_padding"
12591               c:identifier="gtk_cell_renderer_set_padding"
12592               version="2.18">
12593         <doc xml:whitespace="preserve">Sets the renderer's padding.</doc>
12594         <return-value transfer-ownership="none">
12595           <type name="none" c:type="void"/>
12596         </return-value>
12597         <parameters>
12598           <parameter name="xpad" transfer-ownership="none">
12599             <doc xml:whitespace="preserve">the x padding of the cell renderer</doc>
12600             <type name="int" c:type="gint"/>
12601           </parameter>
12602           <parameter name="ypad" transfer-ownership="none">
12603             <doc xml:whitespace="preserve">the y padding of the cell renderer</doc>
12604             <type name="int" c:type="gint"/>
12605           </parameter>
12606         </parameters>
12607       </method>
12608       <method name="get_padding"
12609               c:identifier="gtk_cell_renderer_get_padding"
12610               version="2.18">
12611         <doc xml:whitespace="preserve">Fills in @xpad and @ypad with the appropriate values of @cell.</doc>
12612         <return-value transfer-ownership="none">
12613           <type name="none" c:type="void"/>
12614         </return-value>
12615         <parameters>
12616           <parameter name="xpad"
12617                      direction="out"
12618                      caller-allocates="0"
12619                      transfer-ownership="full"
12620                      allow-none="1">
12621             <doc xml:whitespace="preserve">location to fill in with the x padding of the cell, or %NULL</doc>
12622             <type name="int" c:type="gint*"/>
12623           </parameter>
12624           <parameter name="ypad"
12625                      direction="out"
12626                      caller-allocates="0"
12627                      transfer-ownership="full"
12628                      allow-none="1">
12629             <doc xml:whitespace="preserve">location to fill in with the y padding of the cell, or %NULL</doc>
12630             <type name="int" c:type="gint*"/>
12631           </parameter>
12632         </parameters>
12633       </method>
12634       <method name="set_visible"
12635               c:identifier="gtk_cell_renderer_set_visible"
12636               version="2.18">
12637         <doc xml:whitespace="preserve">Sets the cell renderer's visibility.</doc>
12638         <return-value transfer-ownership="none">
12639           <type name="none" c:type="void"/>
12640         </return-value>
12641         <parameters>
12642           <parameter name="visible" transfer-ownership="none">
12643             <doc xml:whitespace="preserve">the visibility of the cell</doc>
12644             <type name="boolean" c:type="gboolean"/>
12645           </parameter>
12646         </parameters>
12647       </method>
12648       <method name="get_visible"
12649               c:identifier="gtk_cell_renderer_get_visible"
12650               version="2.18">
12651         <doc xml:whitespace="preserve">Returns the cell renderer's visibility.</doc>
12652         <return-value transfer-ownership="none">
12653           <doc xml:whitespace="preserve">%TRUE if the cell renderer is visible</doc>
12654           <type name="boolean" c:type="gboolean"/>
12655         </return-value>
12656       </method>
12657       <method name="set_sensitive"
12658               c:identifier="gtk_cell_renderer_set_sensitive"
12659               version="2.18">
12660         <doc xml:whitespace="preserve">Sets the cell renderer's sensitivity.</doc>
12661         <return-value transfer-ownership="none">
12662           <type name="none" c:type="void"/>
12663         </return-value>
12664         <parameters>
12665           <parameter name="sensitive" transfer-ownership="none">
12666             <doc xml:whitespace="preserve">the sensitivity of the cell</doc>
12667             <type name="boolean" c:type="gboolean"/>
12668           </parameter>
12669         </parameters>
12670       </method>
12671       <method name="get_sensitive"
12672               c:identifier="gtk_cell_renderer_get_sensitive"
12673               version="2.18">
12674         <doc xml:whitespace="preserve">Returns the cell renderer's sensitivity.</doc>
12675         <return-value transfer-ownership="none">
12676           <doc xml:whitespace="preserve">%TRUE if the cell renderer is sensitive</doc>
12677           <type name="boolean" c:type="gboolean"/>
12678         </return-value>
12679       </method>
12680       <method name="editing_canceled"
12681               c:identifier="gtk_cell_renderer_editing_canceled"
12682               version="2.4"
12683               deprecated="Use gtk_cell_renderer_stop_editing() instead"
12684               deprecated-version="2.6">
12685         <doc xml:whitespace="preserve">Causes the cell renderer to emit the #GtkCellRenderer::editing-canceled 
12686 signal.  
12687 This function is for use only by implementations of cell renderers that 
12688 need to notify the client program that an editing process was canceled 
12689 and the changes were not committed.</doc>
12690         <return-value transfer-ownership="none">
12691           <type name="none" c:type="void"/>
12692         </return-value>
12693       </method>
12694       <method name="stop_editing"
12695               c:identifier="gtk_cell_renderer_stop_editing"
12696               version="2.6">
12697         <doc xml:whitespace="preserve">Informs the cell renderer that the editing is stopped.
12698 If @canceled is %TRUE, the cell renderer will emit the 
12699 #GtkCellRenderer::editing-canceled signal. 
12700 This function should be called by cell renderer implementations 
12701 in response to the #GtkCellEditable::editing-done signal of 
12702 #GtkCellEditable.</doc>
12703         <return-value transfer-ownership="none">
12704           <type name="none" c:type="void"/>
12705         </return-value>
12706         <parameters>
12707           <parameter name="canceled" transfer-ownership="none">
12708             <doc xml:whitespace="preserve">%TRUE if the editing has been canceled</doc>
12709             <type name="boolean" c:type="gboolean"/>
12710           </parameter>
12711         </parameters>
12712       </method>
12713       <property name="cell-background"
12714                 readable="0"
12715                 writable="1"
12716                 transfer-ownership="none">
12717         <type name="utf8" c:type="gchararray"/>
12718       </property>
12719       <property name="cell-background-gdk"
12720                 writable="1"
12721                 transfer-ownership="none">
12722         <type name="Gdk.Color" c:type="GdkColor"/>
12723       </property>
12724       <property name="cell-background-set"
12725                 writable="1"
12726                 transfer-ownership="none">
12727         <type name="boolean" c:type="gboolean"/>
12728       </property>
12729       <property name="editing" transfer-ownership="none">
12730         <type name="boolean" c:type="gboolean"/>
12731       </property>
12732       <property name="height" writable="1" transfer-ownership="none">
12733         <type name="int" c:type="gint"/>
12734       </property>
12735       <property name="is-expanded" writable="1" transfer-ownership="none">
12736         <type name="boolean" c:type="gboolean"/>
12737       </property>
12738       <property name="is-expander" writable="1" transfer-ownership="none">
12739         <type name="boolean" c:type="gboolean"/>
12740       </property>
12741       <property name="mode" writable="1" transfer-ownership="none">
12742         <type name="CellRendererMode" c:type="GtkCellRendererMode"/>
12743       </property>
12744       <property name="sensitive" writable="1" transfer-ownership="none">
12745         <type name="boolean" c:type="gboolean"/>
12746       </property>
12747       <property name="visible" writable="1" transfer-ownership="none">
12748         <type name="boolean" c:type="gboolean"/>
12749       </property>
12750       <property name="width" writable="1" transfer-ownership="none">
12751         <type name="int" c:type="gint"/>
12752       </property>
12753       <property name="xalign" writable="1" transfer-ownership="none">
12754         <type name="float" c:type="gfloat"/>
12755       </property>
12756       <property name="xpad" writable="1" transfer-ownership="none">
12757         <type name="uint" c:type="guint"/>
12758       </property>
12759       <property name="yalign" writable="1" transfer-ownership="none">
12760         <type name="float" c:type="gfloat"/>
12761       </property>
12762       <property name="ypad" writable="1" transfer-ownership="none">
12763         <type name="uint" c:type="guint"/>
12764       </property>
12765       <field name="parent">
12766         <type name="Object" c:type="GtkObject"/>
12767       </field>
12768       <field name="xalign">
12769         <type name="float" c:type="gfloat"/>
12770       </field>
12771       <field name="yalign">
12772         <type name="float" c:type="gfloat"/>
12773       </field>
12774       <field name="width">
12775         <type name="int" c:type="gint"/>
12776       </field>
12777       <field name="height">
12778         <type name="int" c:type="gint"/>
12779       </field>
12780       <field name="xpad">
12781         <type name="uint16" c:type="guint16"/>
12782       </field>
12783       <field name="ypad">
12784         <type name="uint16" c:type="guint16"/>
12785       </field>
12786       <field name="mode" bits="2">
12787         <type name="uint" c:type="guint"/>
12788       </field>
12789       <field name="visible" bits="1">
12790         <type name="uint" c:type="guint"/>
12791       </field>
12792       <field name="is_expander" bits="1">
12793         <type name="uint" c:type="guint"/>
12794       </field>
12795       <field name="is_expanded" bits="1">
12796         <type name="uint" c:type="guint"/>
12797       </field>
12798       <field name="cell_background_set" bits="1">
12799         <type name="uint" c:type="guint"/>
12800       </field>
12801       <field name="sensitive" bits="1">
12802         <type name="uint" c:type="guint"/>
12803       </field>
12804       <field name="editing" bits="1">
12805         <type name="uint" c:type="guint"/>
12806       </field>
12807       <glib:signal name="editing-canceled" version="2.4">
12808         <doc xml:whitespace="preserve">This signal gets emitted when the user cancels the process of editing a
12809 cell.  For example, an editable cell renderer could be written to cancel
12810 editing when the user presses Escape.</doc>
12811         <return-value transfer-ownership="full">
12812           <type name="none" c:type="void"/>
12813         </return-value>
12814       </glib:signal>
12815       <glib:signal name="editing-started" version="2.6">
12816         <doc xml:whitespace="preserve">This signal gets emitted when a cell starts to be edited.
12817 The intended use of this signal is to do special setup
12818 on @editable, e.g. adding a #GtkEntryCompletion or setting
12819 up additional columns in a #GtkComboBox.
12820 Note that GTK+ doesn't guarantee that cell renderers will
12821 continue to use the same kind of widget for editing in future
12822 releases, therefore you should check the type of @editable
12823 before doing any specific setup, as in the following example:
12824 |[
12825 static void
12826 text_editing_started (GtkCellRenderer *cell,
12827 GtkCellEditable *editable,
12828 const gchar     *path,
12829 gpointer         data)
12830 {
12831 if (GTK_IS_ENTRY (editable)) 
12832 {
12833 GtkEntry *entry = GTK_ENTRY (editable);
12834 /&amp;ast; ... create a GtkEntryCompletion &amp;ast;/
12835 gtk_entry_set_completion (entry, completion);
12836 }
12837 }
12838 ]|</doc>
12839         <return-value transfer-ownership="full">
12840           <type name="none" c:type="void"/>
12841         </return-value>
12842         <parameters>
12843           <parameter name="editable" transfer-ownership="none">
12844             <doc xml:whitespace="preserve">the #GtkCellEditable</doc>
12845             <type name="CellEditable" c:type="GtkCellEditable"/>
12846           </parameter>
12847           <parameter name="path" transfer-ownership="none">
12848             <doc xml:whitespace="preserve">the path identifying the edited cell</doc>
12849             <type name="utf8" c:type="gchararray"/>
12850           </parameter>
12851         </parameters>
12852       </glib:signal>
12853     </class>
12854     <class name="CellRendererAccel"
12855            c:type="GtkCellRendererAccel"
12856            parent="CellRendererText"
12857            glib:type-name="GtkCellRendererAccel"
12858            glib:get-type="gtk_cell_renderer_accel_get_type"
12859            glib:type-struct="CellRendererAccelClass">
12860       <constructor name="new"
12861                    c:identifier="gtk_cell_renderer_accel_new"
12862                    version="2.10">
12863         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererAccel.</doc>
12864         <return-value transfer-ownership="full">
12865           <doc xml:whitespace="preserve">the new cell renderer</doc>
12866           <type name="CellRendererAccel" c:type="GtkCellRenderer*"/>
12867         </return-value>
12868       </constructor>
12869       <property name="accel-key"
12870                 version="2.10"
12871                 writable="1"
12872                 transfer-ownership="none">
12873         <doc xml:whitespace="preserve">The keyval of the accelerator.</doc>
12874         <type name="uint" c:type="guint"/>
12875       </property>
12876       <property name="accel-mode"
12877                 version="2.10"
12878                 writable="1"
12879                 transfer-ownership="none">
12880         <doc xml:whitespace="preserve">Determines if the edited accelerators are GTK+ accelerators. If
12881 they are, consumed modifiers are suppressed, only accelerators
12882 accepted by GTK+ are allowed, and the accelerators are rendered
12883 in the same way as they are in menus.</doc>
12884         <type name="CellRendererAccelMode" c:type="GtkCellRendererAccelMode"/>
12885       </property>
12886       <property name="accel-mods"
12887                 version="2.10"
12888                 writable="1"
12889                 transfer-ownership="none">
12890         <doc xml:whitespace="preserve">The modifier mask of the accelerator.</doc>
12891         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
12892       </property>
12893       <property name="keycode"
12894                 version="2.10"
12895                 writable="1"
12896                 transfer-ownership="none">
12897         <doc xml:whitespace="preserve">The hardware keycode of the accelerator. Note that the hardware keycode is
12898 only relevant if the key does not have a keyval. Normally, the keyboard
12899 configuration should assign keyvals to all keys.</doc>
12900         <type name="uint" c:type="guint"/>
12901       </property>
12902       <field name="parent">
12903         <type name="CellRendererText" c:type="GtkCellRendererText"/>
12904       </field>
12905       <field name="accel_key">
12906         <type name="uint" c:type="guint"/>
12907       </field>
12908       <field name="accel_mods">
12909         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
12910       </field>
12911       <field name="keycode">
12912         <type name="uint" c:type="guint"/>
12913       </field>
12914       <field name="accel_mode">
12915         <type name="CellRendererAccelMode" c:type="GtkCellRendererAccelMode"/>
12916       </field>
12917       <field name="edit_widget">
12918         <type name="Widget" c:type="GtkWidget*"/>
12919       </field>
12920       <field name="grab_widget">
12921         <type name="Widget" c:type="GtkWidget*"/>
12922       </field>
12923       <field name="sizing_label">
12924         <type name="Widget" c:type="GtkWidget*"/>
12925       </field>
12926       <glib:signal name="accel-cleared" version="2.10">
12927         <doc xml:whitespace="preserve">Gets emitted when the user has removed the accelerator.</doc>
12928         <return-value transfer-ownership="full">
12929           <type name="none" c:type="void"/>
12930         </return-value>
12931         <parameters>
12932           <parameter name="path_string" transfer-ownership="none">
12933             <doc xml:whitespace="preserve">the path identifying the row of the edited cell</doc>
12934             <type name="utf8" c:type="gchararray"/>
12935           </parameter>
12936         </parameters>
12937       </glib:signal>
12938       <glib:signal name="accel-edited" version="2.10">
12939         <doc xml:whitespace="preserve">Gets emitted when the user has selected a new accelerator.</doc>
12940         <return-value transfer-ownership="full">
12941           <type name="none" c:type="void"/>
12942         </return-value>
12943         <parameters>
12944           <parameter name="path_string" transfer-ownership="none">
12945             <doc xml:whitespace="preserve">the path identifying the row of the edited cell</doc>
12946             <type name="utf8" c:type="gchararray"/>
12947           </parameter>
12948           <parameter name="accel_key" transfer-ownership="none">
12949             <doc xml:whitespace="preserve">the new accelerator keyval</doc>
12950             <type name="uint" c:type="guint"/>
12951           </parameter>
12952           <parameter name="accel_mods" transfer-ownership="none">
12953             <doc xml:whitespace="preserve">the new acclerator modifier mask</doc>
12954             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
12955           </parameter>
12956           <parameter name="hardware_keycode" transfer-ownership="none">
12957             <doc xml:whitespace="preserve">the keycode of the new accelerator</doc>
12958             <type name="uint" c:type="guint"/>
12959           </parameter>
12960         </parameters>
12961       </glib:signal>
12962     </class>
12963     <record name="CellRendererAccelClass"
12964             c:type="GtkCellRendererAccelClass"
12965             glib:is-gtype-struct-for="CellRendererAccel">
12966       <field name="parent_class">
12967         <type name="CellRendererTextClass" c:type="GtkCellRendererTextClass"/>
12968       </field>
12969       <field name="accel_edited">
12970         <callback name="accel_edited" c:type="accel_edited">
12971           <return-value transfer-ownership="none">
12972             <type name="none" c:type="void"/>
12973           </return-value>
12974           <parameters>
12975             <parameter name="accel" transfer-ownership="none">
12976               <type name="CellRendererAccel" c:type="GtkCellRendererAccel*"/>
12977             </parameter>
12978             <parameter name="path_string" transfer-ownership="none">
12979               <type name="utf8" c:type="gchar*"/>
12980             </parameter>
12981             <parameter name="accel_key" transfer-ownership="none">
12982               <type name="uint" c:type="guint"/>
12983             </parameter>
12984             <parameter name="accel_mods" transfer-ownership="none">
12985               <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
12986             </parameter>
12987             <parameter name="hardware_keycode" transfer-ownership="none">
12988               <type name="uint" c:type="guint"/>
12989             </parameter>
12990           </parameters>
12991         </callback>
12992       </field>
12993       <field name="accel_cleared">
12994         <callback name="accel_cleared" c:type="accel_cleared">
12995           <return-value transfer-ownership="none">
12996             <type name="none" c:type="void"/>
12997           </return-value>
12998           <parameters>
12999             <parameter name="accel" transfer-ownership="none">
13000               <type name="CellRendererAccel" c:type="GtkCellRendererAccel*"/>
13001             </parameter>
13002             <parameter name="path_string" transfer-ownership="none">
13003               <type name="utf8" c:type="gchar*"/>
13004             </parameter>
13005           </parameters>
13006         </callback>
13007       </field>
13008       <field name="gtk_reserved0">
13009         <callback name="gtk_reserved0" c:type="_gtk_reserved0">
13010           <return-value transfer-ownership="none">
13011             <type name="none" c:type="void"/>
13012           </return-value>
13013         </callback>
13014       </field>
13015       <field name="gtk_reserved1">
13016         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
13017           <return-value transfer-ownership="none">
13018             <type name="none" c:type="void"/>
13019           </return-value>
13020         </callback>
13021       </field>
13022       <field name="gtk_reserved2">
13023         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
13024           <return-value transfer-ownership="none">
13025             <type name="none" c:type="void"/>
13026           </return-value>
13027         </callback>
13028       </field>
13029       <field name="gtk_reserved3">
13030         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
13031           <return-value transfer-ownership="none">
13032             <type name="none" c:type="void"/>
13033           </return-value>
13034         </callback>
13035       </field>
13036       <field name="gtk_reserved4">
13037         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
13038           <return-value transfer-ownership="none">
13039             <type name="none" c:type="void"/>
13040           </return-value>
13041         </callback>
13042       </field>
13043     </record>
13044     <enumeration name="CellRendererAccelMode"
13045                  glib:type-name="GtkCellRendererAccelMode"
13046                  glib:get-type="gtk_cell_renderer_accel_mode_get_type"
13047                  c:type="GtkCellRendererAccelMode">
13048       <member name="gtk"
13049               value="0"
13050               c:identifier="GTK_CELL_RENDERER_ACCEL_MODE_GTK"
13051               glib:nick="gtk"/>
13052       <member name="other"
13053               value="1"
13054               c:identifier="GTK_CELL_RENDERER_ACCEL_MODE_OTHER"
13055               glib:nick="other"/>
13056     </enumeration>
13057     <record name="CellRendererClass"
13058             c:type="GtkCellRendererClass"
13059             glib:is-gtype-struct-for="CellRenderer">
13060       <field name="parent_class">
13061         <type name="ObjectClass" c:type="GtkObjectClass"/>
13062       </field>
13063       <field name="get_size">
13064         <callback name="get_size" c:type="get_size">
13065           <return-value transfer-ownership="none">
13066             <type name="none" c:type="void"/>
13067           </return-value>
13068           <parameters>
13069             <parameter name="cell" transfer-ownership="none">
13070               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
13071             </parameter>
13072             <parameter name="widget" transfer-ownership="none">
13073               <doc xml:whitespace="preserve">the widget the renderer is rendering to</doc>
13074               <type name="Widget" c:type="GtkWidget*"/>
13075             </parameter>
13076             <parameter name="cell_area"
13077                        transfer-ownership="none"
13078                        allow-none="1">
13079               <doc xml:whitespace="preserve">The area a cell will be allocated, or %NULL</doc>
13080               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
13081             </parameter>
13082             <parameter name="x_offset"
13083                        direction="out"
13084                        caller-allocates="0"
13085                        transfer-ownership="full"
13086                        allow-none="1">
13087               <doc xml:whitespace="preserve">location to return x offset of cell relative to @cell_area, or %NULL</doc>
13088               <type name="int" c:type="gint*"/>
13089             </parameter>
13090             <parameter name="y_offset"
13091                        direction="out"
13092                        caller-allocates="0"
13093                        transfer-ownership="full"
13094                        allow-none="1">
13095               <doc xml:whitespace="preserve">location to return y offset of cell relative to @cell_area, or %NULL</doc>
13096               <type name="int" c:type="gint*"/>
13097             </parameter>
13098             <parameter name="width"
13099                        direction="out"
13100                        caller-allocates="0"
13101                        transfer-ownership="full"
13102                        allow-none="1">
13103               <doc xml:whitespace="preserve">location to return width needed to render a cell, or %NULL</doc>
13104               <type name="int" c:type="gint*"/>
13105             </parameter>
13106             <parameter name="height"
13107                        direction="out"
13108                        caller-allocates="0"
13109                        transfer-ownership="full"
13110                        allow-none="1">
13111               <doc xml:whitespace="preserve">location to return height needed to render a cell, or %NULL</doc>
13112               <type name="int" c:type="gint*"/>
13113             </parameter>
13114           </parameters>
13115         </callback>
13116       </field>
13117       <field name="render">
13118         <callback name="render" c:type="render">
13119           <return-value transfer-ownership="none">
13120             <type name="none" c:type="void"/>
13121           </return-value>
13122           <parameters>
13123             <parameter name="cell" transfer-ownership="none">
13124               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
13125             </parameter>
13126             <parameter name="window" transfer-ownership="none">
13127               <doc xml:whitespace="preserve">a #GdkDrawable to draw to</doc>
13128               <type name="Gdk.Drawable" c:type="GdkDrawable*"/>
13129             </parameter>
13130             <parameter name="widget" transfer-ownership="none">
13131               <doc xml:whitespace="preserve">the widget owning @window</doc>
13132               <type name="Widget" c:type="GtkWidget*"/>
13133             </parameter>
13134             <parameter name="background_area" transfer-ownership="none">
13135               <doc xml:whitespace="preserve">entire cell area (including tree expanders and maybe padding on the sides)</doc>
13136               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
13137             </parameter>
13138             <parameter name="cell_area" transfer-ownership="none">
13139               <doc xml:whitespace="preserve">area normally rendered by a cell renderer</doc>
13140               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
13141             </parameter>
13142             <parameter name="expose_area" transfer-ownership="none">
13143               <doc xml:whitespace="preserve">area that actually needs updating</doc>
13144               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
13145             </parameter>
13146             <parameter name="flags" transfer-ownership="none">
13147               <doc xml:whitespace="preserve">flags that affect rendering</doc>
13148               <type name="CellRendererState" c:type="GtkCellRendererState"/>
13149             </parameter>
13150           </parameters>
13151         </callback>
13152       </field>
13153       <field name="activate">
13154         <callback name="activate" c:type="activate">
13155           <return-value transfer-ownership="none">
13156             <doc xml:whitespace="preserve">%TRUE if the event was consumed/handled</doc>
13157             <type name="boolean" c:type="gboolean"/>
13158           </return-value>
13159           <parameters>
13160             <parameter name="cell" transfer-ownership="none">
13161               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
13162             </parameter>
13163             <parameter name="event" transfer-ownership="none">
13164               <doc xml:whitespace="preserve">a #GdkEvent</doc>
13165               <type name="Gdk.Event" c:type="GdkEvent*"/>
13166             </parameter>
13167             <parameter name="widget" transfer-ownership="none">
13168               <doc xml:whitespace="preserve">widget that received the event</doc>
13169               <type name="Widget" c:type="GtkWidget*"/>
13170             </parameter>
13171             <parameter name="path" transfer-ownership="none">
13172               <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
13173               <type name="utf8" c:type="gchar*"/>
13174             </parameter>
13175             <parameter name="background_area" transfer-ownership="none">
13176               <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
13177               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
13178             </parameter>
13179             <parameter name="cell_area" transfer-ownership="none">
13180               <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
13181               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
13182             </parameter>
13183             <parameter name="flags" transfer-ownership="none">
13184               <doc xml:whitespace="preserve">render flags</doc>
13185               <type name="CellRendererState" c:type="GtkCellRendererState"/>
13186             </parameter>
13187           </parameters>
13188         </callback>
13189       </field>
13190       <field name="start_editing">
13191         <callback name="start_editing" c:type="start_editing">
13192           <return-value transfer-ownership="full">
13193             <doc xml:whitespace="preserve">A new #GtkCellEditable, or %NULL</doc>
13194             <type name="CellEditable" c:type="GtkCellEditable*"/>
13195           </return-value>
13196           <parameters>
13197             <parameter name="cell" transfer-ownership="none">
13198               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
13199             </parameter>
13200             <parameter name="event" transfer-ownership="none">
13201               <doc xml:whitespace="preserve">a #GdkEvent</doc>
13202               <type name="Gdk.Event" c:type="GdkEvent*"/>
13203             </parameter>
13204             <parameter name="widget" transfer-ownership="none">
13205               <doc xml:whitespace="preserve">widget that received the event</doc>
13206               <type name="Widget" c:type="GtkWidget*"/>
13207             </parameter>
13208             <parameter name="path" transfer-ownership="none">
13209               <doc xml:whitespace="preserve">widget-dependent string representation of the event location; e.g. for #GtkTreeView, a string representation of #GtkTreePath</doc>
13210               <type name="utf8" c:type="gchar*"/>
13211             </parameter>
13212             <parameter name="background_area" transfer-ownership="none">
13213               <doc xml:whitespace="preserve">background area as passed to gtk_cell_renderer_render()</doc>
13214               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
13215             </parameter>
13216             <parameter name="cell_area" transfer-ownership="none">
13217               <doc xml:whitespace="preserve">cell area as passed to gtk_cell_renderer_render()</doc>
13218               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
13219             </parameter>
13220             <parameter name="flags" transfer-ownership="none">
13221               <doc xml:whitespace="preserve">render flags</doc>
13222               <type name="CellRendererState" c:type="GtkCellRendererState"/>
13223             </parameter>
13224           </parameters>
13225         </callback>
13226       </field>
13227       <field name="editing_canceled">
13228         <callback name="editing_canceled" c:type="editing_canceled">
13229           <return-value transfer-ownership="none">
13230             <type name="none" c:type="void"/>
13231           </return-value>
13232           <parameters>
13233             <parameter name="cell" transfer-ownership="none">
13234               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
13235             </parameter>
13236           </parameters>
13237         </callback>
13238       </field>
13239       <field name="editing_started">
13240         <callback name="editing_started" c:type="editing_started">
13241           <return-value transfer-ownership="none">
13242             <type name="none" c:type="void"/>
13243           </return-value>
13244           <parameters>
13245             <parameter name="cell" transfer-ownership="none">
13246               <type name="CellRenderer" c:type="GtkCellRenderer*"/>
13247             </parameter>
13248             <parameter name="editable" transfer-ownership="none">
13249               <type name="CellEditable" c:type="GtkCellEditable*"/>
13250             </parameter>
13251             <parameter name="path" transfer-ownership="none">
13252               <type name="utf8" c:type="gchar*"/>
13253             </parameter>
13254           </parameters>
13255         </callback>
13256       </field>
13257       <field name="gtk_reserved1">
13258         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
13259           <return-value transfer-ownership="none">
13260             <type name="none" c:type="void"/>
13261           </return-value>
13262         </callback>
13263       </field>
13264       <field name="gtk_reserved2">
13265         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
13266           <return-value transfer-ownership="none">
13267             <type name="none" c:type="void"/>
13268           </return-value>
13269         </callback>
13270       </field>
13271     </record>
13272     <class name="CellRendererCombo"
13273            c:type="GtkCellRendererCombo"
13274            parent="CellRendererText"
13275            glib:type-name="GtkCellRendererCombo"
13276            glib:get-type="gtk_cell_renderer_combo_get_type"
13277            glib:type-struct="CellRendererComboClass">
13278       <constructor name="new"
13279                    c:identifier="gtk_cell_renderer_combo_new"
13280                    version="2.6">
13281         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererCombo. 
13282 Adjust how text is drawn using object properties. 
13283 Object properties can be set globally (with g_object_set()). 
13284 Also, with #GtkTreeViewColumn, you can bind a property to a value 
13285 in a #GtkTreeModel. For example, you can bind the "text" property 
13286 on the cell renderer to a string value in the model, thus rendering 
13287 a different string in each row of the #GtkTreeView.</doc>
13288         <return-value transfer-ownership="full">
13289           <doc xml:whitespace="preserve">the new cell renderer</doc>
13290           <type name="CellRendererCombo" c:type="GtkCellRenderer*"/>
13291         </return-value>
13292       </constructor>
13293       <property name="has-entry" writable="1" transfer-ownership="none">
13294         <type name="boolean" c:type="gboolean"/>
13295       </property>
13296       <property name="model"
13297                 version="2.6"
13298                 writable="1"
13299                 transfer-ownership="none">
13300         <doc xml:whitespace="preserve">Holds a tree model containing the possible values for the combo box. 
13301 Use the text_column property to specify the column holding the values.</doc>
13302         <type name="TreeModel" c:type="GtkTreeModel"/>
13303       </property>
13304       <property name="text-column"
13305                 version="2.6"
13306                 writable="1"
13307                 transfer-ownership="none">
13308         <doc xml:whitespace="preserve">Specifies the model column which holds the possible values for the 
13309 combo box. 
13310 Note that this refers to the model specified in the model property, 
13311 &lt;emphasis&gt;not&lt;/emphasis&gt; the model backing the tree view to which 
13312 this cell renderer is attached.
13313 #GtkCellRendererCombo automatically adds a text cell renderer for 
13314 this column to its combo box.</doc>
13315         <type name="int" c:type="gint"/>
13316       </property>
13317       <field name="parent">
13318         <type name="CellRendererText" c:type="GtkCellRendererText"/>
13319       </field>
13320       <field name="model">
13321         <type name="TreeModel" c:type="GtkTreeModel*"/>
13322       </field>
13323       <field name="text_column">
13324         <type name="int" c:type="gint"/>
13325       </field>
13326       <field name="has_entry">
13327         <type name="boolean" c:type="gboolean"/>
13328       </field>
13329       <field name="focus_out_id">
13330         <type name="uint" c:type="guint"/>
13331       </field>
13332       <glib:signal name="changed" version="2.14">
13333         <doc xml:whitespace="preserve">This signal is emitted each time after the user selected an item in
13334 the combo box, either by using the mouse or the arrow keys.  Contrary
13335 to GtkComboBox, GtkCellRendererCombo::changed is not emitted for
13336 changes made to a selected item in the entry.  The argument @new_iter
13337 corresponds to the newly selected item in the combo box and it is relative
13338 to the GtkTreeModel set via the model property on GtkCellRendererCombo.
13339 Note that as soon as you change the model displayed in the tree view,
13340 the tree view will immediately cease the editing operating.  This
13341 means that you most probably want to refrain from changing the model
13342 until the combo cell renderer emits the edited or editing_canceled signal.</doc>
13343         <return-value transfer-ownership="full">
13344           <type name="none" c:type="void"/>
13345         </return-value>
13346         <parameters>
13347           <parameter name="path_string" transfer-ownership="none">
13348             <doc xml:whitespace="preserve">a string of the path identifying the edited cell (relative to the tree view model)</doc>
13349             <type name="utf8" c:type="gchararray"/>
13350           </parameter>
13351           <parameter name="new_iter" transfer-ownership="none">
13352             <doc xml:whitespace="preserve">the new iter selected in the combo box (relative to the combo box model)</doc>
13353             <type name="TreeIter" c:type="GtkTreeIter"/>
13354           </parameter>
13355         </parameters>
13356       </glib:signal>
13357     </class>
13358     <record name="CellRendererComboClass"
13359             c:type="GtkCellRendererComboClass"
13360             glib:is-gtype-struct-for="CellRendererCombo">
13361       <field name="parent">
13362         <type name="CellRendererTextClass" c:type="GtkCellRendererTextClass"/>
13363       </field>
13364     </record>
13365     <enumeration name="CellRendererMode"
13366                  glib:type-name="GtkCellRendererMode"
13367                  glib:get-type="gtk_cell_renderer_mode_get_type"
13368                  c:type="GtkCellRendererMode">
13369       <member name="inert"
13370               value="0"
13371               c:identifier="GTK_CELL_RENDERER_MODE_INERT"
13372               glib:nick="inert"/>
13373       <member name="activatable"
13374               value="1"
13375               c:identifier="GTK_CELL_RENDERER_MODE_ACTIVATABLE"
13376               glib:nick="activatable"/>
13377       <member name="editable"
13378               value="2"
13379               c:identifier="GTK_CELL_RENDERER_MODE_EDITABLE"
13380               glib:nick="editable"/>
13381     </enumeration>
13382     <class name="CellRendererPixbuf"
13383            c:type="GtkCellRendererPixbuf"
13384            parent="CellRenderer"
13385            glib:type-name="GtkCellRendererPixbuf"
13386            glib:get-type="gtk_cell_renderer_pixbuf_get_type"
13387            glib:type-struct="CellRendererPixbufClass">
13388       <constructor name="new" c:identifier="gtk_cell_renderer_pixbuf_new">
13389         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererPixbuf. Adjust rendering
13390 parameters using object properties. Object properties can be set
13391 globally (with g_object_set()). Also, with #GtkTreeViewColumn, you
13392 can bind a property to a value in a #GtkTreeModel. For example, you
13393 can bind the "pixbuf" property on the cell renderer to a pixbuf value
13394 in the model, thus rendering a different image in each row of the
13395 #GtkTreeView.</doc>
13396         <return-value transfer-ownership="full">
13397           <doc xml:whitespace="preserve">the new cell renderer</doc>
13398           <type name="CellRendererPixbuf" c:type="GtkCellRenderer*"/>
13399         </return-value>
13400       </constructor>
13401       <property name="follow-state"
13402                 version="2.8"
13403                 writable="1"
13404                 transfer-ownership="none">
13405         <doc xml:whitespace="preserve">Specifies whether the rendered pixbuf should be colorized
13406 according to the #GtkCellRendererState.</doc>
13407         <type name="boolean" c:type="gboolean"/>
13408       </property>
13409       <property name="gicon"
13410                 version="2.14"
13411                 writable="1"
13412                 transfer-ownership="none">
13413         <doc xml:whitespace="preserve">The GIcon representing the icon to display.
13414 If the icon theme is changed, the image will be updated
13415 automatically.</doc>
13416         <type name="Gio.Icon" c:type="GIcon"/>
13417       </property>
13418       <property name="icon-name"
13419                 version="2.8"
13420                 writable="1"
13421                 transfer-ownership="none">
13422         <doc xml:whitespace="preserve">The name of the themed icon to display.
13423 This property only has an effect if not overridden by "stock_id" 
13424 or "pixbuf" properties.</doc>
13425         <type name="utf8" c:type="gchararray"/>
13426       </property>
13427       <property name="pixbuf" writable="1" transfer-ownership="none">
13428         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf"/>
13429       </property>
13430       <property name="pixbuf-expander-closed"
13431                 writable="1"
13432                 transfer-ownership="none">
13433         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf"/>
13434       </property>
13435       <property name="pixbuf-expander-open"
13436                 writable="1"
13437                 transfer-ownership="none">
13438         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf"/>
13439       </property>
13440       <property name="stock-detail" writable="1" transfer-ownership="none">
13441         <type name="utf8" c:type="gchararray"/>
13442       </property>
13443       <property name="stock-id" writable="1" transfer-ownership="none">
13444         <type name="utf8" c:type="gchararray"/>
13445       </property>
13446       <property name="stock-size" writable="1" transfer-ownership="none">
13447         <type name="uint" c:type="guint"/>
13448       </property>
13449       <field name="parent">
13450         <type name="CellRenderer" c:type="GtkCellRenderer"/>
13451       </field>
13452       <field name="pixbuf">
13453         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
13454       </field>
13455       <field name="pixbuf_expander_open">
13456         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
13457       </field>
13458       <field name="pixbuf_expander_closed">
13459         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
13460       </field>
13461     </class>
13462     <record name="CellRendererPixbufClass"
13463             c:type="GtkCellRendererPixbufClass"
13464             glib:is-gtype-struct-for="CellRendererPixbuf">
13465       <field name="parent_class">
13466         <type name="CellRendererClass" c:type="GtkCellRendererClass"/>
13467       </field>
13468       <field name="gtk_reserved1">
13469         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
13470           <return-value transfer-ownership="none">
13471             <type name="none" c:type="void"/>
13472           </return-value>
13473         </callback>
13474       </field>
13475       <field name="gtk_reserved2">
13476         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
13477           <return-value transfer-ownership="none">
13478             <type name="none" c:type="void"/>
13479           </return-value>
13480         </callback>
13481       </field>
13482       <field name="gtk_reserved3">
13483         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
13484           <return-value transfer-ownership="none">
13485             <type name="none" c:type="void"/>
13486           </return-value>
13487         </callback>
13488       </field>
13489       <field name="gtk_reserved4">
13490         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
13491           <return-value transfer-ownership="none">
13492             <type name="none" c:type="void"/>
13493           </return-value>
13494         </callback>
13495       </field>
13496     </record>
13497     <class name="CellRendererProgress"
13498            c:type="GtkCellRendererProgress"
13499            parent="CellRenderer"
13500            glib:type-name="GtkCellRendererProgress"
13501            glib:get-type="gtk_cell_renderer_progress_get_type"
13502            glib:type-struct="CellRendererProgressClass">
13503       <constructor name="new"
13504                    c:identifier="gtk_cell_renderer_progress_new"
13505                    version="2.6">
13506         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererProgress.</doc>
13507         <return-value transfer-ownership="full">
13508           <doc xml:whitespace="preserve">the new cell renderer</doc>
13509           <type name="CellRendererProgress" c:type="GtkCellRenderer*"/>
13510         </return-value>
13511       </constructor>
13512       <property name="orientation"
13513                 version="2.12"
13514                 writable="1"
13515                 transfer-ownership="none">
13516         <doc xml:whitespace="preserve">The "orientation" property controls the direction and growth
13517 direction of the progress bar (left-to-right, right-to-left,
13518 top-to-bottom or bottom-to-top).</doc>
13519         <type name="ProgressBarOrientation"
13520               c:type="GtkProgressBarOrientation"/>
13521       </property>
13522       <property name="pulse"
13523                 version="2.12"
13524                 writable="1"
13525                 transfer-ownership="none">
13526         <doc xml:whitespace="preserve">Setting this to a non-negative value causes the cell renderer to
13527 enter "activity mode", where a block bounces back and forth to 
13528 indicate that some progress is made, without specifying exactly how
13529 much.
13530 Each increment of the property causes the block to move by a little 
13531 bit.
13532 To indicate that the activity has not started yet, set the property
13533 to zero. To indicate completion, set the property to %G_MAXINT.</doc>
13534         <type name="int" c:type="gint"/>
13535       </property>
13536       <property name="text"
13537                 version="2.6"
13538                 writable="1"
13539                 transfer-ownership="none">
13540         <doc xml:whitespace="preserve">The "text" property determines the label which will be drawn
13541 over the progress bar. Setting this property to %NULL causes the default 
13542 label to be displayed. Setting this property to an empty string causes 
13543 no label to be displayed.</doc>
13544         <type name="utf8" c:type="gchararray"/>
13545       </property>
13546       <property name="text-xalign"
13547                 version="2.12"
13548                 writable="1"
13549                 transfer-ownership="none">
13550         <doc xml:whitespace="preserve">The "text-xalign" property controls the horizontal alignment of the
13551 text in the progress bar.  Valid values range from 0 (left) to 1
13552 (right).  Reserved for RTL layouts.</doc>
13553         <type name="float" c:type="gfloat"/>
13554       </property>
13555       <property name="text-yalign"
13556                 version="2.12"
13557                 writable="1"
13558                 transfer-ownership="none">
13559         <doc xml:whitespace="preserve">The "text-yalign" property controls the vertical alignment of the
13560 text in the progress bar.  Valid values range from 0 (top) to 1
13561 (bottom).</doc>
13562         <type name="float" c:type="gfloat"/>
13563       </property>
13564       <property name="value"
13565                 version="2.6"
13566                 writable="1"
13567                 transfer-ownership="none">
13568         <doc xml:whitespace="preserve">The "value" property determines the percentage to which the
13569 progress bar will be "filled in".</doc>
13570         <type name="int" c:type="gint"/>
13571       </property>
13572       <field name="parent_instance">
13573         <type name="CellRenderer" c:type="GtkCellRenderer"/>
13574       </field>
13575       <field name="priv">
13576         <type name="CellRendererProgressPrivate"
13577               c:type="GtkCellRendererProgressPrivate*"/>
13578       </field>
13579     </class>
13580     <record name="CellRendererProgressClass"
13581             c:type="GtkCellRendererProgressClass"
13582             glib:is-gtype-struct-for="CellRendererProgress">
13583       <field name="parent_class">
13584         <type name="CellRendererClass" c:type="GtkCellRendererClass"/>
13585       </field>
13586       <field name="gtk_reserved1">
13587         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
13588           <return-value transfer-ownership="none">
13589             <type name="none" c:type="void"/>
13590           </return-value>
13591         </callback>
13592       </field>
13593       <field name="gtk_reserved2">
13594         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
13595           <return-value transfer-ownership="none">
13596             <type name="none" c:type="void"/>
13597           </return-value>
13598         </callback>
13599       </field>
13600       <field name="gtk_reserved3">
13601         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
13602           <return-value transfer-ownership="none">
13603             <type name="none" c:type="void"/>
13604           </return-value>
13605         </callback>
13606       </field>
13607       <field name="gtk_reserved4">
13608         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
13609           <return-value transfer-ownership="none">
13610             <type name="none" c:type="void"/>
13611           </return-value>
13612         </callback>
13613       </field>
13614     </record>
13615     <record name="CellRendererProgressPrivate"
13616             c:type="GtkCellRendererProgressPrivate">
13617     </record>
13618     <class name="CellRendererSpin"
13619            c:type="GtkCellRendererSpin"
13620            parent="CellRendererText"
13621            glib:type-name="GtkCellRendererSpin"
13622            glib:get-type="gtk_cell_renderer_spin_get_type"
13623            glib:type-struct="CellRendererSpinClass">
13624       <constructor name="new"
13625                    c:identifier="gtk_cell_renderer_spin_new"
13626                    version="2.10">
13627         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererSpin.</doc>
13628         <return-value transfer-ownership="full">
13629           <doc xml:whitespace="preserve">a new #GtkCellRendererSpin</doc>
13630           <type name="CellRendererSpin" c:type="GtkCellRenderer*"/>
13631         </return-value>
13632       </constructor>
13633       <property name="adjustment"
13634                 version="2.10"
13635                 writable="1"
13636                 transfer-ownership="none">
13637         <doc xml:whitespace="preserve">The adjustment that holds the value of the spinbutton. 
13638 This must be non-%NULL for the cell renderer to be editable.</doc>
13639         <type name="Adjustment" c:type="GtkAdjustment"/>
13640       </property>
13641       <property name="climb-rate"
13642                 version="2.10"
13643                 writable="1"
13644                 transfer-ownership="none">
13645         <doc xml:whitespace="preserve">The acceleration rate when you hold down a button.</doc>
13646         <type name="double" c:type="gdouble"/>
13647       </property>
13648       <property name="digits"
13649                 version="2.10"
13650                 writable="1"
13651                 transfer-ownership="none">
13652         <doc xml:whitespace="preserve">The number of decimal places to display.</doc>
13653         <type name="uint" c:type="guint"/>
13654       </property>
13655       <field name="parent">
13656         <type name="CellRendererText" c:type="GtkCellRendererText"/>
13657       </field>
13658     </class>
13659     <record name="CellRendererSpinClass"
13660             c:type="GtkCellRendererSpinClass"
13661             glib:is-gtype-struct-for="CellRendererSpin">
13662       <field name="parent">
13663         <type name="CellRendererTextClass" c:type="GtkCellRendererTextClass"/>
13664       </field>
13665     </record>
13666     <record name="CellRendererSpinPrivate" c:type="GtkCellRendererSpinPrivate">
13667     </record>
13668     <class name="CellRendererSpinner"
13669            c:type="GtkCellRendererSpinner"
13670            parent="CellRenderer"
13671            glib:type-name="GtkCellRendererSpinner"
13672            glib:get-type="gtk_cell_renderer_spinner_get_type"
13673            glib:type-struct="CellRendererSpinnerClass">
13674       <constructor name="new" c:identifier="gtk_cell_renderer_spinner_new">
13675         <return-value transfer-ownership="full">
13676           <type name="CellRendererSpinner" c:type="GtkCellRenderer*"/>
13677         </return-value>
13678       </constructor>
13679       <property name="active" writable="1" transfer-ownership="none">
13680         <type name="boolean" c:type="gboolean"/>
13681       </property>
13682       <property name="pulse"
13683                 version="2.20"
13684                 writable="1"
13685                 transfer-ownership="none">
13686         <doc xml:whitespace="preserve">Pulse of the spinner. Increment this value to draw the next frame of the
13687 spinner animation. Usually, you would update this value in a timeout.
13688 The #GtkSpinner widget draws one full cycle of the animation per second by default.
13689 You can learn about the number of frames used by the theme
13690 by looking at the #GtkSpinner:num-steps style property and the duration
13691 of the cycle by looking at #GtkSpinner:cycle-duration.</doc>
13692         <type name="uint" c:type="guint"/>
13693       </property>
13694       <property name="size"
13695                 version="2.20"
13696                 writable="1"
13697                 transfer-ownership="none">
13698         <doc xml:whitespace="preserve">The #GtkIconSize value that specifies the size of the rendered spinner.</doc>
13699         <type name="IconSize" c:type="GtkIconSize"/>
13700       </property>
13701       <field name="parent">
13702         <type name="CellRenderer" c:type="GtkCellRenderer"/>
13703       </field>
13704       <field name="priv">
13705         <type name="CellRendererSpinnerPrivate"
13706               c:type="GtkCellRendererSpinnerPrivate*"/>
13707       </field>
13708     </class>
13709     <record name="CellRendererSpinnerClass"
13710             c:type="GtkCellRendererSpinnerClass"
13711             glib:is-gtype-struct-for="CellRendererSpinner">
13712       <field name="parent_class">
13713         <type name="CellRendererClass" c:type="GtkCellRendererClass"/>
13714       </field>
13715       <field name="gtk_reserved1">
13716         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
13717           <return-value transfer-ownership="none">
13718             <type name="none" c:type="void"/>
13719           </return-value>
13720         </callback>
13721       </field>
13722       <field name="gtk_reserved2">
13723         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
13724           <return-value transfer-ownership="none">
13725             <type name="none" c:type="void"/>
13726           </return-value>
13727         </callback>
13728       </field>
13729       <field name="gtk_reserved3">
13730         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
13731           <return-value transfer-ownership="none">
13732             <type name="none" c:type="void"/>
13733           </return-value>
13734         </callback>
13735       </field>
13736       <field name="gtk_reserved4">
13737         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
13738           <return-value transfer-ownership="none">
13739             <type name="none" c:type="void"/>
13740           </return-value>
13741         </callback>
13742       </field>
13743     </record>
13744     <record name="CellRendererSpinnerPrivate"
13745             c:type="GtkCellRendererSpinnerPrivate">
13746     </record>
13747     <bitfield name="CellRendererState"
13748               glib:type-name="GtkCellRendererState"
13749               glib:get-type="gtk_cell_renderer_state_get_type"
13750               c:type="GtkCellRendererState">
13751       <member name="selected"
13752               value="1"
13753               c:identifier="GTK_CELL_RENDERER_SELECTED"
13754               glib:nick="selected"/>
13755       <member name="prelit"
13756               value="2"
13757               c:identifier="GTK_CELL_RENDERER_PRELIT"
13758               glib:nick="prelit"/>
13759       <member name="insensitive"
13760               value="4"
13761               c:identifier="GTK_CELL_RENDERER_INSENSITIVE"
13762               glib:nick="insensitive"/>
13763       <member name="sorted"
13764               value="8"
13765               c:identifier="GTK_CELL_RENDERER_SORTED"
13766               glib:nick="sorted"/>
13767       <member name="focused"
13768               value="16"
13769               c:identifier="GTK_CELL_RENDERER_FOCUSED"
13770               glib:nick="focused"/>
13771     </bitfield>
13772     <class name="CellRendererText"
13773            c:type="GtkCellRendererText"
13774            parent="CellRenderer"
13775            glib:type-name="GtkCellRendererText"
13776            glib:get-type="gtk_cell_renderer_text_get_type"
13777            glib:type-struct="CellRendererTextClass">
13778       <constructor name="new" c:identifier="gtk_cell_renderer_text_new">
13779         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererText. Adjust how text is drawn using
13780 object properties. Object properties can be
13781 set globally (with g_object_set()). Also, with #GtkTreeViewColumn,
13782 you can bind a property to a value in a #GtkTreeModel. For example,
13783 you can bind the "text" property on the cell renderer to a string
13784 value in the model, thus rendering a different string in each row
13785 of the #GtkTreeView</doc>
13786         <return-value transfer-ownership="full">
13787           <doc xml:whitespace="preserve">the new cell renderer</doc>
13788           <type name="CellRendererText" c:type="GtkCellRenderer*"/>
13789         </return-value>
13790       </constructor>
13791       <method name="set_fixed_height_from_font"
13792               c:identifier="gtk_cell_renderer_text_set_fixed_height_from_font">
13793         <doc xml:whitespace="preserve">Sets the height of a renderer to explicitly be determined by the "font" and
13794 "y_pad" property set on it.  Further changes in these properties do not
13795 affect the height, so they must be accompanied by a subsequent call to this
13796 function.  Using this function is unflexible, and should really only be used
13797 if calculating the size of a cell is too slow (ie, a massive number of cells
13798 displayed).  If @number_of_rows is -1, then the fixed height is unset, and
13799 the height is determined by the properties again.</doc>
13800         <return-value transfer-ownership="none">
13801           <type name="none" c:type="void"/>
13802         </return-value>
13803         <parameters>
13804           <parameter name="number_of_rows" transfer-ownership="none">
13805             <doc xml:whitespace="preserve">Number of rows of text each cell renderer is allocated, or -1</doc>
13806             <type name="int" c:type="gint"/>
13807           </parameter>
13808         </parameters>
13809       </method>
13810       <property name="align-set" writable="1" transfer-ownership="none">
13811         <type name="boolean" c:type="gboolean"/>
13812       </property>
13813       <property name="alignment"
13814                 version="2.10"
13815                 writable="1"
13816                 transfer-ownership="none">
13817         <doc xml:whitespace="preserve">Specifies how to align the lines of text with respect to each other. 
13818 Note that this property describes how to align the lines of text in 
13819 case there are several of them. The "xalign" property of #GtkCellRenderer, 
13820 on the other hand, sets the horizontal alignment of the whole text.</doc>
13821         <type name="Pango.Alignment" c:type="PangoAlignment"/>
13822       </property>
13823       <property name="attributes" writable="1" transfer-ownership="none">
13824         <type name="Pango.AttrList" c:type="PangoAttrList"/>
13825       </property>
13826       <property name="background"
13827                 readable="0"
13828                 writable="1"
13829                 transfer-ownership="none">
13830         <type name="utf8" c:type="gchararray"/>
13831       </property>
13832       <property name="background-gdk" writable="1" transfer-ownership="none">
13833         <type name="Gdk.Color" c:type="GdkColor"/>
13834       </property>
13835       <property name="background-set" writable="1" transfer-ownership="none">
13836         <type name="boolean" c:type="gboolean"/>
13837       </property>
13838       <property name="editable" writable="1" transfer-ownership="none">
13839         <type name="boolean" c:type="gboolean"/>
13840       </property>
13841       <property name="editable-set" writable="1" transfer-ownership="none">
13842         <type name="boolean" c:type="gboolean"/>
13843       </property>
13844       <property name="ellipsize"
13845                 version="2.6"
13846                 writable="1"
13847                 transfer-ownership="none">
13848         <doc xml:whitespace="preserve">Specifies the preferred place to ellipsize the string, if the cell renderer 
13849 does not have enough room to display the entire string. Setting it to 
13850 %PANGO_ELLIPSIZE_NONE turns off ellipsizing. See the wrap-width property
13851 for another way of making the text fit into a given width.</doc>
13852         <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
13853       </property>
13854       <property name="ellipsize-set" writable="1" transfer-ownership="none">
13855         <type name="boolean" c:type="gboolean"/>
13856       </property>
13857       <property name="family" writable="1" transfer-ownership="none">
13858         <type name="utf8" c:type="gchararray"/>
13859       </property>
13860       <property name="family-set" writable="1" transfer-ownership="none">
13861         <type name="boolean" c:type="gboolean"/>
13862       </property>
13863       <property name="font" writable="1" transfer-ownership="none">
13864         <type name="utf8" c:type="gchararray"/>
13865       </property>
13866       <property name="font-desc" writable="1" transfer-ownership="none">
13867         <type name="Pango.FontDescription" c:type="PangoFontDescription"/>
13868       </property>
13869       <property name="foreground"
13870                 readable="0"
13871                 writable="1"
13872                 transfer-ownership="none">
13873         <type name="utf8" c:type="gchararray"/>
13874       </property>
13875       <property name="foreground-gdk" writable="1" transfer-ownership="none">
13876         <type name="Gdk.Color" c:type="GdkColor"/>
13877       </property>
13878       <property name="foreground-set" writable="1" transfer-ownership="none">
13879         <type name="boolean" c:type="gboolean"/>
13880       </property>
13881       <property name="language" writable="1" transfer-ownership="none">
13882         <type name="utf8" c:type="gchararray"/>
13883       </property>
13884       <property name="language-set" writable="1" transfer-ownership="none">
13885         <type name="boolean" c:type="gboolean"/>
13886       </property>
13887       <property name="markup"
13888                 readable="0"
13889                 writable="1"
13890                 transfer-ownership="none">
13891         <type name="utf8" c:type="gchararray"/>
13892       </property>
13893       <property name="rise" writable="1" transfer-ownership="none">
13894         <type name="int" c:type="gint"/>
13895       </property>
13896       <property name="rise-set" writable="1" transfer-ownership="none">
13897         <type name="boolean" c:type="gboolean"/>
13898       </property>
13899       <property name="scale" writable="1" transfer-ownership="none">
13900         <type name="double" c:type="gdouble"/>
13901       </property>
13902       <property name="scale-set" writable="1" transfer-ownership="none">
13903         <type name="boolean" c:type="gboolean"/>
13904       </property>
13905       <property name="single-paragraph-mode"
13906                 writable="1"
13907                 transfer-ownership="none">
13908         <type name="boolean" c:type="gboolean"/>
13909       </property>
13910       <property name="size" writable="1" transfer-ownership="none">
13911         <type name="int" c:type="gint"/>
13912       </property>
13913       <property name="size-points" writable="1" transfer-ownership="none">
13914         <type name="double" c:type="gdouble"/>
13915       </property>
13916       <property name="size-set" writable="1" transfer-ownership="none">
13917         <type name="boolean" c:type="gboolean"/>
13918       </property>
13919       <property name="stretch" writable="1" transfer-ownership="none">
13920         <type name="Pango.Stretch" c:type="PangoStretch"/>
13921       </property>
13922       <property name="stretch-set" writable="1" transfer-ownership="none">
13923         <type name="boolean" c:type="gboolean"/>
13924       </property>
13925       <property name="strikethrough" writable="1" transfer-ownership="none">
13926         <type name="boolean" c:type="gboolean"/>
13927       </property>
13928       <property name="strikethrough-set"
13929                 writable="1"
13930                 transfer-ownership="none">
13931         <type name="boolean" c:type="gboolean"/>
13932       </property>
13933       <property name="style" writable="1" transfer-ownership="none">
13934         <type name="Pango.Style" c:type="PangoStyle"/>
13935       </property>
13936       <property name="style-set" writable="1" transfer-ownership="none">
13937         <type name="boolean" c:type="gboolean"/>
13938       </property>
13939       <property name="text" writable="1" transfer-ownership="none">
13940         <type name="utf8" c:type="gchararray"/>
13941       </property>
13942       <property name="underline" writable="1" transfer-ownership="none">
13943         <type name="Pango.Underline" c:type="PangoUnderline"/>
13944       </property>
13945       <property name="underline-set" writable="1" transfer-ownership="none">
13946         <type name="boolean" c:type="gboolean"/>
13947       </property>
13948       <property name="variant" writable="1" transfer-ownership="none">
13949         <type name="Pango.Variant" c:type="PangoVariant"/>
13950       </property>
13951       <property name="variant-set" writable="1" transfer-ownership="none">
13952         <type name="boolean" c:type="gboolean"/>
13953       </property>
13954       <property name="weight" writable="1" transfer-ownership="none">
13955         <type name="int" c:type="gint"/>
13956       </property>
13957       <property name="weight-set" writable="1" transfer-ownership="none">
13958         <type name="boolean" c:type="gboolean"/>
13959       </property>
13960       <property name="width-chars"
13961                 version="2.6"
13962                 writable="1"
13963                 transfer-ownership="none">
13964         <doc xml:whitespace="preserve">The desired width of the cell, in characters. If this property is set to
13965 -1, the width will be calculated automatically, otherwise the cell will
13966 request either 3 characters or the property value, whichever is greater.</doc>
13967         <type name="int" c:type="gint"/>
13968       </property>
13969       <property name="wrap-mode"
13970                 version="2.8"
13971                 writable="1"
13972                 transfer-ownership="none">
13973         <doc xml:whitespace="preserve">Specifies how to break the string into multiple lines, if the cell 
13974 renderer does not have enough room to display the entire string. 
13975 This property has no effect unless the wrap-width property is set.</doc>
13976         <type name="Pango.WrapMode" c:type="PangoWrapMode"/>
13977       </property>
13978       <property name="wrap-width"
13979                 version="2.8"
13980                 writable="1"
13981                 transfer-ownership="none">
13982         <doc xml:whitespace="preserve">Specifies the width at which the text is wrapped. The wrap-mode property can 
13983 be used to influence at what character positions the line breaks can be placed.
13984 Setting wrap-width to -1 turns wrapping off.</doc>
13985         <type name="int" c:type="gint"/>
13986       </property>
13987       <field name="parent">
13988         <type name="CellRenderer" c:type="GtkCellRenderer"/>
13989       </field>
13990       <field name="text">
13991         <type name="utf8" c:type="gchar*"/>
13992       </field>
13993       <field name="font">
13994         <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
13995       </field>
13996       <field name="font_scale">
13997         <type name="double" c:type="gdouble"/>
13998       </field>
13999       <field name="foreground">
14000         <type name="Pango.Color" c:type="PangoColor"/>
14001       </field>
14002       <field name="background">
14003         <type name="Pango.Color" c:type="PangoColor"/>
14004       </field>
14005       <field name="extra_attrs">
14006         <type name="Pango.AttrList" c:type="PangoAttrList*"/>
14007       </field>
14008       <field name="underline_style">
14009         <type name="Pango.Underline" c:type="PangoUnderline"/>
14010       </field>
14011       <field name="rise">
14012         <type name="int" c:type="gint"/>
14013       </field>
14014       <field name="fixed_height_rows">
14015         <type name="int" c:type="gint"/>
14016       </field>
14017       <field name="strikethrough" bits="1">
14018         <type name="uint" c:type="guint"/>
14019       </field>
14020       <field name="editable" bits="1">
14021         <type name="uint" c:type="guint"/>
14022       </field>
14023       <field name="scale_set" bits="1">
14024         <type name="uint" c:type="guint"/>
14025       </field>
14026       <field name="foreground_set" bits="1">
14027         <type name="uint" c:type="guint"/>
14028       </field>
14029       <field name="background_set" bits="1">
14030         <type name="uint" c:type="guint"/>
14031       </field>
14032       <field name="underline_set" bits="1">
14033         <type name="uint" c:type="guint"/>
14034       </field>
14035       <field name="rise_set" bits="1">
14036         <type name="uint" c:type="guint"/>
14037       </field>
14038       <field name="strikethrough_set" bits="1">
14039         <type name="uint" c:type="guint"/>
14040       </field>
14041       <field name="editable_set" bits="1">
14042         <type name="uint" c:type="guint"/>
14043       </field>
14044       <field name="calc_fixed_height" bits="1">
14045         <type name="uint" c:type="guint"/>
14046       </field>
14047       <glib:signal name="edited">
14048         <return-value transfer-ownership="full">
14049           <type name="none" c:type="void"/>
14050         </return-value>
14051         <parameters>
14052           <parameter name="object" transfer-ownership="none">
14053             <type name="utf8" c:type="gchararray"/>
14054           </parameter>
14055           <parameter name="p0" transfer-ownership="none">
14056             <type name="utf8" c:type="gchararray"/>
14057           </parameter>
14058         </parameters>
14059       </glib:signal>
14060     </class>
14061     <record name="CellRendererTextClass"
14062             c:type="GtkCellRendererTextClass"
14063             glib:is-gtype-struct-for="CellRendererText">
14064       <field name="parent_class">
14065         <type name="CellRendererClass" c:type="GtkCellRendererClass"/>
14066       </field>
14067       <field name="edited">
14068         <callback name="edited" c:type="edited">
14069           <return-value transfer-ownership="none">
14070             <type name="none" c:type="void"/>
14071           </return-value>
14072           <parameters>
14073             <parameter name="cell_renderer_text" transfer-ownership="none">
14074               <type name="CellRendererText" c:type="GtkCellRendererText*"/>
14075             </parameter>
14076             <parameter name="path" transfer-ownership="none">
14077               <type name="utf8" c:type="gchar*"/>
14078             </parameter>
14079             <parameter name="new_text" transfer-ownership="none">
14080               <type name="utf8" c:type="gchar*"/>
14081             </parameter>
14082           </parameters>
14083         </callback>
14084       </field>
14085       <field name="gtk_reserved1">
14086         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
14087           <return-value transfer-ownership="none">
14088             <type name="none" c:type="void"/>
14089           </return-value>
14090         </callback>
14091       </field>
14092       <field name="gtk_reserved2">
14093         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
14094           <return-value transfer-ownership="none">
14095             <type name="none" c:type="void"/>
14096           </return-value>
14097         </callback>
14098       </field>
14099       <field name="gtk_reserved3">
14100         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
14101           <return-value transfer-ownership="none">
14102             <type name="none" c:type="void"/>
14103           </return-value>
14104         </callback>
14105       </field>
14106       <field name="gtk_reserved4">
14107         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
14108           <return-value transfer-ownership="none">
14109             <type name="none" c:type="void"/>
14110           </return-value>
14111         </callback>
14112       </field>
14113     </record>
14114     <class name="CellRendererToggle"
14115            c:type="GtkCellRendererToggle"
14116            parent="CellRenderer"
14117            glib:type-name="GtkCellRendererToggle"
14118            glib:get-type="gtk_cell_renderer_toggle_get_type"
14119            glib:type-struct="CellRendererToggleClass">
14120       <constructor name="new" c:identifier="gtk_cell_renderer_toggle_new">
14121         <doc xml:whitespace="preserve">Creates a new #GtkCellRendererToggle. Adjust rendering
14122 parameters using object properties. Object properties can be set
14123 globally (with g_object_set()). Also, with #GtkTreeViewColumn, you
14124 can bind a property to a value in a #GtkTreeModel. For example, you
14125 can bind the "active" property on the cell renderer to a boolean value
14126 in the model, thus causing the check button to reflect the state of
14127 the model.</doc>
14128         <return-value transfer-ownership="full">
14129           <doc xml:whitespace="preserve">the new cell renderer</doc>
14130           <type name="CellRendererToggle" c:type="GtkCellRenderer*"/>
14131         </return-value>
14132       </constructor>
14133       <method name="get_radio"
14134               c:identifier="gtk_cell_renderer_toggle_get_radio">
14135         <doc xml:whitespace="preserve">Returns whether we're rendering radio toggles rather than checkboxes.</doc>
14136         <return-value transfer-ownership="none">
14137           <doc xml:whitespace="preserve">%TRUE if we're rendering radio toggles rather than checkboxes</doc>
14138           <type name="boolean" c:type="gboolean"/>
14139         </return-value>
14140       </method>
14141       <method name="set_radio"
14142               c:identifier="gtk_cell_renderer_toggle_set_radio">
14143         <doc xml:whitespace="preserve">If @radio is %TRUE, the cell renderer renders a radio toggle
14144 (i.e. a toggle in a group of mutually-exclusive toggles).
14145 If %FALSE, it renders a check toggle (a standalone boolean option).
14146 This can be set globally for the cell renderer, or changed just
14147 before rendering each cell in the model (for #GtkTreeView, you set
14148 up a per-row setting using #GtkTreeViewColumn to associate model
14149 columns with cell renderer properties).</doc>
14150         <return-value transfer-ownership="none">
14151           <type name="none" c:type="void"/>
14152         </return-value>
14153         <parameters>
14154           <parameter name="radio" transfer-ownership="none">
14155             <doc xml:whitespace="preserve">%TRUE to make the toggle look like a radio button</doc>
14156             <type name="boolean" c:type="gboolean"/>
14157           </parameter>
14158         </parameters>
14159       </method>
14160       <method name="get_active"
14161               c:identifier="gtk_cell_renderer_toggle_get_active">
14162         <doc xml:whitespace="preserve">Returns whether the cell renderer is active. See
14163 gtk_cell_renderer_toggle_set_active().</doc>
14164         <return-value transfer-ownership="none">
14165           <doc xml:whitespace="preserve">%TRUE if the cell renderer is active.</doc>
14166           <type name="boolean" c:type="gboolean"/>
14167         </return-value>
14168       </method>
14169       <method name="set_active"
14170               c:identifier="gtk_cell_renderer_toggle_set_active">
14171         <doc xml:whitespace="preserve">Activates or deactivates a cell renderer.</doc>
14172         <return-value transfer-ownership="none">
14173           <type name="none" c:type="void"/>
14174         </return-value>
14175         <parameters>
14176           <parameter name="setting" transfer-ownership="none">
14177             <doc xml:whitespace="preserve">the value to set.</doc>
14178             <type name="boolean" c:type="gboolean"/>
14179           </parameter>
14180         </parameters>
14181       </method>
14182       <method name="get_activatable"
14183               c:identifier="gtk_cell_renderer_toggle_get_activatable"
14184               version="2.18">
14185         <doc xml:whitespace="preserve">Returns whether the cell renderer is activatable. See
14186 gtk_cell_renderer_toggle_set_activatable().</doc>
14187         <return-value transfer-ownership="none">
14188           <doc xml:whitespace="preserve">%TRUE if the cell renderer is activatable.</doc>
14189           <type name="boolean" c:type="gboolean"/>
14190         </return-value>
14191       </method>
14192       <method name="set_activatable"
14193               c:identifier="gtk_cell_renderer_toggle_set_activatable"
14194               version="2.18">
14195         <doc xml:whitespace="preserve">Makes the cell renderer activatable.</doc>
14196         <return-value transfer-ownership="none">
14197           <type name="none" c:type="void"/>
14198         </return-value>
14199         <parameters>
14200           <parameter name="setting" transfer-ownership="none">
14201             <doc xml:whitespace="preserve">the value to set.</doc>
14202             <type name="boolean" c:type="gboolean"/>
14203           </parameter>
14204         </parameters>
14205       </method>
14206       <property name="activatable" writable="1" transfer-ownership="none">
14207         <type name="boolean" c:type="gboolean"/>
14208       </property>
14209       <property name="active" writable="1" transfer-ownership="none">
14210         <type name="boolean" c:type="gboolean"/>
14211       </property>
14212       <property name="inconsistent" writable="1" transfer-ownership="none">
14213         <type name="boolean" c:type="gboolean"/>
14214       </property>
14215       <property name="indicator-size" writable="1" transfer-ownership="none">
14216         <type name="int" c:type="gint"/>
14217       </property>
14218       <property name="radio" writable="1" transfer-ownership="none">
14219         <type name="boolean" c:type="gboolean"/>
14220       </property>
14221       <field name="parent">
14222         <type name="CellRenderer" c:type="GtkCellRenderer"/>
14223       </field>
14224       <field name="active" bits="1">
14225         <type name="uint" c:type="guint"/>
14226       </field>
14227       <field name="activatable" bits="1">
14228         <type name="uint" c:type="guint"/>
14229       </field>
14230       <field name="radio" bits="1">
14231         <type name="uint" c:type="guint"/>
14232       </field>
14233       <glib:signal name="toggled">
14234         <doc xml:whitespace="preserve">The ::toggled signal is emitted when the cell is toggled.</doc>
14235         <return-value transfer-ownership="full">
14236           <type name="none" c:type="void"/>
14237         </return-value>
14238         <parameters>
14239           <parameter name="path" transfer-ownership="none">
14240             <doc xml:whitespace="preserve">string representation of #GtkTreePath describing the event location</doc>
14241             <type name="utf8" c:type="gchararray"/>
14242           </parameter>
14243         </parameters>
14244       </glib:signal>
14245     </class>
14246     <record name="CellRendererToggleClass"
14247             c:type="GtkCellRendererToggleClass"
14248             glib:is-gtype-struct-for="CellRendererToggle">
14249       <field name="parent_class">
14250         <type name="CellRendererClass" c:type="GtkCellRendererClass"/>
14251       </field>
14252       <field name="toggled">
14253         <callback name="toggled" c:type="toggled">
14254           <return-value transfer-ownership="none">
14255             <type name="none" c:type="void"/>
14256           </return-value>
14257           <parameters>
14258             <parameter name="cell_renderer_toggle" transfer-ownership="none">
14259               <type name="CellRendererToggle" c:type="GtkCellRendererToggle*"/>
14260             </parameter>
14261             <parameter name="path" transfer-ownership="none">
14262               <type name="utf8" c:type="gchar*"/>
14263             </parameter>
14264           </parameters>
14265         </callback>
14266       </field>
14267       <field name="gtk_reserved1">
14268         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
14269           <return-value transfer-ownership="none">
14270             <type name="none" c:type="void"/>
14271           </return-value>
14272         </callback>
14273       </field>
14274       <field name="gtk_reserved2">
14275         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
14276           <return-value transfer-ownership="none">
14277             <type name="none" c:type="void"/>
14278           </return-value>
14279         </callback>
14280       </field>
14281       <field name="gtk_reserved3">
14282         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
14283           <return-value transfer-ownership="none">
14284             <type name="none" c:type="void"/>
14285           </return-value>
14286         </callback>
14287       </field>
14288       <field name="gtk_reserved4">
14289         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
14290           <return-value transfer-ownership="none">
14291             <type name="none" c:type="void"/>
14292           </return-value>
14293         </callback>
14294       </field>
14295     </record>
14296     <record name="CellText" c:type="GtkCellText">
14297       <field name="type" writable="1">
14298         <type name="CellType" c:type="GtkCellType"/>
14299       </field>
14300       <field name="vertical" writable="1">
14301         <type name="int16" c:type="gint16"/>
14302       </field>
14303       <field name="horizontal" writable="1">
14304         <type name="int16" c:type="gint16"/>
14305       </field>
14306       <field name="style" writable="1">
14307         <type name="Style" c:type="GtkStyle*"/>
14308       </field>
14309       <field name="text" writable="1">
14310         <type name="utf8" c:type="gchar*"/>
14311       </field>
14312     </record>
14313     <enumeration name="CellType"
14314                  glib:type-name="GtkCellType"
14315                  glib:get-type="gtk_cell_type_get_type"
14316                  c:type="GtkCellType">
14317       <member name="empty"
14318               value="0"
14319               c:identifier="GTK_CELL_EMPTY"
14320               glib:nick="empty"/>
14321       <member name="text"
14322               value="1"
14323               c:identifier="GTK_CELL_TEXT"
14324               glib:nick="text"/>
14325       <member name="pixmap"
14326               value="2"
14327               c:identifier="GTK_CELL_PIXMAP"
14328               glib:nick="pixmap"/>
14329       <member name="pixtext"
14330               value="3"
14331               c:identifier="GTK_CELL_PIXTEXT"
14332               glib:nick="pixtext"/>
14333       <member name="widget"
14334               value="4"
14335               c:identifier="GTK_CELL_WIDGET"
14336               glib:nick="widget"/>
14337     </enumeration>
14338     <class name="CellView"
14339            c:type="GtkCellView"
14340            parent="Widget"
14341            glib:type-name="GtkCellView"
14342            glib:get-type="gtk_cell_view_get_type"
14343            glib:type-struct="CellViewClass">
14344       <implements name="Atk.ImplementorIface"/>
14345       <implements name="Buildable"/>
14346       <implements name="CellLayout"/>
14347       <constructor name="new" c:identifier="gtk_cell_view_new" version="2.6">
14348         <doc xml:whitespace="preserve">Creates a new #GtkCellView widget.</doc>
14349         <return-value transfer-ownership="full">
14350           <doc xml:whitespace="preserve">A newly created #GtkCellView widget.</doc>
14351           <type name="CellView" c:type="GtkWidget*"/>
14352         </return-value>
14353       </constructor>
14354       <constructor name="new_with_text"
14355                    c:identifier="gtk_cell_view_new_with_text"
14356                    version="2.6">
14357         <doc xml:whitespace="preserve">Creates a new #GtkCellView widget, adds a #GtkCellRendererText 
14358 to it, and makes its show @text.</doc>
14359         <return-value transfer-ownership="full">
14360           <doc xml:whitespace="preserve">A newly created #GtkCellView widget.</doc>
14361           <type name="CellView" c:type="GtkWidget*"/>
14362         </return-value>
14363         <parameters>
14364           <parameter name="text" transfer-ownership="none">
14365             <doc xml:whitespace="preserve">the text to display in the cell view</doc>
14366             <type name="utf8" c:type="gchar*"/>
14367           </parameter>
14368         </parameters>
14369       </constructor>
14370       <constructor name="new_with_markup"
14371                    c:identifier="gtk_cell_view_new_with_markup"
14372                    version="2.6">
14373         <doc xml:whitespace="preserve">Creates a new #GtkCellView widget, adds a #GtkCellRendererText 
14374 to it, and makes it show @markup. The text can be
14375 marked up with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text 
14376 markup language&lt;/link&gt;.</doc>
14377         <return-value transfer-ownership="full">
14378           <doc xml:whitespace="preserve">A newly created #GtkCellView widget.</doc>
14379           <type name="CellView" c:type="GtkWidget*"/>
14380         </return-value>
14381         <parameters>
14382           <parameter name="markup" transfer-ownership="none">
14383             <doc xml:whitespace="preserve">the text to display in the cell view</doc>
14384             <type name="utf8" c:type="gchar*"/>
14385           </parameter>
14386         </parameters>
14387       </constructor>
14388       <constructor name="new_with_pixbuf"
14389                    c:identifier="gtk_cell_view_new_with_pixbuf"
14390                    version="2.6">
14391         <doc xml:whitespace="preserve">Creates a new #GtkCellView widget, adds a #GtkCellRendererPixbuf 
14392 to it, and makes its show @pixbuf.</doc>
14393         <return-value transfer-ownership="full">
14394           <doc xml:whitespace="preserve">A newly created #GtkCellView widget.</doc>
14395           <type name="CellView" c:type="GtkWidget*"/>
14396         </return-value>
14397         <parameters>
14398           <parameter name="pixbuf" transfer-ownership="none">
14399             <doc xml:whitespace="preserve">the image to display in the cell view</doc>
14400             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
14401           </parameter>
14402         </parameters>
14403       </constructor>
14404       <method name="set_model"
14405               c:identifier="gtk_cell_view_set_model"
14406               version="2.6">
14407         <doc xml:whitespace="preserve">Sets the model for @cell_view.  If @cell_view already has a model
14408 set, it will remove it before setting the new model.  If @model is
14409 %NULL, then it will unset the old model.</doc>
14410         <return-value transfer-ownership="none">
14411           <type name="none" c:type="void"/>
14412         </return-value>
14413         <parameters>
14414           <parameter name="model" transfer-ownership="none" allow-none="1">
14415             <doc xml:whitespace="preserve">a #GtkTreeModel</doc>
14416             <type name="TreeModel" c:type="GtkTreeModel*"/>
14417           </parameter>
14418         </parameters>
14419       </method>
14420       <method name="get_model"
14421               c:identifier="gtk_cell_view_get_model"
14422               version="2.16">
14423         <doc xml:whitespace="preserve">Returns the model for @cell_view. If no model is used %NULL is
14424 returned.</doc>
14425         <return-value transfer-ownership="full">
14426           <doc xml:whitespace="preserve">a #GtkTreeModel used or %NULL</doc>
14427           <type name="TreeModel" c:type="GtkTreeModel*"/>
14428         </return-value>
14429       </method>
14430       <method name="set_displayed_row"
14431               c:identifier="gtk_cell_view_set_displayed_row"
14432               version="2.6">
14433         <doc xml:whitespace="preserve">Sets the row of the model that is currently displayed
14434 by the #GtkCellView. If the path is unset, then the
14435 contents of the cellview "stick" at their last value;
14436 this is not normally a desired result, but may be
14437 a needed intermediate state if say, the model for
14438 the #GtkCellView becomes temporarily empty.</doc>
14439         <return-value transfer-ownership="none">
14440           <type name="none" c:type="void"/>
14441         </return-value>
14442         <parameters>
14443           <parameter name="path" transfer-ownership="none" allow-none="1">
14444             <doc xml:whitespace="preserve">a #GtkTreePath or %NULL to unset.</doc>
14445             <type name="TreePath" c:type="GtkTreePath*"/>
14446           </parameter>
14447         </parameters>
14448       </method>
14449       <method name="get_displayed_row"
14450               c:identifier="gtk_cell_view_get_displayed_row"
14451               version="2.6">
14452         <doc xml:whitespace="preserve">Returns a #GtkTreePath referring to the currently 
14453 displayed row. If no row is currently displayed, 
14454 %NULL is returned.</doc>
14455         <return-value transfer-ownership="full">
14456           <doc xml:whitespace="preserve">the currently displayed row or %NULL</doc>
14457           <type name="TreePath" c:type="GtkTreePath*"/>
14458         </return-value>
14459       </method>
14460       <method name="get_size_of_row"
14461               c:identifier="gtk_cell_view_get_size_of_row"
14462               version="2.6">
14463         <doc xml:whitespace="preserve">Sets @requisition to the size needed by @cell_view to display 
14464 the model row pointed to by @path.</doc>
14465         <return-value transfer-ownership="none">
14466           <doc xml:whitespace="preserve">%TRUE</doc>
14467           <type name="boolean" c:type="gboolean"/>
14468         </return-value>
14469         <parameters>
14470           <parameter name="path" transfer-ownership="none">
14471             <doc xml:whitespace="preserve">a #GtkTreePath</doc>
14472             <type name="TreePath" c:type="GtkTreePath*"/>
14473           </parameter>
14474           <parameter name="requisition" transfer-ownership="none">
14475             <doc xml:whitespace="preserve">return location for the size</doc>
14476             <type name="Requisition" c:type="GtkRequisition*"/>
14477           </parameter>
14478         </parameters>
14479       </method>
14480       <method name="set_background_color"
14481               c:identifier="gtk_cell_view_set_background_color"
14482               version="2.6">
14483         <doc xml:whitespace="preserve">Sets the background color of @view.</doc>
14484         <return-value transfer-ownership="none">
14485           <type name="none" c:type="void"/>
14486         </return-value>
14487         <parameters>
14488           <parameter name="color" transfer-ownership="none">
14489             <doc xml:whitespace="preserve">the new background color</doc>
14490             <type name="Gdk.Color" c:type="GdkColor*"/>
14491           </parameter>
14492         </parameters>
14493       </method>
14494       <method name="get_cell_renderers"
14495               c:identifier="gtk_cell_view_get_cell_renderers"
14496               version="2.6"
14497               introspectable="0"
14498               deprecated="use gtk_cell_layout_get_cells() instead."
14499               deprecated-version="2.18">
14500         <doc xml:whitespace="preserve">Returns the cell renderers which have been added to @cell_view.
14501 renderers has been newly allocated and should be freed with
14502 g_list_free() when no longer needed.</doc>
14503         <return-value transfer-ownership="full">
14504           <doc xml:whitespace="preserve">a list of cell renderers. The list, but not the</doc>
14505           <type name="GLib.List" c:type="GList*">
14506             <type name="any" c:type="gpointer"/>
14507           </type>
14508         </return-value>
14509       </method>
14510       <property name="background"
14511                 readable="0"
14512                 writable="1"
14513                 transfer-ownership="none">
14514         <type name="utf8" c:type="gchararray"/>
14515       </property>
14516       <property name="background-gdk" writable="1" transfer-ownership="none">
14517         <type name="Gdk.Color" c:type="GdkColor"/>
14518       </property>
14519       <property name="background-set" writable="1" transfer-ownership="none">
14520         <type name="boolean" c:type="gboolean"/>
14521       </property>
14522       <property name="model" writable="1" transfer-ownership="none">
14523         <type name="TreeModel" c:type="GtkTreeModel"/>
14524       </property>
14525       <field name="parent_instance">
14526         <type name="Widget" c:type="GtkWidget"/>
14527       </field>
14528       <field name="priv">
14529         <type name="CellViewPrivate" c:type="GtkCellViewPrivate*"/>
14530       </field>
14531     </class>
14532     <record name="CellViewClass"
14533             c:type="GtkCellViewClass"
14534             glib:is-gtype-struct-for="CellView">
14535       <field name="parent_class">
14536         <type name="WidgetClass" c:type="GtkWidgetClass"/>
14537       </field>
14538     </record>
14539     <record name="CellViewPrivate" c:type="GtkCellViewPrivate">
14540     </record>
14541     <record name="CellWidget" c:type="GtkCellWidget">
14542       <field name="type" writable="1">
14543         <type name="CellType" c:type="GtkCellType"/>
14544       </field>
14545       <field name="vertical" writable="1">
14546         <type name="int16" c:type="gint16"/>
14547       </field>
14548       <field name="horizontal" writable="1">
14549         <type name="int16" c:type="gint16"/>
14550       </field>
14551       <field name="style" writable="1">
14552         <type name="Style" c:type="GtkStyle*"/>
14553       </field>
14554       <field name="widget" writable="1">
14555         <type name="Widget" c:type="GtkWidget*"/>
14556       </field>
14557     </record>
14558     <class name="CheckButton"
14559            c:type="GtkCheckButton"
14560            parent="ToggleButton"
14561            glib:type-name="GtkCheckButton"
14562            glib:get-type="gtk_check_button_get_type"
14563            glib:type-struct="CheckButtonClass">
14564       <implements name="Activatable"/>
14565       <implements name="Atk.ImplementorIface"/>
14566       <implements name="Buildable"/>
14567       <constructor name="new" c:identifier="gtk_check_button_new">
14568         <return-value transfer-ownership="full">
14569           <type name="CheckButton" c:type="GtkWidget*"/>
14570         </return-value>
14571       </constructor>
14572       <constructor name="new_with_label"
14573                    c:identifier="gtk_check_button_new_with_label">
14574         <return-value transfer-ownership="full">
14575           <type name="CheckButton" c:type="GtkWidget*"/>
14576         </return-value>
14577         <parameters>
14578           <parameter name="label" transfer-ownership="none">
14579             <type name="utf8" c:type="gchar*"/>
14580           </parameter>
14581         </parameters>
14582       </constructor>
14583       <constructor name="new_with_mnemonic"
14584                    c:identifier="gtk_check_button_new_with_mnemonic">
14585         <doc xml:whitespace="preserve">Creates a new #GtkCheckButton containing a label. The label
14586 will be created using gtk_label_new_with_mnemonic(), so underscores
14587 in @label indicate the mnemonic for the check button.</doc>
14588         <return-value transfer-ownership="full">
14589           <doc xml:whitespace="preserve">a new #GtkCheckButton</doc>
14590           <type name="CheckButton" c:type="GtkWidget*"/>
14591         </return-value>
14592         <parameters>
14593           <parameter name="label" transfer-ownership="none">
14594             <doc xml:whitespace="preserve">The text of the button, with an underscore in front of the mnemonic character</doc>
14595             <type name="utf8" c:type="gchar*"/>
14596           </parameter>
14597         </parameters>
14598       </constructor>
14599       <virtual-method name="draw_indicator">
14600         <return-value transfer-ownership="none">
14601           <type name="none" c:type="void"/>
14602         </return-value>
14603         <parameters>
14604           <parameter name="area" transfer-ownership="none">
14605             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
14606           </parameter>
14607         </parameters>
14608       </virtual-method>
14609       <field name="toggle_button">
14610         <type name="ToggleButton" c:type="GtkToggleButton"/>
14611       </field>
14612     </class>
14613     <record name="CheckButtonClass"
14614             c:type="GtkCheckButtonClass"
14615             glib:is-gtype-struct-for="CheckButton">
14616       <field name="parent_class">
14617         <type name="ToggleButtonClass" c:type="GtkToggleButtonClass"/>
14618       </field>
14619       <field name="draw_indicator">
14620         <callback name="draw_indicator" c:type="draw_indicator">
14621           <return-value transfer-ownership="none">
14622             <type name="none" c:type="void"/>
14623           </return-value>
14624           <parameters>
14625             <parameter name="check_button" transfer-ownership="none">
14626               <type name="CheckButton" c:type="GtkCheckButton*"/>
14627             </parameter>
14628             <parameter name="area" transfer-ownership="none">
14629               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
14630             </parameter>
14631           </parameters>
14632         </callback>
14633       </field>
14634       <field name="gtk_reserved1">
14635         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
14636           <return-value transfer-ownership="none">
14637             <type name="none" c:type="void"/>
14638           </return-value>
14639         </callback>
14640       </field>
14641       <field name="gtk_reserved2">
14642         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
14643           <return-value transfer-ownership="none">
14644             <type name="none" c:type="void"/>
14645           </return-value>
14646         </callback>
14647       </field>
14648       <field name="gtk_reserved3">
14649         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
14650           <return-value transfer-ownership="none">
14651             <type name="none" c:type="void"/>
14652           </return-value>
14653         </callback>
14654       </field>
14655       <field name="gtk_reserved4">
14656         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
14657           <return-value transfer-ownership="none">
14658             <type name="none" c:type="void"/>
14659           </return-value>
14660         </callback>
14661       </field>
14662     </record>
14663     <class name="CheckMenuItem"
14664            c:type="GtkCheckMenuItem"
14665            parent="MenuItem"
14666            glib:type-name="GtkCheckMenuItem"
14667            glib:get-type="gtk_check_menu_item_get_type"
14668            glib:type-struct="CheckMenuItemClass">
14669       <implements name="Activatable"/>
14670       <implements name="Atk.ImplementorIface"/>
14671       <implements name="Buildable"/>
14672       <constructor name="new" c:identifier="gtk_check_menu_item_new">
14673         <return-value transfer-ownership="full">
14674           <type name="CheckMenuItem" c:type="GtkWidget*"/>
14675         </return-value>
14676       </constructor>
14677       <constructor name="new_with_label"
14678                    c:identifier="gtk_check_menu_item_new_with_label">
14679         <return-value transfer-ownership="full">
14680           <type name="CheckMenuItem" c:type="GtkWidget*"/>
14681         </return-value>
14682         <parameters>
14683           <parameter name="label" transfer-ownership="none">
14684             <type name="utf8" c:type="gchar*"/>
14685           </parameter>
14686         </parameters>
14687       </constructor>
14688       <constructor name="new_with_mnemonic"
14689                    c:identifier="gtk_check_menu_item_new_with_mnemonic">
14690         <doc xml:whitespace="preserve">Creates a new #GtkCheckMenuItem containing a label. The label
14691 will be created using gtk_label_new_with_mnemonic(), so underscores
14692 in @label indicate the mnemonic for the menu item.</doc>
14693         <return-value transfer-ownership="full">
14694           <doc xml:whitespace="preserve">a new #GtkCheckMenuItem</doc>
14695           <type name="CheckMenuItem" c:type="GtkWidget*"/>
14696         </return-value>
14697         <parameters>
14698           <parameter name="label" transfer-ownership="none">
14699             <doc xml:whitespace="preserve">The text of the button, with an underscore in front of the mnemonic character</doc>
14700             <type name="utf8" c:type="gchar*"/>
14701           </parameter>
14702         </parameters>
14703       </constructor>
14704       <virtual-method name="draw_indicator">
14705         <return-value transfer-ownership="none">
14706           <type name="none" c:type="void"/>
14707         </return-value>
14708         <parameters>
14709           <parameter name="area" transfer-ownership="none">
14710             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
14711           </parameter>
14712         </parameters>
14713       </virtual-method>
14714       <method name="set_active" c:identifier="gtk_check_menu_item_set_active">
14715         <return-value transfer-ownership="none">
14716           <type name="none" c:type="void"/>
14717         </return-value>
14718         <parameters>
14719           <parameter name="is_active" transfer-ownership="none">
14720             <type name="boolean" c:type="gboolean"/>
14721           </parameter>
14722         </parameters>
14723       </method>
14724       <method name="get_active" c:identifier="gtk_check_menu_item_get_active">
14725         <doc xml:whitespace="preserve">Returns whether the check menu item is active. See
14726 gtk_check_menu_item_set_active ().</doc>
14727         <return-value transfer-ownership="none">
14728           <doc xml:whitespace="preserve">%TRUE if the menu item is checked.</doc>
14729           <type name="boolean" c:type="gboolean"/>
14730         </return-value>
14731       </method>
14732       <method name="toggled" c:identifier="gtk_check_menu_item_toggled">
14733         <return-value transfer-ownership="none">
14734           <type name="none" c:type="void"/>
14735         </return-value>
14736       </method>
14737       <method name="set_inconsistent"
14738               c:identifier="gtk_check_menu_item_set_inconsistent">
14739         <doc xml:whitespace="preserve">If the user has selected a range of elements (such as some text or
14740 spreadsheet cells) that are affected by a boolean setting, and the
14741 current values in that range are inconsistent, you may want to
14742 display the check in an "in between" state. This function turns on
14743 "in between" display.  Normally you would turn off the inconsistent
14744 state again if the user explicitly selects a setting. This has to be
14745 done manually, gtk_check_menu_item_set_inconsistent() only affects
14746 visual appearance, it doesn't affect the semantics of the widget.</doc>
14747         <return-value transfer-ownership="none">
14748           <type name="none" c:type="void"/>
14749         </return-value>
14750         <parameters>
14751           <parameter name="setting" transfer-ownership="none">
14752             <doc xml:whitespace="preserve">%TRUE to display an "inconsistent" third state check</doc>
14753             <type name="boolean" c:type="gboolean"/>
14754           </parameter>
14755         </parameters>
14756       </method>
14757       <method name="get_inconsistent"
14758               c:identifier="gtk_check_menu_item_get_inconsistent">
14759         <doc xml:whitespace="preserve">Retrieves the value set by gtk_check_menu_item_set_inconsistent().</doc>
14760         <return-value transfer-ownership="none">
14761           <doc xml:whitespace="preserve">%TRUE if inconsistent</doc>
14762           <type name="boolean" c:type="gboolean"/>
14763         </return-value>
14764       </method>
14765       <method name="set_draw_as_radio"
14766               c:identifier="gtk_check_menu_item_set_draw_as_radio"
14767               version="2.4">
14768         <doc xml:whitespace="preserve">Sets whether @check_menu_item is drawn like a #GtkRadioMenuItem</doc>
14769         <return-value transfer-ownership="none">
14770           <type name="none" c:type="void"/>
14771         </return-value>
14772         <parameters>
14773           <parameter name="draw_as_radio" transfer-ownership="none">
14774             <doc xml:whitespace="preserve">whether @check_menu_item is drawn like a #GtkRadioMenuItem</doc>
14775             <type name="boolean" c:type="gboolean"/>
14776           </parameter>
14777         </parameters>
14778       </method>
14779       <method name="get_draw_as_radio"
14780               c:identifier="gtk_check_menu_item_get_draw_as_radio"
14781               version="2.4">
14782         <doc xml:whitespace="preserve">Returns whether @check_menu_item looks like a #GtkRadioMenuItem</doc>
14783         <return-value transfer-ownership="none">
14784           <doc xml:whitespace="preserve">Whether @check_menu_item looks like a #GtkRadioMenuItem</doc>
14785           <type name="boolean" c:type="gboolean"/>
14786         </return-value>
14787       </method>
14788       <method name="set_show_toggle"
14789               c:identifier="gtk_check_menu_item_set_show_toggle">
14790         <return-value transfer-ownership="none">
14791           <type name="none" c:type="void"/>
14792         </return-value>
14793         <parameters>
14794           <parameter name="always" transfer-ownership="none">
14795             <type name="boolean" c:type="gboolean"/>
14796           </parameter>
14797         </parameters>
14798       </method>
14799       <property name="active" writable="1" transfer-ownership="none">
14800         <type name="boolean" c:type="gboolean"/>
14801       </property>
14802       <property name="draw-as-radio" writable="1" transfer-ownership="none">
14803         <type name="boolean" c:type="gboolean"/>
14804       </property>
14805       <property name="inconsistent" writable="1" transfer-ownership="none">
14806         <type name="boolean" c:type="gboolean"/>
14807       </property>
14808       <field name="menu_item">
14809         <type name="MenuItem" c:type="GtkMenuItem"/>
14810       </field>
14811       <field name="active" bits="1">
14812         <type name="uint" c:type="guint"/>
14813       </field>
14814       <field name="always_show_toggle" bits="1">
14815         <type name="uint" c:type="guint"/>
14816       </field>
14817       <field name="inconsistent" bits="1">
14818         <type name="uint" c:type="guint"/>
14819       </field>
14820       <field name="draw_as_radio" bits="1">
14821         <type name="uint" c:type="guint"/>
14822       </field>
14823       <glib:signal name="toggled">
14824         <return-value transfer-ownership="full">
14825           <type name="none" c:type="void"/>
14826         </return-value>
14827       </glib:signal>
14828     </class>
14829     <record name="CheckMenuItemClass"
14830             c:type="GtkCheckMenuItemClass"
14831             glib:is-gtype-struct-for="CheckMenuItem">
14832       <field name="parent_class">
14833         <type name="MenuItemClass" c:type="GtkMenuItemClass"/>
14834       </field>
14835       <field name="toggled">
14836         <callback name="toggled" c:type="toggled">
14837           <return-value transfer-ownership="none">
14838             <type name="none" c:type="void"/>
14839           </return-value>
14840           <parameters>
14841             <parameter name="check_menu_item" transfer-ownership="none">
14842               <type name="CheckMenuItem" c:type="GtkCheckMenuItem*"/>
14843             </parameter>
14844           </parameters>
14845         </callback>
14846       </field>
14847       <field name="draw_indicator">
14848         <callback name="draw_indicator" c:type="draw_indicator">
14849           <return-value transfer-ownership="none">
14850             <type name="none" c:type="void"/>
14851           </return-value>
14852           <parameters>
14853             <parameter name="check_menu_item" transfer-ownership="none">
14854               <type name="CheckMenuItem" c:type="GtkCheckMenuItem*"/>
14855             </parameter>
14856             <parameter name="area" transfer-ownership="none">
14857               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
14858             </parameter>
14859           </parameters>
14860         </callback>
14861       </field>
14862       <field name="gtk_reserved1">
14863         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
14864           <return-value transfer-ownership="none">
14865             <type name="none" c:type="void"/>
14866           </return-value>
14867         </callback>
14868       </field>
14869       <field name="gtk_reserved2">
14870         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
14871           <return-value transfer-ownership="none">
14872             <type name="none" c:type="void"/>
14873           </return-value>
14874         </callback>
14875       </field>
14876       <field name="gtk_reserved3">
14877         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
14878           <return-value transfer-ownership="none">
14879             <type name="none" c:type="void"/>
14880           </return-value>
14881         </callback>
14882       </field>
14883       <field name="gtk_reserved4">
14884         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
14885           <return-value transfer-ownership="none">
14886             <type name="none" c:type="void"/>
14887           </return-value>
14888         </callback>
14889       </field>
14890     </record>
14891     <class name="Clipboard"
14892            c:type="GtkClipboard"
14893            parent="GObject.Object"
14894            glib:type-name="GtkClipboard"
14895            glib:get-type="gtk_clipboard_get_type">
14896       <function name="get_for_display"
14897                 c:identifier="gtk_clipboard_get_for_display"
14898                 version="2.2">
14899         <doc xml:whitespace="preserve">Returns the clipboard object for the given selection.
14900 Cut/copy/paste menu items and keyboard shortcuts should use
14901 the default clipboard, returned by passing %GDK_SELECTION_CLIPBOARD for @selection.
14902 (%GDK_NONE is supported as a synonym for GDK_SELECTION_CLIPBOARD
14903 for backwards compatibility reasons.)
14904 The currently-selected object or text should be provided on the clipboard
14905 identified by #GDK_SELECTION_PRIMARY. Cut/copy/paste menu items
14906 conceptually copy the contents of the #GDK_SELECTION_PRIMARY clipboard
14907 to the default clipboard, i.e. they copy the selection to what the
14908 user sees as the clipboard.
14909 (Passing #GDK_NONE is the same as using &lt;literal&gt;gdk_atom_intern
14910 ("CLIPBOARD", FALSE)&lt;/literal&gt;. See &lt;ulink
14911 url="http://www.freedesktop.org/Standards/clipboards-spec"&gt;
14912 http://www.freedesktop.org/Standards/clipboards-spec&lt;/ulink&gt;
14913 for a detailed discussion of the "CLIPBOARD" vs. "PRIMARY"
14914 selections under the X window system. On Win32 the
14915 #GDK_SELECTION_PRIMARY clipboard is essentially ignored.)
14916 It's possible to have arbitrary named clipboards; if you do invent
14917 new clipboards, you should prefix the selection name with an
14918 underscore (because the ICCCM requires that nonstandard atoms are
14919 underscore-prefixed), and namespace it as well. For example,
14920 if your application called "Foo" has a special-purpose
14921 clipboard, you might call it "_FOO_SPECIAL_CLIPBOARD".
14922 clipboard already exists, a new one will
14923 be created. Once a clipboard object has
14924 been created, it is persistent and, since
14925 it is owned by GTK+, must not be freed or
14926 unrefd.</doc>
14927         <return-value transfer-ownership="none">
14928           <doc xml:whitespace="preserve">the appropriate clipboard object. If no</doc>
14929           <type name="Clipboard" c:type="GtkClipboard*"/>
14930         </return-value>
14931         <parameters>
14932           <parameter name="display" transfer-ownership="none">
14933             <doc xml:whitespace="preserve">the display for which the clipboard is to be retrieved or created</doc>
14934             <type name="Gdk.Display" c:type="GdkDisplay*"/>
14935           </parameter>
14936           <parameter name="selection" transfer-ownership="none">
14937             <doc xml:whitespace="preserve">a #GdkAtom which identifies the clipboard to use.</doc>
14938             <type name="Gdk.Atom" c:type="GdkAtom"/>
14939           </parameter>
14940         </parameters>
14941       </function>
14942       <function name="get" c:identifier="gtk_clipboard_get">
14943         <doc xml:whitespace="preserve">Returns the clipboard object for the given selection.
14944 See gtk_clipboard_get_for_display() for complete details.
14945 already exists, a new one will be created. Once a clipboard
14946 object has been created, it is persistent and, since it is
14947 owned by GTK+, must not be freed or unreffed.</doc>
14948         <return-value transfer-ownership="none">
14949           <doc xml:whitespace="preserve">the appropriate clipboard object. If no clipboard</doc>
14950           <type name="Clipboard" c:type="GtkClipboard*"/>
14951         </return-value>
14952         <parameters>
14953           <parameter name="selection" transfer-ownership="none">
14954             <doc xml:whitespace="preserve">a #GdkAtom which identifies the clipboard to use</doc>
14955             <type name="Gdk.Atom" c:type="GdkAtom"/>
14956           </parameter>
14957         </parameters>
14958       </function>
14959       <method name="get_display"
14960               c:identifier="gtk_clipboard_get_display"
14961               version="2.2">
14962         <doc xml:whitespace="preserve">Gets the #GdkDisplay associated with @clipboard</doc>
14963         <return-value transfer-ownership="full">
14964           <doc xml:whitespace="preserve">the #GdkDisplay associated with @clipboard</doc>
14965           <type name="Gdk.Display" c:type="GdkDisplay*"/>
14966         </return-value>
14967       </method>
14968       <method name="set_with_data" c:identifier="gtk_clipboard_set_with_data">
14969         <doc xml:whitespace="preserve">Virtually sets the contents of the specified clipboard by providing
14970 a list of supported formats for the clipboard data and a function
14971 to call to get the actual data when it is requested.
14972 the clipboard data failed the provided callback functions
14973 will be ignored.</doc>
14974         <return-value transfer-ownership="none">
14975           <doc xml:whitespace="preserve">%TRUE if setting the clipboard data succeeded. If setting</doc>
14976           <type name="boolean" c:type="gboolean"/>
14977         </return-value>
14978         <parameters>
14979           <parameter name="targets" transfer-ownership="none">
14980             <doc xml:whitespace="preserve">array containing information about the available forms for the clipboard data</doc>
14981             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
14982           </parameter>
14983           <parameter name="n_targets" transfer-ownership="none">
14984             <doc xml:whitespace="preserve">number of elements in @targets</doc>
14985             <type name="uint" c:type="guint"/>
14986           </parameter>
14987           <parameter name="get_func" transfer-ownership="none" scope="call">
14988             <doc xml:whitespace="preserve">function to call to get the actual clipboard data</doc>
14989             <type name="ClipboardGetFunc" c:type="GtkClipboardGetFunc"/>
14990           </parameter>
14991           <parameter name="clear_func"
14992                      transfer-ownership="none"
14993                      scope="call"
14994                      closure="5">
14995             <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>
14996             <type name="ClipboardClearFunc" c:type="GtkClipboardClearFunc"/>
14997           </parameter>
14998           <parameter name="user_data" transfer-ownership="none">
14999             <doc xml:whitespace="preserve">user data to pass to @get_func and @clear_func.</doc>
15000             <type name="any" c:type="gpointer"/>
15001           </parameter>
15002         </parameters>
15003       </method>
15004       <method name="set_with_owner"
15005               c:identifier="gtk_clipboard_set_with_owner">
15006         <doc xml:whitespace="preserve">Virtually sets the contents of the specified clipboard by providing
15007 a list of supported formats for the clipboard data and a function
15008 to call to get the actual data when it is requested.
15009 The difference between this function and gtk_clipboard_set_with_data()
15010 is that instead of an generic @user_data pointer, a #GObject is passed
15011 in. 
15012 the clipboard data failed the provided callback functions
15013 will be ignored.</doc>
15014         <return-value transfer-ownership="none">
15015           <doc xml:whitespace="preserve">%TRUE if setting the clipboard data succeeded. If setting</doc>
15016           <type name="boolean" c:type="gboolean"/>
15017         </return-value>
15018         <parameters>
15019           <parameter name="targets" transfer-ownership="none">
15020             <doc xml:whitespace="preserve">array containing information about the available forms for the clipboard data</doc>
15021             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
15022           </parameter>
15023           <parameter name="n_targets" transfer-ownership="none">
15024             <doc xml:whitespace="preserve">number of elements in @targets</doc>
15025             <type name="uint" c:type="guint"/>
15026           </parameter>
15027           <parameter name="get_func" transfer-ownership="none" scope="call">
15028             <doc xml:whitespace="preserve">function to call to get the actual clipboard data</doc>
15029             <type name="ClipboardGetFunc" c:type="GtkClipboardGetFunc"/>
15030           </parameter>
15031           <parameter name="clear_func" transfer-ownership="none" scope="call">
15032             <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>
15033             <type name="ClipboardClearFunc" c:type="GtkClipboardClearFunc"/>
15034           </parameter>
15035           <parameter name="owner" transfer-ownership="none">
15036             <doc xml:whitespace="preserve">an object that "owns" the data. This object will be passed to the callbacks when called.</doc>
15037             <type name="GObject.Object" c:type="GObject*"/>
15038           </parameter>
15039         </parameters>
15040       </method>
15041       <method name="get_owner" c:identifier="gtk_clipboard_get_owner">
15042         <doc xml:whitespace="preserve">If the clipboard contents callbacks were set with 
15043 gtk_clipboard_set_with_owner(), and the gtk_clipboard_set_with_data() or 
15044 gtk_clipboard_clear() has not subsequently called, returns the owner set 
15045 by gtk_clipboard_set_with_owner().</doc>
15046         <return-value transfer-ownership="full">
15047           <doc xml:whitespace="preserve">the owner of the clipboard, if any; otherwise %NULL.</doc>
15048           <type name="GObject.Object" c:type="GObject*"/>
15049         </return-value>
15050       </method>
15051       <method name="clear" c:identifier="gtk_clipboard_clear">
15052         <doc xml:whitespace="preserve">Clears the contents of the clipboard. Generally this should only
15053 be called between the time you call gtk_clipboard_set_with_owner()
15054 or gtk_clipboard_set_with_data(),
15055 and when the @clear_func you supplied is called. Otherwise, the
15056 clipboard may be owned by someone else.</doc>
15057         <return-value transfer-ownership="none">
15058           <type name="none" c:type="void"/>
15059         </return-value>
15060       </method>
15061       <method name="set_text" c:identifier="gtk_clipboard_set_text">
15062         <doc xml:whitespace="preserve">Sets the contents of the clipboard to the given UTF-8 string. GTK+ will
15063 make a copy of the text and take responsibility for responding
15064 for requests for the text, and for converting the text into
15065 the requested format.</doc>
15066         <return-value transfer-ownership="none">
15067           <type name="none" c:type="void"/>
15068         </return-value>
15069         <parameters>
15070           <parameter name="text" transfer-ownership="none">
15071             <doc xml:whitespace="preserve">a UTF-8 string.</doc>
15072             <type name="utf8" c:type="gchar*"/>
15073           </parameter>
15074           <parameter name="len" transfer-ownership="none">
15075             <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>
15076             <type name="int" c:type="gint"/>
15077           </parameter>
15078         </parameters>
15079       </method>
15080       <method name="set_image"
15081               c:identifier="gtk_clipboard_set_image"
15082               version="2.6">
15083         <doc xml:whitespace="preserve">Sets the contents of the clipboard to the given #GdkPixbuf. 
15084 GTK+ will take responsibility for responding for requests 
15085 for the image, and for converting the image into the 
15086 requested format.</doc>
15087         <return-value transfer-ownership="none">
15088           <type name="none" c:type="void"/>
15089         </return-value>
15090         <parameters>
15091           <parameter name="pixbuf" transfer-ownership="none">
15092             <doc xml:whitespace="preserve">a #GdkPixbuf</doc>
15093             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
15094           </parameter>
15095         </parameters>
15096       </method>
15097       <method name="request_contents"
15098               c:identifier="gtk_clipboard_request_contents">
15099         <doc xml:whitespace="preserve">Requests the contents of clipboard as the given target.
15100 When the results of the result are later received the supplied callback
15101 will be called.</doc>
15102         <return-value transfer-ownership="none">
15103           <type name="none" c:type="void"/>
15104         </return-value>
15105         <parameters>
15106           <parameter name="target" transfer-ownership="none">
15107             <doc xml:whitespace="preserve">an atom representing the form into which the clipboard owner should convert the selection.</doc>
15108             <type name="Gdk.Atom" c:type="GdkAtom"/>
15109           </parameter>
15110           <parameter name="callback"
15111                      transfer-ownership="none"
15112                      scope="call"
15113                      closure="3">
15114             <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 @selection_data will be negative.</doc>
15115             <type name="ClipboardReceivedFunc"
15116                   c:type="GtkClipboardReceivedFunc"/>
15117           </parameter>
15118           <parameter name="user_data" transfer-ownership="none">
15119             <doc xml:whitespace="preserve">user data to pass to @callback</doc>
15120             <type name="any" c:type="gpointer"/>
15121           </parameter>
15122         </parameters>
15123       </method>
15124       <method name="request_text" c:identifier="gtk_clipboard_request_text">
15125         <doc xml:whitespace="preserve">Requests the contents of the clipboard as text. When the text is
15126 later received, it will be converted to UTF-8 if necessary, and
15127 The @text parameter to @callback will contain the resulting text if
15128 the request succeeded, or %NULL if it failed. This could happen for
15129 various reasons, in particular if the clipboard was empty or if the
15130 contents of the clipboard could not be converted into text form.</doc>
15131         <return-value transfer-ownership="none">
15132           <type name="none" c:type="void"/>
15133         </return-value>
15134         <parameters>
15135           <parameter name="callback"
15136                      transfer-ownership="none"
15137                      scope="call"
15138                      closure="2">
15139             <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>
15140             <type name="ClipboardTextReceivedFunc"
15141                   c:type="GtkClipboardTextReceivedFunc"/>
15142           </parameter>
15143           <parameter name="user_data" transfer-ownership="none">
15144             <doc xml:whitespace="preserve">user data to pass to @callback.</doc>
15145             <type name="any" c:type="gpointer"/>
15146           </parameter>
15147         </parameters>
15148       </method>
15149       <method name="request_rich_text"
15150               c:identifier="gtk_clipboard_request_rich_text"
15151               version="2.10">
15152         <doc xml:whitespace="preserve">Requests the contents of the clipboard as rich text. When the rich
15153 text is later received, @callback will be called.
15154 The @text parameter to @callback will contain the resulting rich
15155 text if the request succeeded, or %NULL if it failed. The @length
15156 parameter will contain @text's length. This function can fail for
15157 various reasons, in particular if the clipboard was empty or if the
15158 contents of the clipboard could not be converted into rich text form.</doc>
15159         <return-value transfer-ownership="none">
15160           <type name="none" c:type="void"/>
15161         </return-value>
15162         <parameters>
15163           <parameter name="buffer" transfer-ownership="none">
15164             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
15165             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
15166           </parameter>
15167           <parameter name="callback"
15168                      transfer-ownership="none"
15169                      scope="call"
15170                      closure="3">
15171             <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>
15172             <type name="ClipboardRichTextReceivedFunc"
15173                   c:type="GtkClipboardRichTextReceivedFunc"/>
15174           </parameter>
15175           <parameter name="user_data" transfer-ownership="none">
15176             <doc xml:whitespace="preserve">user data to pass to @callback.</doc>
15177             <type name="any" c:type="gpointer"/>
15178           </parameter>
15179         </parameters>
15180       </method>
15181       <method name="request_image"
15182               c:identifier="gtk_clipboard_request_image"
15183               version="2.6">
15184         <doc xml:whitespace="preserve">Requests the contents of the clipboard as image. When the image is
15185 later received, it will be converted to a #GdkPixbuf, and
15186 The @pixbuf parameter to @callback will contain the resulting 
15187 #GdkPixbuf if the request succeeded, or %NULL if it failed. This 
15188 could happen for various reasons, in particular if the clipboard 
15189 was empty or if the contents of the clipboard could not be 
15190 converted into an image.</doc>
15191         <return-value transfer-ownership="none">
15192           <type name="none" c:type="void"/>
15193         </return-value>
15194         <parameters>
15195           <parameter name="callback"
15196                      transfer-ownership="none"
15197                      scope="call"
15198                      closure="2">
15199             <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>
15200             <type name="ClipboardImageReceivedFunc"
15201                   c:type="GtkClipboardImageReceivedFunc"/>
15202           </parameter>
15203           <parameter name="user_data" transfer-ownership="none">
15204             <doc xml:whitespace="preserve">user data to pass to @callback.</doc>
15205             <type name="any" c:type="gpointer"/>
15206           </parameter>
15207         </parameters>
15208       </method>
15209       <method name="request_uris"
15210               c:identifier="gtk_clipboard_request_uris"
15211               version="2.14">
15212         <doc xml:whitespace="preserve">Requests the contents of the clipboard as URIs. When the URIs are
15213 later received @callback will be called.
15214 The @uris parameter to @callback will contain the resulting array of
15215 URIs if the request succeeded, or %NULL if it failed. This could happen
15216 for various reasons, in particular if the clipboard was empty or if the
15217 contents of the clipboard could not be converted into URI form.</doc>
15218         <return-value transfer-ownership="none">
15219           <type name="none" c:type="void"/>
15220         </return-value>
15221         <parameters>
15222           <parameter name="callback"
15223                      transfer-ownership="none"
15224                      scope="call"
15225                      closure="2">
15226             <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>
15227             <type name="ClipboardURIReceivedFunc"
15228                   c:type="GtkClipboardURIReceivedFunc"/>
15229           </parameter>
15230           <parameter name="user_data" transfer-ownership="none">
15231             <doc xml:whitespace="preserve">user data to pass to @callback.</doc>
15232             <type name="any" c:type="gpointer"/>
15233           </parameter>
15234         </parameters>
15235       </method>
15236       <method name="request_targets"
15237               c:identifier="gtk_clipboard_request_targets"
15238               version="2.4">
15239         <doc xml:whitespace="preserve">Requests the contents of the clipboard as list of supported targets. 
15240 When the list is later received, @callback will be called. 
15241 The @targets parameter to @callback will contain the resulting targets if
15242 the request succeeded, or %NULL if it failed.</doc>
15243         <return-value transfer-ownership="none">
15244           <type name="none" c:type="void"/>
15245         </return-value>
15246         <parameters>
15247           <parameter name="callback"
15248                      transfer-ownership="none"
15249                      scope="call"
15250                      closure="2">
15251             <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>
15252             <type name="ClipboardTargetsReceivedFunc"
15253                   c:type="GtkClipboardTargetsReceivedFunc"/>
15254           </parameter>
15255           <parameter name="user_data" transfer-ownership="none">
15256             <doc xml:whitespace="preserve">user data to pass to @callback.</doc>
15257             <type name="any" c:type="gpointer"/>
15258           </parameter>
15259         </parameters>
15260       </method>
15261       <method name="wait_for_contents"
15262               c:identifier="gtk_clipboard_wait_for_contents">
15263         <doc xml:whitespace="preserve">Requests the contents of the clipboard using the given target.
15264 This function waits for the data to be received using the main 
15265 loop, so events, timeouts, etc, may be dispatched during the wait.
15266 if retrieving the given target failed. If non-%NULL,
15267 this value must be freed with gtk_selection_data_free() 
15268 when you are finished with it.</doc>
15269         <return-value transfer-ownership="full">
15270           <doc xml:whitespace="preserve">a newly-allocated #GtkSelectionData object or %NULL</doc>
15271           <type name="SelectionData" c:type="GtkSelectionData*"/>
15272         </return-value>
15273         <parameters>
15274           <parameter name="target" transfer-ownership="none">
15275             <doc xml:whitespace="preserve">an atom representing the form into which the clipboard owner should convert the selection.</doc>
15276             <type name="Gdk.Atom" c:type="GdkAtom"/>
15277           </parameter>
15278         </parameters>
15279       </method>
15280       <method name="wait_for_text" c:identifier="gtk_clipboard_wait_for_text">
15281         <doc xml:whitespace="preserve">Requests the contents of the clipboard as text and converts
15282 the result to UTF-8 if necessary. This function waits for
15283 the data to be received using the main loop, so events,
15284 timeouts, etc, may be dispatched during the wait.
15285 be freed with g_free(), or %NULL if retrieving
15286 the selection data failed. (This could happen
15287 for various reasons, in particular if the
15288 clipboard was empty or if the contents of the
15289 clipboard could not be converted into text form.)</doc>
15290         <return-value transfer-ownership="full">
15291           <doc xml:whitespace="preserve">a newly-allocated UTF-8 string which must</doc>
15292           <type name="utf8" c:type="gchar*"/>
15293         </return-value>
15294       </method>
15295       <method name="wait_for_rich_text"
15296               c:identifier="gtk_clipboard_wait_for_rich_text"
15297               version="2.10">
15298         <doc xml:whitespace="preserve">Requests the contents of the clipboard as rich text.  This function
15299 waits for the data to be received using the main loop, so events,
15300 timeouts, etc, may be dispatched during the wait.
15301 be freed with g_free(), or %NULL if retrieving
15302 the selection data failed. (This could happen
15303 for various reasons, in particular if the
15304 clipboard was empty or if the contents of the
15305 clipboard could not be converted into text form.)</doc>
15306         <return-value transfer-ownership="full">
15307           <doc xml:whitespace="preserve">a newly-allocated binary block of data which must</doc>
15308           <array c:type="guint8*">
15309             <type name="uint8"/>
15310           </array>
15311         </return-value>
15312         <parameters>
15313           <parameter name="buffer" transfer-ownership="none">
15314             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
15315             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
15316           </parameter>
15317           <parameter name="format" transfer-ownership="none">
15318             <doc xml:whitespace="preserve">return location for the format of the returned data</doc>
15319             <type name="Gdk.Atom" c:type="GdkAtom*"/>
15320           </parameter>
15321           <parameter name="length"
15322                      direction="out"
15323                      caller-allocates="0"
15324                      transfer-ownership="full">
15325             <doc xml:whitespace="preserve">return location for the length of the returned data</doc>
15326             <type name="gsize" c:type="gsize*"/>
15327           </parameter>
15328         </parameters>
15329       </method>
15330       <method name="wait_for_image"
15331               c:identifier="gtk_clipboard_wait_for_image"
15332               version="2.6">
15333         <doc xml:whitespace="preserve">Requests the contents of the clipboard as image and converts
15334 the result to a #GdkPixbuf. This function waits for
15335 the data to be received using the main loop, so events,
15336 timeouts, etc, may be dispatched during the wait.
15337 be disposed with g_object_unref(), or %NULL if 
15338 retrieving the selection data failed. (This 
15339 could happen for various reasons, in particular 
15340 if the clipboard was empty or if the contents of 
15341 the clipboard could not be converted into an image.)</doc>
15342         <return-value transfer-ownership="full">
15343           <doc xml:whitespace="preserve">a newly-allocated #GdkPixbuf object which must</doc>
15344           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
15345         </return-value>
15346       </method>
15347       <method name="wait_for_uris"
15348               c:identifier="gtk_clipboard_wait_for_uris"
15349               version="2.14">
15350         <doc xml:whitespace="preserve">Requests the contents of the clipboard as URIs. This function waits
15351 for the data to be received using the main loop, so events,
15352 timeouts, etc, may be dispatched during the wait.
15353 %NULL-terminated array of strings which must
15354 be freed with g_strfreev(), or %NULL if
15355 retrieving the selection data failed. (This
15356 could happen for various reasons, in particular
15357 if the clipboard was empty or if the contents of
15358 the clipboard could not be converted into URI form.)</doc>
15359         <return-value transfer-ownership="full">
15360           <doc xml:whitespace="preserve">a newly-allocated</doc>
15361           <array c:type="gchar**">
15362             <type name="utf8"/>
15363           </array>
15364         </return-value>
15365       </method>
15366       <method name="wait_for_targets"
15367               c:identifier="gtk_clipboard_wait_for_targets">
15368         <return-value transfer-ownership="none">
15369           <type name="boolean" c:type="gboolean"/>
15370         </return-value>
15371         <parameters>
15372           <parameter name="targets" transfer-ownership="none">
15373             <type name="Gdk.Atom" c:type="GdkAtom**"/>
15374           </parameter>
15375           <parameter name="n_targets"
15376                      direction="out"
15377                      caller-allocates="0"
15378                      transfer-ownership="full">
15379             <type name="int" c:type="gint*"/>
15380           </parameter>
15381         </parameters>
15382       </method>
15383       <method name="wait_is_text_available"
15384               c:identifier="gtk_clipboard_wait_is_text_available">
15385         <doc xml:whitespace="preserve">Test to see if there is text available to be pasted
15386 This is done by requesting the TARGETS atom and checking
15387 if it contains any of the supported text targets. This function 
15388 waits for the data to be received using the main loop, so events, 
15389 timeouts, etc, may be dispatched during the wait.
15390 This function is a little faster than calling
15391 gtk_clipboard_wait_for_text() since it doesn't need to retrieve
15392 the actual text.</doc>
15393         <return-value transfer-ownership="none">
15394           <doc xml:whitespace="preserve">%TRUE is there is text available, %FALSE otherwise.</doc>
15395           <type name="boolean" c:type="gboolean"/>
15396         </return-value>
15397       </method>
15398       <method name="wait_is_rich_text_available"
15399               c:identifier="gtk_clipboard_wait_is_rich_text_available"
15400               version="2.10">
15401         <doc xml:whitespace="preserve">Test to see if there is rich text available to be pasted
15402 This is done by requesting the TARGETS atom and checking
15403 if it contains any of the supported rich text targets. This function
15404 waits for the data to be received using the main loop, so events,
15405 timeouts, etc, may be dispatched during the wait.
15406 This function is a little faster than calling
15407 gtk_clipboard_wait_for_rich_text() since it doesn't need to retrieve
15408 the actual text.</doc>
15409         <return-value transfer-ownership="none">
15410           <doc xml:whitespace="preserve">%TRUE is there is rich text available, %FALSE otherwise.</doc>
15411           <type name="boolean" c:type="gboolean"/>
15412         </return-value>
15413         <parameters>
15414           <parameter name="buffer" transfer-ownership="none">
15415             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
15416             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
15417           </parameter>
15418         </parameters>
15419       </method>
15420       <method name="wait_is_image_available"
15421               c:identifier="gtk_clipboard_wait_is_image_available"
15422               version="2.6">
15423         <doc xml:whitespace="preserve">Test to see if there is an image available to be pasted
15424 This is done by requesting the TARGETS atom and checking
15425 if it contains any of the supported image targets. This function 
15426 waits for the data to be received using the main loop, so events, 
15427 timeouts, etc, may be dispatched during the wait.
15428 This function is a little faster than calling
15429 gtk_clipboard_wait_for_image() since it doesn't need to retrieve
15430 the actual image data.</doc>
15431         <return-value transfer-ownership="none">
15432           <doc xml:whitespace="preserve">%TRUE is there is an image available, %FALSE otherwise.</doc>
15433           <type name="boolean" c:type="gboolean"/>
15434         </return-value>
15435       </method>
15436       <method name="wait_is_uris_available"
15437               c:identifier="gtk_clipboard_wait_is_uris_available"
15438               version="2.14">
15439         <doc xml:whitespace="preserve">Test to see if there is a list of URIs available to be pasted
15440 This is done by requesting the TARGETS atom and checking
15441 if it contains the URI targets. This function
15442 waits for the data to be received using the main loop, so events, 
15443 timeouts, etc, may be dispatched during the wait.
15444 This function is a little faster than calling
15445 gtk_clipboard_wait_for_uris() since it doesn't need to retrieve
15446 the actual URI data.</doc>
15447         <return-value transfer-ownership="none">
15448           <doc xml:whitespace="preserve">%TRUE is there is an URI list available, %FALSE otherwise.</doc>
15449           <type name="boolean" c:type="gboolean"/>
15450         </return-value>
15451       </method>
15452       <method name="wait_is_target_available"
15453               c:identifier="gtk_clipboard_wait_is_target_available"
15454               version="2.6">
15455         <doc xml:whitespace="preserve">Checks if a clipboard supports pasting data of a given type. This
15456 function can be used to determine if a "Paste" menu item should be
15457 insensitive or not.
15458 If you want to see if there's text available on the clipboard, use
15459 gtk_clipboard_wait_is_text_available () instead.</doc>
15460         <return-value transfer-ownership="none">
15461           <doc xml:whitespace="preserve">%TRUE if the target is available, %FALSE otherwise.</doc>
15462           <type name="boolean" c:type="gboolean"/>
15463         </return-value>
15464         <parameters>
15465           <parameter name="target" transfer-ownership="none">
15466             <doc xml:whitespace="preserve">A #GdkAtom indicating which target to look for.</doc>
15467             <type name="Gdk.Atom" c:type="GdkAtom"/>
15468           </parameter>
15469         </parameters>
15470       </method>
15471       <method name="set_can_store"
15472               c:identifier="gtk_clipboard_set_can_store"
15473               version="2.6">
15474         <doc xml:whitespace="preserve">Hints that the clipboard data should be stored somewhere when the
15475 application exits or when gtk_clipboard_store () is called.
15476 This value is reset when the clipboard owner changes.
15477 Where the clipboard data is stored is platform dependent,
15478 see gdk_display_store_clipboard () for more information.</doc>
15479         <return-value transfer-ownership="none">
15480           <type name="none" c:type="void"/>
15481         </return-value>
15482         <parameters>
15483           <parameter name="targets" transfer-ownership="none">
15484             <doc xml:whitespace="preserve">array containing information about which forms should be stored or %NULL to indicate that all forms should be stored.</doc>
15485             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
15486           </parameter>
15487           <parameter name="n_targets" transfer-ownership="none">
15488             <doc xml:whitespace="preserve">number of elements in @targets</doc>
15489             <type name="int" c:type="gint"/>
15490           </parameter>
15491         </parameters>
15492       </method>
15493       <method name="store" c:identifier="gtk_clipboard_store" version="2.6">
15494         <doc xml:whitespace="preserve">Stores the current clipboard data somewhere so that it will stay
15495 around after the application has quit.</doc>
15496         <return-value transfer-ownership="none">
15497           <type name="none" c:type="void"/>
15498         </return-value>
15499       </method>
15500       <glib:signal name="owner-change" version="2.6">
15501         <doc xml:whitespace="preserve">The ::owner-change signal is emitted when GTK+ receives an
15502 event that indicates that the ownership of the selection 
15503 associated with @clipboard has changed.</doc>
15504         <return-value transfer-ownership="full">
15505           <type name="none" c:type="void"/>
15506         </return-value>
15507         <parameters>
15508           <parameter name="event" transfer-ownership="none">
15509             <doc xml:whitespace="preserve">the @GdkEventOwnerChange event</doc>
15510             <type name="Gdk.Event" c:type="GdkEvent"/>
15511           </parameter>
15512         </parameters>
15513       </glib:signal>
15514     </class>
15515     <callback name="ClipboardClearFunc" c:type="GtkClipboardClearFunc">
15516       <return-value transfer-ownership="none">
15517         <type name="none" c:type="void"/>
15518       </return-value>
15519       <parameters>
15520         <parameter name="clipboard" transfer-ownership="none">
15521           <type name="Clipboard" c:type="GtkClipboard*"/>
15522         </parameter>
15523         <parameter name="user_data_or_owner" transfer-ownership="none">
15524           <type name="any" c:type="gpointer"/>
15525         </parameter>
15526       </parameters>
15527     </callback>
15528     <callback name="ClipboardGetFunc" c:type="GtkClipboardGetFunc">
15529       <return-value transfer-ownership="none">
15530         <type name="none" c:type="void"/>
15531       </return-value>
15532       <parameters>
15533         <parameter name="clipboard" transfer-ownership="none">
15534           <type name="Clipboard" c:type="GtkClipboard*"/>
15535         </parameter>
15536         <parameter name="selection_data" transfer-ownership="none">
15537           <type name="SelectionData" c:type="GtkSelectionData*"/>
15538         </parameter>
15539         <parameter name="info" transfer-ownership="none">
15540           <type name="uint" c:type="guint"/>
15541         </parameter>
15542         <parameter name="user_data_or_owner" transfer-ownership="none">
15543           <type name="any" c:type="gpointer"/>
15544         </parameter>
15545       </parameters>
15546     </callback>
15547     <callback name="ClipboardImageReceivedFunc"
15548               c:type="GtkClipboardImageReceivedFunc">
15549       <return-value transfer-ownership="none">
15550         <type name="none" c:type="void"/>
15551       </return-value>
15552       <parameters>
15553         <parameter name="clipboard" transfer-ownership="none">
15554           <type name="Clipboard" c:type="GtkClipboard*"/>
15555         </parameter>
15556         <parameter name="pixbuf" transfer-ownership="none">
15557           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
15558         </parameter>
15559         <parameter name="data" transfer-ownership="none">
15560           <type name="any" c:type="gpointer"/>
15561         </parameter>
15562       </parameters>
15563     </callback>
15564     <callback name="ClipboardReceivedFunc" c:type="GtkClipboardReceivedFunc">
15565       <return-value transfer-ownership="none">
15566         <type name="none" c:type="void"/>
15567       </return-value>
15568       <parameters>
15569         <parameter name="clipboard" transfer-ownership="none">
15570           <type name="Clipboard" c:type="GtkClipboard*"/>
15571         </parameter>
15572         <parameter name="selection_data" transfer-ownership="none">
15573           <type name="SelectionData" c:type="GtkSelectionData*"/>
15574         </parameter>
15575         <parameter name="data" transfer-ownership="none">
15576           <type name="any" c:type="gpointer"/>
15577         </parameter>
15578       </parameters>
15579     </callback>
15580     <callback name="ClipboardRichTextReceivedFunc"
15581               c:type="GtkClipboardRichTextReceivedFunc">
15582       <return-value transfer-ownership="none">
15583         <type name="none" c:type="void"/>
15584       </return-value>
15585       <parameters>
15586         <parameter name="clipboard" transfer-ownership="none">
15587           <type name="Clipboard" c:type="GtkClipboard*"/>
15588         </parameter>
15589         <parameter name="format" transfer-ownership="none">
15590           <type name="Gdk.Atom" c:type="GdkAtom"/>
15591         </parameter>
15592         <parameter name="text" transfer-ownership="none">
15593           <array c:type="guint8*">
15594             <type name="uint8"/>
15595           </array>
15596         </parameter>
15597         <parameter name="length" transfer-ownership="none">
15598           <type name="gsize" c:type="gsize"/>
15599         </parameter>
15600         <parameter name="data" transfer-ownership="none">
15601           <type name="any" c:type="gpointer"/>
15602         </parameter>
15603       </parameters>
15604     </callback>
15605     <callback name="ClipboardTargetsReceivedFunc"
15606               c:type="GtkClipboardTargetsReceivedFunc">
15607       <return-value transfer-ownership="none">
15608         <type name="none" c:type="void"/>
15609       </return-value>
15610       <parameters>
15611         <parameter name="clipboard" transfer-ownership="none">
15612           <type name="Clipboard" c:type="GtkClipboard*"/>
15613         </parameter>
15614         <parameter name="atoms" transfer-ownership="none">
15615           <type name="Gdk.Atom" c:type="GdkAtom*"/>
15616         </parameter>
15617         <parameter name="n_atoms" transfer-ownership="none">
15618           <type name="int" c:type="gint"/>
15619         </parameter>
15620         <parameter name="data" transfer-ownership="none">
15621           <type name="any" c:type="gpointer"/>
15622         </parameter>
15623       </parameters>
15624     </callback>
15625     <callback name="ClipboardTextReceivedFunc"
15626               c:type="GtkClipboardTextReceivedFunc">
15627       <return-value transfer-ownership="none">
15628         <type name="none" c:type="void"/>
15629       </return-value>
15630       <parameters>
15631         <parameter name="clipboard" transfer-ownership="none">
15632           <type name="Clipboard" c:type="GtkClipboard*"/>
15633         </parameter>
15634         <parameter name="text" transfer-ownership="none">
15635           <type name="utf8" c:type="gchar*"/>
15636         </parameter>
15637         <parameter name="data" transfer-ownership="none">
15638           <type name="any" c:type="gpointer"/>
15639         </parameter>
15640       </parameters>
15641     </callback>
15642     <callback name="ClipboardURIReceivedFunc"
15643               c:type="GtkClipboardURIReceivedFunc">
15644       <return-value transfer-ownership="none">
15645         <type name="none" c:type="void"/>
15646       </return-value>
15647       <parameters>
15648         <parameter name="clipboard" transfer-ownership="none">
15649           <type name="Clipboard" c:type="GtkClipboard*"/>
15650         </parameter>
15651         <parameter name="uris" transfer-ownership="none">
15652           <array c:type="gchar**">
15653             <type name="utf8"/>
15654           </array>
15655         </parameter>
15656         <parameter name="data" transfer-ownership="none">
15657           <type name="any" c:type="gpointer"/>
15658         </parameter>
15659       </parameters>
15660     </callback>
15661     <class name="ColorButton"
15662            c:type="GtkColorButton"
15663            parent="Button"
15664            glib:type-name="GtkColorButton"
15665            glib:get-type="gtk_color_button_get_type"
15666            glib:type-struct="ColorButtonClass">
15667       <implements name="Activatable"/>
15668       <implements name="Atk.ImplementorIface"/>
15669       <implements name="Buildable"/>
15670       <constructor name="new"
15671                    c:identifier="gtk_color_button_new"
15672                    version="2.4">
15673         <doc xml:whitespace="preserve">Creates a new color button. This returns a widget in the form of
15674 a small button containing a swatch representing the current selected 
15675 color. When the button is clicked, a color-selection dialog will open, 
15676 allowing the user to select a color. The swatch will be updated to reflect 
15677 the new color when the user finishes.</doc>
15678         <return-value transfer-ownership="full">
15679           <doc xml:whitespace="preserve">a new color button.</doc>
15680           <type name="ColorButton" c:type="GtkWidget*"/>
15681         </return-value>
15682       </constructor>
15683       <constructor name="new_with_color"
15684                    c:identifier="gtk_color_button_new_with_color"
15685                    version="2.4">
15686         <doc xml:whitespace="preserve">Creates a new color button.</doc>
15687         <return-value transfer-ownership="full">
15688           <doc xml:whitespace="preserve">a new color button.</doc>
15689           <type name="ColorButton" c:type="GtkWidget*"/>
15690         </return-value>
15691         <parameters>
15692           <parameter name="color" transfer-ownership="none">
15693             <doc xml:whitespace="preserve">A #GdkColor to set the current color with.</doc>
15694             <type name="Gdk.Color" c:type="GdkColor*"/>
15695           </parameter>
15696         </parameters>
15697       </constructor>
15698       <method name="set_color"
15699               c:identifier="gtk_color_button_set_color"
15700               version="2.4">
15701         <doc xml:whitespace="preserve">Sets the current color to be @color.</doc>
15702         <return-value transfer-ownership="none">
15703           <type name="none" c:type="void"/>
15704         </return-value>
15705         <parameters>
15706           <parameter name="color" transfer-ownership="none">
15707             <doc xml:whitespace="preserve">A #GdkColor to set the current color with.</doc>
15708             <type name="Gdk.Color" c:type="GdkColor*"/>
15709           </parameter>
15710         </parameters>
15711       </method>
15712       <method name="set_alpha"
15713               c:identifier="gtk_color_button_set_alpha"
15714               version="2.4">
15715         <doc xml:whitespace="preserve">Sets the current opacity to be @alpha.</doc>
15716         <return-value transfer-ownership="none">
15717           <type name="none" c:type="void"/>
15718         </return-value>
15719         <parameters>
15720           <parameter name="alpha" transfer-ownership="none">
15721             <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
15722             <type name="uint16" c:type="guint16"/>
15723           </parameter>
15724         </parameters>
15725       </method>
15726       <method name="get_color"
15727               c:identifier="gtk_color_button_get_color"
15728               version="2.4">
15729         <doc xml:whitespace="preserve">Sets @color to be the current color in the #GtkColorButton widget.</doc>
15730         <return-value transfer-ownership="none">
15731           <type name="none" c:type="void"/>
15732         </return-value>
15733         <parameters>
15734           <parameter name="color" transfer-ownership="none">
15735             <doc xml:whitespace="preserve">a #GdkColor to fill in with the current color.</doc>
15736             <type name="Gdk.Color" c:type="GdkColor*"/>
15737           </parameter>
15738         </parameters>
15739       </method>
15740       <method name="get_alpha"
15741               c:identifier="gtk_color_button_get_alpha"
15742               version="2.4">
15743         <doc xml:whitespace="preserve">Returns the current alpha value.</doc>
15744         <return-value transfer-ownership="none">
15745           <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
15746           <type name="uint16" c:type="guint16"/>
15747         </return-value>
15748       </method>
15749       <method name="set_use_alpha"
15750               c:identifier="gtk_color_button_set_use_alpha"
15751               version="2.4">
15752         <doc xml:whitespace="preserve">Sets whether or not the color button should use the alpha channel.</doc>
15753         <return-value transfer-ownership="none">
15754           <type name="none" c:type="void"/>
15755         </return-value>
15756         <parameters>
15757           <parameter name="use_alpha" transfer-ownership="none">
15758             <doc xml:whitespace="preserve">%TRUE if color button should use alpha channel, %FALSE if not.</doc>
15759             <type name="boolean" c:type="gboolean"/>
15760           </parameter>
15761         </parameters>
15762       </method>
15763       <method name="get_use_alpha"
15764               c:identifier="gtk_color_button_get_use_alpha"
15765               version="2.4">
15766         <doc xml:whitespace="preserve">Does the color selection dialog use the alpha channel?</doc>
15767         <return-value transfer-ownership="none">
15768           <doc xml:whitespace="preserve">%TRUE if the color sample uses alpha channel, %FALSE if not.</doc>
15769           <type name="boolean" c:type="gboolean"/>
15770         </return-value>
15771       </method>
15772       <method name="set_title"
15773               c:identifier="gtk_color_button_set_title"
15774               version="2.4">
15775         <doc xml:whitespace="preserve">Sets the title for the color selection dialog.</doc>
15776         <return-value transfer-ownership="none">
15777           <type name="none" c:type="void"/>
15778         </return-value>
15779         <parameters>
15780           <parameter name="title" transfer-ownership="none">
15781             <doc xml:whitespace="preserve">String containing new window title.</doc>
15782             <type name="utf8" c:type="gchar*"/>
15783           </parameter>
15784         </parameters>
15785       </method>
15786       <method name="get_title"
15787               c:identifier="gtk_color_button_get_title"
15788               version="2.4">
15789         <doc xml:whitespace="preserve">Gets the title of the color selection dialog.</doc>
15790         <return-value transfer-ownership="none">
15791           <doc xml:whitespace="preserve">An internal string, do not free the return value</doc>
15792           <type name="utf8" c:type="gchar*"/>
15793         </return-value>
15794       </method>
15795       <property name="alpha"
15796                 version="2.4"
15797                 writable="1"
15798                 transfer-ownership="none">
15799         <doc xml:whitespace="preserve">The selected opacity value (0 fully transparent, 65535 fully opaque).</doc>
15800         <type name="uint" c:type="guint"/>
15801       </property>
15802       <property name="color"
15803                 version="2.4"
15804                 writable="1"
15805                 transfer-ownership="none">
15806         <doc xml:whitespace="preserve">The selected color.</doc>
15807         <type name="Gdk.Color" c:type="GdkColor"/>
15808       </property>
15809       <property name="title"
15810                 version="2.4"
15811                 writable="1"
15812                 transfer-ownership="none">
15813         <doc xml:whitespace="preserve">The title of the color selection dialog</doc>
15814         <type name="utf8" c:type="gchararray"/>
15815       </property>
15816       <property name="use-alpha"
15817                 version="2.4"
15818                 writable="1"
15819                 transfer-ownership="none">
15820         <doc xml:whitespace="preserve">If this property is set to %TRUE, the color swatch on the button is rendered against a 
15821 checkerboard background to show its opacity and the opacity slider is displayed in the 
15822 color selection dialog.</doc>
15823         <type name="boolean" c:type="gboolean"/>
15824       </property>
15825       <field name="button">
15826         <type name="Button" c:type="GtkButton"/>
15827       </field>
15828       <field name="priv">
15829         <type name="ColorButtonPrivate" c:type="GtkColorButtonPrivate*"/>
15830       </field>
15831       <glib:signal name="color-set" version="2.4">
15832         <doc xml:whitespace="preserve">The ::color-set signal is emitted when the user selects a color. 
15833 When handling this signal, use gtk_color_button_get_color() and 
15834 gtk_color_button_get_alpha() to find out which color was just selected.
15835 Note that this signal is only emitted when the &lt;emphasis&gt;user&lt;/emphasis&gt;
15836 changes the color. If you need to react to programmatic color changes
15837 as well, use the notify::color signal.</doc>
15838         <return-value transfer-ownership="full">
15839           <type name="none" c:type="void"/>
15840         </return-value>
15841       </glib:signal>
15842     </class>
15843     <record name="ColorButtonClass"
15844             c:type="GtkColorButtonClass"
15845             glib:is-gtype-struct-for="ColorButton">
15846       <field name="parent_class">
15847         <type name="ButtonClass" c:type="GtkButtonClass"/>
15848       </field>
15849       <field name="color_set">
15850         <callback name="color_set" c:type="color_set">
15851           <return-value transfer-ownership="none">
15852             <type name="none" c:type="void"/>
15853           </return-value>
15854           <parameters>
15855             <parameter name="cp" transfer-ownership="none">
15856               <type name="ColorButton" c:type="GtkColorButton*"/>
15857             </parameter>
15858           </parameters>
15859         </callback>
15860       </field>
15861       <field name="gtk_reserved1">
15862         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
15863           <return-value transfer-ownership="none">
15864             <type name="none" c:type="void"/>
15865           </return-value>
15866         </callback>
15867       </field>
15868       <field name="gtk_reserved2">
15869         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
15870           <return-value transfer-ownership="none">
15871             <type name="none" c:type="void"/>
15872           </return-value>
15873         </callback>
15874       </field>
15875       <field name="gtk_reserved3">
15876         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
15877           <return-value transfer-ownership="none">
15878             <type name="none" c:type="void"/>
15879           </return-value>
15880         </callback>
15881       </field>
15882       <field name="gtk_reserved4">
15883         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
15884           <return-value transfer-ownership="none">
15885             <type name="none" c:type="void"/>
15886           </return-value>
15887         </callback>
15888       </field>
15889     </record>
15890     <record name="ColorButtonPrivate" c:type="GtkColorButtonPrivate">
15891     </record>
15892     <class name="ColorSelection"
15893            c:type="GtkColorSelection"
15894            parent="VBox"
15895            glib:type-name="GtkColorSelection"
15896            glib:get-type="gtk_color_selection_get_type"
15897            glib:type-struct="ColorSelectionClass">
15898       <implements name="Atk.ImplementorIface"/>
15899       <implements name="Buildable"/>
15900       <implements name="Orientable"/>
15901       <constructor name="new" c:identifier="gtk_color_selection_new">
15902         <doc xml:whitespace="preserve">Creates a new GtkColorSelection.</doc>
15903         <return-value transfer-ownership="full">
15904           <doc xml:whitespace="preserve">a new #GtkColorSelection</doc>
15905           <type name="ColorSelection" c:type="GtkWidget*"/>
15906         </return-value>
15907       </constructor>
15908       <function name="palette_from_string"
15909                 c:identifier="gtk_color_selection_palette_from_string">
15910         <doc xml:whitespace="preserve">Parses a color palette string; the string is a colon-separated
15911 list of color names readable by gdk_color_parse().</doc>
15912         <return-value transfer-ownership="none">
15913           <doc xml:whitespace="preserve">%TRUE if a palette was successfully parsed.</doc>
15914           <type name="boolean" c:type="gboolean"/>
15915         </return-value>
15916         <parameters>
15917           <parameter name="str" transfer-ownership="none">
15918             <doc xml:whitespace="preserve">a string encoding a color palette.</doc>
15919             <type name="utf8" c:type="gchar*"/>
15920           </parameter>
15921           <parameter name="colors" transfer-ownership="none">
15922             <doc xml:whitespace="preserve">return location for allocated array of #GdkColor.</doc>
15923             <type name="Gdk.Color" c:type="GdkColor**"/>
15924           </parameter>
15925           <parameter name="n_colors"
15926                      direction="out"
15927                      caller-allocates="0"
15928                      transfer-ownership="full">
15929             <doc xml:whitespace="preserve">return location for length of array.</doc>
15930             <type name="int" c:type="gint*"/>
15931           </parameter>
15932         </parameters>
15933       </function>
15934       <function name="palette_to_string"
15935                 c:identifier="gtk_color_selection_palette_to_string">
15936         <doc xml:whitespace="preserve">Encodes a palette as a string, useful for persistent storage.</doc>
15937         <return-value transfer-ownership="full">
15938           <doc xml:whitespace="preserve">allocated string encoding the palette.</doc>
15939           <type name="utf8" c:type="gchar*"/>
15940         </return-value>
15941         <parameters>
15942           <parameter name="colors" transfer-ownership="none">
15943             <doc xml:whitespace="preserve">an array of colors.</doc>
15944             <type name="Gdk.Color" c:type="GdkColor*"/>
15945           </parameter>
15946           <parameter name="n_colors" transfer-ownership="none">
15947             <doc xml:whitespace="preserve">length of the array.</doc>
15948             <type name="int" c:type="gint"/>
15949           </parameter>
15950         </parameters>
15951       </function>
15952       <function name="set_change_palette_hook"
15953                 c:identifier="gtk_color_selection_set_change_palette_hook"
15954                 deprecated="This function does not work in multihead environments."
15955                 deprecated-version="2.4">
15956         <doc xml:whitespace="preserve">Installs a global function to be called whenever the user tries to
15957 modify the palette in a color selection. This function should save
15958 the new palette contents, and update the GtkSettings property
15959 "gtk-color-palette" so all GtkColorSelection widgets will be modified.
15960 Use gtk_color_selection_set_change_palette_with_screen_hook() instead.</doc>
15961         <return-value transfer-ownership="full">
15962           <doc xml:whitespace="preserve">the previous change palette hook (that was replaced).</doc>
15963           <type name="ColorSelectionChangePaletteFunc"
15964                 c:type="GtkColorSelectionChangePaletteFunc"/>
15965         </return-value>
15966         <parameters>
15967           <parameter name="func" transfer-ownership="none" scope="call">
15968             <doc xml:whitespace="preserve">a function to call when the custom palette needs saving.</doc>
15969             <type name="ColorSelectionChangePaletteFunc"
15970                   c:type="GtkColorSelectionChangePaletteFunc"/>
15971           </parameter>
15972         </parameters>
15973       </function>
15974       <function name="set_change_palette_with_screen_hook"
15975                 c:identifier="gtk_color_selection_set_change_palette_with_screen_hook"
15976                 version="2.2">
15977         <doc xml:whitespace="preserve">Installs a global function to be called whenever the user tries to
15978 modify the palette in a color selection. This function should save
15979 the new palette contents, and update the GtkSettings property
15980 "gtk-color-palette" so all GtkColorSelection widgets will be modified.</doc>
15981         <return-value transfer-ownership="full">
15982           <doc xml:whitespace="preserve">the previous change palette hook (that was replaced).</doc>
15983           <type name="ColorSelectionChangePaletteWithScreenFunc"
15984                 c:type="GtkColorSelectionChangePaletteWithScreenFunc"/>
15985         </return-value>
15986         <parameters>
15987           <parameter name="func" transfer-ownership="none" scope="call">
15988             <doc xml:whitespace="preserve">a function to call when the custom palette needs saving.</doc>
15989             <type name="ColorSelectionChangePaletteWithScreenFunc"
15990                   c:type="GtkColorSelectionChangePaletteWithScreenFunc"/>
15991           </parameter>
15992         </parameters>
15993       </function>
15994       <method name="get_has_opacity_control"
15995               c:identifier="gtk_color_selection_get_has_opacity_control">
15996         <doc xml:whitespace="preserve">Determines whether the colorsel has an opacity control.</doc>
15997         <return-value transfer-ownership="none">
15998           <doc xml:whitespace="preserve">%TRUE if the @colorsel has an opacity control.  %FALSE if it does't.</doc>
15999           <type name="boolean" c:type="gboolean"/>
16000         </return-value>
16001       </method>
16002       <method name="set_has_opacity_control"
16003               c:identifier="gtk_color_selection_set_has_opacity_control">
16004         <doc xml:whitespace="preserve">Sets the @colorsel to use or not use opacity.</doc>
16005         <return-value transfer-ownership="none">
16006           <type name="none" c:type="void"/>
16007         </return-value>
16008         <parameters>
16009           <parameter name="has_opacity" transfer-ownership="none">
16010             <doc xml:whitespace="preserve">%TRUE if @colorsel can set the opacity, %FALSE otherwise.</doc>
16011             <type name="boolean" c:type="gboolean"/>
16012           </parameter>
16013         </parameters>
16014       </method>
16015       <method name="get_has_palette"
16016               c:identifier="gtk_color_selection_get_has_palette">
16017         <doc xml:whitespace="preserve">Determines whether the color selector has a color palette.</doc>
16018         <return-value transfer-ownership="none">
16019           <doc xml:whitespace="preserve">%TRUE if the selector has a palette.  %FALSE if it hasn't.</doc>
16020           <type name="boolean" c:type="gboolean"/>
16021         </return-value>
16022       </method>
16023       <method name="set_has_palette"
16024               c:identifier="gtk_color_selection_set_has_palette">
16025         <doc xml:whitespace="preserve">Shows and hides the palette based upon the value of @has_palette.</doc>
16026         <return-value transfer-ownership="none">
16027           <type name="none" c:type="void"/>
16028         </return-value>
16029         <parameters>
16030           <parameter name="has_palette" transfer-ownership="none">
16031             <doc xml:whitespace="preserve">%TRUE if palette is to be visible, %FALSE otherwise.</doc>
16032             <type name="boolean" c:type="gboolean"/>
16033           </parameter>
16034         </parameters>
16035       </method>
16036       <method name="set_current_color"
16037               c:identifier="gtk_color_selection_set_current_color">
16038         <doc xml:whitespace="preserve">Sets the current color to be @color.  The first time this is called, it will
16039 also set the original color to be @color too.</doc>
16040         <return-value transfer-ownership="none">
16041           <type name="none" c:type="void"/>
16042         </return-value>
16043         <parameters>
16044           <parameter name="color" transfer-ownership="none">
16045             <doc xml:whitespace="preserve">A #GdkColor to set the current color with.</doc>
16046             <type name="Gdk.Color" c:type="GdkColor*"/>
16047           </parameter>
16048         </parameters>
16049       </method>
16050       <method name="set_current_alpha"
16051               c:identifier="gtk_color_selection_set_current_alpha">
16052         <doc xml:whitespace="preserve">Sets the current opacity to be @alpha.  The first time this is called, it will
16053 also set the original opacity to be @alpha too.</doc>
16054         <return-value transfer-ownership="none">
16055           <type name="none" c:type="void"/>
16056         </return-value>
16057         <parameters>
16058           <parameter name="alpha" transfer-ownership="none">
16059             <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
16060             <type name="uint16" c:type="guint16"/>
16061           </parameter>
16062         </parameters>
16063       </method>
16064       <method name="get_current_color"
16065               c:identifier="gtk_color_selection_get_current_color">
16066         <doc xml:whitespace="preserve">Sets @color to be the current color in the GtkColorSelection widget.</doc>
16067         <return-value transfer-ownership="none">
16068           <type name="none" c:type="void"/>
16069         </return-value>
16070         <parameters>
16071           <parameter name="color" transfer-ownership="none">
16072             <doc xml:whitespace="preserve">a #GdkColor to fill in with the current color.</doc>
16073             <type name="Gdk.Color" c:type="GdkColor*"/>
16074           </parameter>
16075         </parameters>
16076       </method>
16077       <method name="get_current_alpha"
16078               c:identifier="gtk_color_selection_get_current_alpha">
16079         <doc xml:whitespace="preserve">Returns the current alpha value.</doc>
16080         <return-value transfer-ownership="none">
16081           <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
16082           <type name="uint16" c:type="guint16"/>
16083         </return-value>
16084       </method>
16085       <method name="set_previous_color"
16086               c:identifier="gtk_color_selection_set_previous_color">
16087         <doc xml:whitespace="preserve">Sets the 'previous' color to be @color.  This function should be called with
16088 some hesitations, as it might seem confusing to have that color change.
16089 Calling gtk_color_selection_set_current_color() will also set this color the first
16090 time it is called.</doc>
16091         <return-value transfer-ownership="none">
16092           <type name="none" c:type="void"/>
16093         </return-value>
16094         <parameters>
16095           <parameter name="color" transfer-ownership="none">
16096             <doc xml:whitespace="preserve">a #GdkColor to set the previous color with.</doc>
16097             <type name="Gdk.Color" c:type="GdkColor*"/>
16098           </parameter>
16099         </parameters>
16100       </method>
16101       <method name="set_previous_alpha"
16102               c:identifier="gtk_color_selection_set_previous_alpha">
16103         <doc xml:whitespace="preserve">Sets the 'previous' alpha to be @alpha.  This function should be called with
16104 some hesitations, as it might seem confusing to have that alpha change.</doc>
16105         <return-value transfer-ownership="none">
16106           <type name="none" c:type="void"/>
16107         </return-value>
16108         <parameters>
16109           <parameter name="alpha" transfer-ownership="none">
16110             <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
16111             <type name="uint16" c:type="guint16"/>
16112           </parameter>
16113         </parameters>
16114       </method>
16115       <method name="get_previous_color"
16116               c:identifier="gtk_color_selection_get_previous_color">
16117         <doc xml:whitespace="preserve">Fills @color in with the original color value.</doc>
16118         <return-value transfer-ownership="none">
16119           <type name="none" c:type="void"/>
16120         </return-value>
16121         <parameters>
16122           <parameter name="color" transfer-ownership="none">
16123             <doc xml:whitespace="preserve">a #GdkColor to fill in with the original color value.</doc>
16124             <type name="Gdk.Color" c:type="GdkColor*"/>
16125           </parameter>
16126         </parameters>
16127       </method>
16128       <method name="get_previous_alpha"
16129               c:identifier="gtk_color_selection_get_previous_alpha">
16130         <doc xml:whitespace="preserve">Returns the previous alpha value.</doc>
16131         <return-value transfer-ownership="none">
16132           <doc xml:whitespace="preserve">an integer between 0 and 65535.</doc>
16133           <type name="uint16" c:type="guint16"/>
16134         </return-value>
16135       </method>
16136       <method name="is_adjusting"
16137               c:identifier="gtk_color_selection_is_adjusting">
16138         <doc xml:whitespace="preserve">Gets the current state of the @colorsel.
16139 if the selection has stopped.</doc>
16140         <return-value transfer-ownership="none">
16141           <doc xml:whitespace="preserve">%TRUE if the user is currently dragging a color around, and %FALSE</doc>
16142           <type name="boolean" c:type="gboolean"/>
16143         </return-value>
16144       </method>
16145       <method name="set_color"
16146               c:identifier="gtk_color_selection_set_color"
16147               deprecated="Use gtk_color_selection_set_current_color() instead."
16148               deprecated-version="2.0">
16149         <doc xml:whitespace="preserve">Sets the current color to be @color.  The first time this is called, it will
16150 also set the original color to be @color too.</doc>
16151         <return-value transfer-ownership="none">
16152           <type name="none" c:type="void"/>
16153         </return-value>
16154         <parameters>
16155           <parameter name="color"
16156                      direction="out"
16157                      caller-allocates="0"
16158                      transfer-ownership="full">
16159             <doc xml:whitespace="preserve">an array of 4 doubles specifying the red, green, blue and opacity to set the current color to.</doc>
16160             <type name="double" c:type="gdouble*"/>
16161           </parameter>
16162         </parameters>
16163       </method>
16164       <method name="get_color"
16165               c:identifier="gtk_color_selection_get_color"
16166               deprecated="Use gtk_color_selection_get_current_color() instead."
16167               deprecated-version="2.0">
16168         <doc xml:whitespace="preserve">Sets @color to be the current color in the GtkColorSelection widget.</doc>
16169         <return-value transfer-ownership="none">
16170           <type name="none" c:type="void"/>
16171         </return-value>
16172         <parameters>
16173           <parameter name="color"
16174                      direction="out"
16175                      caller-allocates="0"
16176                      transfer-ownership="full">
16177             <doc xml:whitespace="preserve">an array of 4 #gdouble to fill in with the current color.</doc>
16178             <type name="double" c:type="gdouble*"/>
16179           </parameter>
16180         </parameters>
16181       </method>
16182       <method name="set_update_policy"
16183               c:identifier="gtk_color_selection_set_update_policy">
16184         <return-value transfer-ownership="none">
16185           <type name="none" c:type="void"/>
16186         </return-value>
16187         <parameters>
16188           <parameter name="policy" transfer-ownership="none">
16189             <type name="UpdateType" c:type="GtkUpdateType"/>
16190           </parameter>
16191         </parameters>
16192       </method>
16193       <property name="current-alpha" writable="1" transfer-ownership="none">
16194         <type name="uint" c:type="guint"/>
16195       </property>
16196       <property name="current-color" writable="1" transfer-ownership="none">
16197         <type name="Gdk.Color" c:type="GdkColor"/>
16198       </property>
16199       <property name="has-opacity-control"
16200                 writable="1"
16201                 transfer-ownership="none">
16202         <type name="boolean" c:type="gboolean"/>
16203       </property>
16204       <property name="has-palette" writable="1" transfer-ownership="none">
16205         <type name="boolean" c:type="gboolean"/>
16206       </property>
16207       <field name="parent_instance">
16208         <type name="VBox" c:type="GtkVBox"/>
16209       </field>
16210       <field name="private_data">
16211         <type name="any" c:type="gpointer"/>
16212       </field>
16213       <glib:signal name="color-changed">
16214         <return-value transfer-ownership="full">
16215           <type name="none" c:type="void"/>
16216         </return-value>
16217       </glib:signal>
16218     </class>
16219     <callback name="ColorSelectionChangePaletteFunc"
16220               c:type="GtkColorSelectionChangePaletteFunc">
16221       <return-value transfer-ownership="none">
16222         <type name="none" c:type="void"/>
16223       </return-value>
16224       <parameters>
16225         <parameter name="colors" transfer-ownership="none">
16226           <type name="Gdk.Color" c:type="GdkColor*"/>
16227         </parameter>
16228         <parameter name="n_colors" transfer-ownership="none">
16229           <type name="int" c:type="gint"/>
16230         </parameter>
16231       </parameters>
16232     </callback>
16233     <callback name="ColorSelectionChangePaletteWithScreenFunc"
16234               c:type="GtkColorSelectionChangePaletteWithScreenFunc">
16235       <return-value transfer-ownership="none">
16236         <type name="none" c:type="void"/>
16237       </return-value>
16238       <parameters>
16239         <parameter name="screen" transfer-ownership="none">
16240           <type name="Gdk.Screen" c:type="GdkScreen*"/>
16241         </parameter>
16242         <parameter name="colors" transfer-ownership="none">
16243           <type name="Gdk.Color" c:type="GdkColor*"/>
16244         </parameter>
16245         <parameter name="n_colors" transfer-ownership="none">
16246           <type name="int" c:type="gint"/>
16247         </parameter>
16248       </parameters>
16249     </callback>
16250     <record name="ColorSelectionClass"
16251             c:type="GtkColorSelectionClass"
16252             glib:is-gtype-struct-for="ColorSelection">
16253       <field name="parent_class">
16254         <type name="VBoxClass" c:type="GtkVBoxClass"/>
16255       </field>
16256       <field name="color_changed">
16257         <callback name="color_changed" c:type="color_changed">
16258           <return-value transfer-ownership="none">
16259             <type name="none" c:type="void"/>
16260           </return-value>
16261           <parameters>
16262             <parameter name="color_selection" transfer-ownership="none">
16263               <type name="ColorSelection" c:type="GtkColorSelection*"/>
16264             </parameter>
16265           </parameters>
16266         </callback>
16267       </field>
16268       <field name="gtk_reserved1">
16269         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
16270           <return-value transfer-ownership="none">
16271             <type name="none" c:type="void"/>
16272           </return-value>
16273         </callback>
16274       </field>
16275       <field name="gtk_reserved2">
16276         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
16277           <return-value transfer-ownership="none">
16278             <type name="none" c:type="void"/>
16279           </return-value>
16280         </callback>
16281       </field>
16282       <field name="gtk_reserved3">
16283         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
16284           <return-value transfer-ownership="none">
16285             <type name="none" c:type="void"/>
16286           </return-value>
16287         </callback>
16288       </field>
16289       <field name="gtk_reserved4">
16290         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
16291           <return-value transfer-ownership="none">
16292             <type name="none" c:type="void"/>
16293           </return-value>
16294         </callback>
16295       </field>
16296     </record>
16297     <class name="ColorSelectionDialog"
16298            c:type="GtkColorSelectionDialog"
16299            parent="Dialog"
16300            glib:type-name="GtkColorSelectionDialog"
16301            glib:get-type="gtk_color_selection_dialog_get_type"
16302            glib:type-struct="ColorSelectionDialogClass">
16303       <implements name="Atk.ImplementorIface"/>
16304       <implements name="Buildable"/>
16305       <constructor name="new" c:identifier="gtk_color_selection_dialog_new">
16306         <return-value transfer-ownership="full">
16307           <type name="ColorSelectionDialog" c:type="GtkWidget*"/>
16308         </return-value>
16309         <parameters>
16310           <parameter name="title" transfer-ownership="none">
16311             <type name="utf8" c:type="gchar*"/>
16312           </parameter>
16313         </parameters>
16314       </constructor>
16315       <method name="get_color_selection"
16316               c:identifier="gtk_color_selection_dialog_get_color_selection"
16317               version="2.14">
16318         <doc xml:whitespace="preserve">Retrieves the #GtkColorSelection widget embedded in the dialog.</doc>
16319         <return-value transfer-ownership="full">
16320           <doc xml:whitespace="preserve">the embedded #GtkColorSelection</doc>
16321           <type name="Widget" c:type="GtkWidget*"/>
16322         </return-value>
16323       </method>
16324       <property name="cancel-button" transfer-ownership="none">
16325         <type name="Widget" c:type="GtkWidget"/>
16326       </property>
16327       <property name="color-selection" transfer-ownership="none">
16328         <type name="Widget" c:type="GtkWidget"/>
16329       </property>
16330       <property name="help-button" transfer-ownership="none">
16331         <type name="Widget" c:type="GtkWidget"/>
16332       </property>
16333       <property name="ok-button" transfer-ownership="none">
16334         <type name="Widget" c:type="GtkWidget"/>
16335       </property>
16336       <field name="parent_instance">
16337         <type name="Dialog" c:type="GtkDialog"/>
16338       </field>
16339       <field name="colorsel">
16340         <type name="Widget" c:type="GtkWidget*"/>
16341       </field>
16342       <field name="ok_button">
16343         <type name="Widget" c:type="GtkWidget*"/>
16344       </field>
16345       <field name="cancel_button">
16346         <type name="Widget" c:type="GtkWidget*"/>
16347       </field>
16348       <field name="help_button">
16349         <type name="Widget" c:type="GtkWidget*"/>
16350       </field>
16351     </class>
16352     <record name="ColorSelectionDialogClass"
16353             c:type="GtkColorSelectionDialogClass"
16354             glib:is-gtype-struct-for="ColorSelectionDialog">
16355       <field name="parent_class">
16356         <type name="DialogClass" c:type="GtkDialogClass"/>
16357       </field>
16358       <field name="gtk_reserved1">
16359         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
16360           <return-value transfer-ownership="none">
16361             <type name="none" c:type="void"/>
16362           </return-value>
16363         </callback>
16364       </field>
16365       <field name="gtk_reserved2">
16366         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
16367           <return-value transfer-ownership="none">
16368             <type name="none" c:type="void"/>
16369           </return-value>
16370         </callback>
16371       </field>
16372       <field name="gtk_reserved3">
16373         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
16374           <return-value transfer-ownership="none">
16375             <type name="none" c:type="void"/>
16376           </return-value>
16377         </callback>
16378       </field>
16379       <field name="gtk_reserved4">
16380         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
16381           <return-value transfer-ownership="none">
16382             <type name="none" c:type="void"/>
16383           </return-value>
16384         </callback>
16385       </field>
16386     </record>
16387     <class name="Combo"
16388            c:type="GtkCombo"
16389            parent="HBox"
16390            glib:type-name="GtkCombo"
16391            glib:get-type="gtk_combo_get_type"
16392            glib:type-struct="ComboClass">
16393       <implements name="Atk.ImplementorIface"/>
16394       <implements name="Buildable"/>
16395       <implements name="Orientable"/>
16396       <constructor name="new" c:identifier="gtk_combo_new">
16397         <return-value transfer-ownership="full">
16398           <type name="Combo" c:type="GtkWidget*"/>
16399         </return-value>
16400       </constructor>
16401       <method name="set_value_in_list"
16402               c:identifier="gtk_combo_set_value_in_list">
16403         <return-value transfer-ownership="none">
16404           <type name="none" c:type="void"/>
16405         </return-value>
16406         <parameters>
16407           <parameter name="val" transfer-ownership="none">
16408             <type name="boolean" c:type="gboolean"/>
16409           </parameter>
16410           <parameter name="ok_if_empty" transfer-ownership="none">
16411             <type name="boolean" c:type="gboolean"/>
16412           </parameter>
16413         </parameters>
16414       </method>
16415       <method name="set_use_arrows" c:identifier="gtk_combo_set_use_arrows">
16416         <return-value transfer-ownership="none">
16417           <type name="none" c:type="void"/>
16418         </return-value>
16419         <parameters>
16420           <parameter name="val" transfer-ownership="none">
16421             <type name="boolean" c:type="gboolean"/>
16422           </parameter>
16423         </parameters>
16424       </method>
16425       <method name="set_use_arrows_always"
16426               c:identifier="gtk_combo_set_use_arrows_always">
16427         <return-value transfer-ownership="none">
16428           <type name="none" c:type="void"/>
16429         </return-value>
16430         <parameters>
16431           <parameter name="val" transfer-ownership="none">
16432             <type name="boolean" c:type="gboolean"/>
16433           </parameter>
16434         </parameters>
16435       </method>
16436       <method name="set_case_sensitive"
16437               c:identifier="gtk_combo_set_case_sensitive">
16438         <return-value transfer-ownership="none">
16439           <type name="none" c:type="void"/>
16440         </return-value>
16441         <parameters>
16442           <parameter name="val" transfer-ownership="none">
16443             <type name="boolean" c:type="gboolean"/>
16444           </parameter>
16445         </parameters>
16446       </method>
16447       <method name="set_item_string" c:identifier="gtk_combo_set_item_string">
16448         <return-value transfer-ownership="none">
16449           <type name="none" c:type="void"/>
16450         </return-value>
16451         <parameters>
16452           <parameter name="item" transfer-ownership="none">
16453             <type name="Item" c:type="GtkItem*"/>
16454           </parameter>
16455           <parameter name="item_value" transfer-ownership="none">
16456             <type name="utf8" c:type="gchar*"/>
16457           </parameter>
16458         </parameters>
16459       </method>
16460       <method name="set_popdown_strings"
16461               c:identifier="gtk_combo_set_popdown_strings"
16462               introspectable="0">
16463         <return-value transfer-ownership="none">
16464           <type name="none" c:type="void"/>
16465         </return-value>
16466         <parameters>
16467           <parameter name="strings" transfer-ownership="none">
16468             <type name="GLib.List" c:type="GList*">
16469               <type name="any" c:type="gpointer"/>
16470             </type>
16471           </parameter>
16472         </parameters>
16473       </method>
16474       <method name="disable_activate"
16475               c:identifier="gtk_combo_disable_activate">
16476         <return-value transfer-ownership="none">
16477           <type name="none" c:type="void"/>
16478         </return-value>
16479       </method>
16480       <property name="allow-empty" writable="1" transfer-ownership="none">
16481         <type name="boolean" c:type="gboolean"/>
16482       </property>
16483       <property name="case-sensitive" writable="1" transfer-ownership="none">
16484         <type name="boolean" c:type="gboolean"/>
16485       </property>
16486       <property name="enable-arrow-keys"
16487                 writable="1"
16488                 transfer-ownership="none">
16489         <type name="boolean" c:type="gboolean"/>
16490       </property>
16491       <property name="enable-arrows-always"
16492                 writable="1"
16493                 transfer-ownership="none">
16494         <type name="boolean" c:type="gboolean"/>
16495       </property>
16496       <property name="value-in-list" writable="1" transfer-ownership="none">
16497         <type name="boolean" c:type="gboolean"/>
16498       </property>
16499       <field name="hbox">
16500         <type name="HBox" c:type="GtkHBox"/>
16501       </field>
16502       <field name="entry">
16503         <type name="Widget" c:type="GtkWidget*"/>
16504       </field>
16505       <field name="button">
16506         <type name="Widget" c:type="GtkWidget*"/>
16507       </field>
16508       <field name="popup">
16509         <type name="Widget" c:type="GtkWidget*"/>
16510       </field>
16511       <field name="popwin">
16512         <type name="Widget" c:type="GtkWidget*"/>
16513       </field>
16514       <field name="list">
16515         <type name="Widget" c:type="GtkWidget*"/>
16516       </field>
16517       <field name="entry_change_id">
16518         <type name="uint" c:type="guint"/>
16519       </field>
16520       <field name="list_change_id">
16521         <type name="uint" c:type="guint"/>
16522       </field>
16523       <field name="value_in_list" bits="1">
16524         <type name="uint" c:type="guint"/>
16525       </field>
16526       <field name="ok_if_empty" bits="1">
16527         <type name="uint" c:type="guint"/>
16528       </field>
16529       <field name="case_sensitive" bits="1">
16530         <type name="uint" c:type="guint"/>
16531       </field>
16532       <field name="use_arrows" bits="1">
16533         <type name="uint" c:type="guint"/>
16534       </field>
16535       <field name="use_arrows_always" bits="1">
16536         <type name="uint" c:type="guint"/>
16537       </field>
16538       <field name="current_button">
16539         <type name="uint16" c:type="guint16"/>
16540       </field>
16541       <field name="activate_id">
16542         <type name="uint" c:type="guint"/>
16543       </field>
16544     </class>
16545     <class name="ComboBox"
16546            c:type="GtkComboBox"
16547            parent="Bin"
16548            glib:type-name="GtkComboBox"
16549            glib:get-type="gtk_combo_box_get_type"
16550            glib:type-struct="ComboBoxClass">
16551       <implements name="Atk.ImplementorIface"/>
16552       <implements name="Buildable"/>
16553       <implements name="CellEditable"/>
16554       <implements name="CellLayout"/>
16555       <constructor name="new" c:identifier="gtk_combo_box_new" version="2.4">
16556         <doc xml:whitespace="preserve">Creates a new empty #GtkComboBox.</doc>
16557         <return-value transfer-ownership="full">
16558           <doc xml:whitespace="preserve">A new #GtkComboBox.</doc>
16559           <type name="ComboBox" c:type="GtkWidget*"/>
16560         </return-value>
16561       </constructor>
16562       <constructor name="new_with_model"
16563                    c:identifier="gtk_combo_box_new_with_model"
16564                    version="2.4">
16565         <doc xml:whitespace="preserve">Creates a new #GtkComboBox with the model initialized to @model.</doc>
16566         <return-value transfer-ownership="full">
16567           <doc xml:whitespace="preserve">A new #GtkComboBox.</doc>
16568           <type name="ComboBox" c:type="GtkWidget*"/>
16569         </return-value>
16570         <parameters>
16571           <parameter name="model" transfer-ownership="none">
16572             <doc xml:whitespace="preserve">A #GtkTreeModel.</doc>
16573             <type name="TreeModel" c:type="GtkTreeModel*"/>
16574           </parameter>
16575         </parameters>
16576       </constructor>
16577       <constructor name="new_text"
16578                    c:identifier="gtk_combo_box_new_text"
16579                    version="2.4">
16580         <doc xml:whitespace="preserve">Convenience function which constructs a new text combo box, which is a
16581 #GtkComboBox just displaying strings. If you use this function to create
16582 a text combo box, you should only manipulate its data source with the
16583 gtk_combo_box_insert_text(), gtk_combo_box_prepend_text() and
16584 gtk_combo_box_remove_text().</doc>
16585         <return-value transfer-ownership="none">
16586           <doc xml:whitespace="preserve">A new text combo box.</doc>
16587           <type name="ComboBox" c:type="GtkWidget*"/>
16588         </return-value>
16589       </constructor>
16590       <virtual-method name="get_active_text"
16591                       invoker="get_active_text"
16592                       version="2.6">
16593         <doc xml:whitespace="preserve">Returns the currently active string in @combo_box or %NULL if none
16594 is selected.  Note that you can only use this function with combo
16595 boxes constructed with gtk_combo_box_new_text() and with
16596 #GtkComboBoxEntry&lt;!-- --&gt;s.
16597 Must be freed with g_free().</doc>
16598         <return-value transfer-ownership="full">
16599           <doc xml:whitespace="preserve">a newly allocated string containing the currently active text.</doc>
16600           <type name="utf8" c:type="gchar*"/>
16601         </return-value>
16602       </virtual-method>
16603       <method name="get_wrap_width"
16604               c:identifier="gtk_combo_box_get_wrap_width"
16605               version="2.6">
16606         <doc xml:whitespace="preserve">Returns the wrap width which is used to determine the number of columns 
16607 for the popup menu. If the wrap width is larger than 1, the combo box 
16608 is in table mode.</doc>
16609         <return-value transfer-ownership="none">
16610           <doc xml:whitespace="preserve">the wrap width.</doc>
16611           <type name="int" c:type="gint"/>
16612         </return-value>
16613       </method>
16614       <method name="set_wrap_width"
16615               c:identifier="gtk_combo_box_set_wrap_width"
16616               version="2.4">
16617         <doc xml:whitespace="preserve">Sets the wrap width of @combo_box to be @width. The wrap width is basically
16618 the preferred number of columns when you want the popup to be layed out
16619 in a table.</doc>
16620         <return-value transfer-ownership="none">
16621           <type name="none" c:type="void"/>
16622         </return-value>
16623         <parameters>
16624           <parameter name="width" transfer-ownership="none">
16625             <doc xml:whitespace="preserve">Preferred number of columns</doc>
16626             <type name="int" c:type="gint"/>
16627           </parameter>
16628         </parameters>
16629       </method>
16630       <method name="get_row_span_column"
16631               c:identifier="gtk_combo_box_get_row_span_column"
16632               version="2.6">
16633         <doc xml:whitespace="preserve">Returns the column with row span information for @combo_box.</doc>
16634         <return-value transfer-ownership="none">
16635           <doc xml:whitespace="preserve">the row span column.</doc>
16636           <type name="int" c:type="gint"/>
16637         </return-value>
16638       </method>
16639       <method name="set_row_span_column"
16640               c:identifier="gtk_combo_box_set_row_span_column"
16641               version="2.4">
16642         <doc xml:whitespace="preserve">Sets the column with row span information for @combo_box to be @row_span.
16643 The row span column contains integers which indicate how many rows
16644 an item should span.</doc>
16645         <return-value transfer-ownership="none">
16646           <type name="none" c:type="void"/>
16647         </return-value>
16648         <parameters>
16649           <parameter name="row_span" transfer-ownership="none">
16650             <doc xml:whitespace="preserve">A column in the model passed during construction.</doc>
16651             <type name="int" c:type="gint"/>
16652           </parameter>
16653         </parameters>
16654       </method>
16655       <method name="get_column_span_column"
16656               c:identifier="gtk_combo_box_get_column_span_column"
16657               version="2.6">
16658         <doc xml:whitespace="preserve">Returns the column with column span information for @combo_box.</doc>
16659         <return-value transfer-ownership="none">
16660           <doc xml:whitespace="preserve">the column span column.</doc>
16661           <type name="int" c:type="gint"/>
16662         </return-value>
16663       </method>
16664       <method name="set_column_span_column"
16665               c:identifier="gtk_combo_box_set_column_span_column"
16666               version="2.4">
16667         <doc xml:whitespace="preserve">Sets the column with column span information for @combo_box to be
16668 how many columns an item should span.</doc>
16669         <return-value transfer-ownership="none">
16670           <type name="none" c:type="void"/>
16671         </return-value>
16672         <parameters>
16673           <parameter name="column_span" transfer-ownership="none">
16674             <doc xml:whitespace="preserve">A column in the model passed during construction</doc>
16675             <type name="int" c:type="gint"/>
16676           </parameter>
16677         </parameters>
16678       </method>
16679       <method name="get_add_tearoffs"
16680               c:identifier="gtk_combo_box_get_add_tearoffs">
16681         <doc xml:whitespace="preserve">Gets the current value of the :add-tearoffs property.</doc>
16682         <return-value transfer-ownership="none">
16683           <doc xml:whitespace="preserve">the current value of the :add-tearoffs property.</doc>
16684           <type name="boolean" c:type="gboolean"/>
16685         </return-value>
16686       </method>
16687       <method name="set_add_tearoffs"
16688               c:identifier="gtk_combo_box_set_add_tearoffs"
16689               version="2.6">
16690         <doc xml:whitespace="preserve">Sets whether the popup menu should have a tearoff 
16691 menu item.</doc>
16692         <return-value transfer-ownership="none">
16693           <type name="none" c:type="void"/>
16694         </return-value>
16695         <parameters>
16696           <parameter name="add_tearoffs" transfer-ownership="none">
16697             <doc xml:whitespace="preserve">%TRUE to add tearoff menu items</doc>
16698             <type name="boolean" c:type="gboolean"/>
16699           </parameter>
16700         </parameters>
16701       </method>
16702       <method name="get_title"
16703               c:identifier="gtk_combo_box_get_title"
16704               version="2.10">
16705         <doc xml:whitespace="preserve">Gets the current title of the menu in tearoff mode. See
16706 gtk_combo_box_set_add_tearoffs().
16707 string which must not be freed.</doc>
16708         <return-value transfer-ownership="none">
16709           <doc xml:whitespace="preserve">the menu's title in tearoff mode. This is an internal copy of the</doc>
16710           <type name="utf8" c:type="gchar*"/>
16711         </return-value>
16712       </method>
16713       <method name="set_title"
16714               c:identifier="gtk_combo_box_set_title"
16715               version="2.10">
16716         <doc xml:whitespace="preserve">Sets the menu's title in tearoff mode.</doc>
16717         <return-value transfer-ownership="none">
16718           <type name="none" c:type="void"/>
16719         </return-value>
16720         <parameters>
16721           <parameter name="title" transfer-ownership="none">
16722             <doc xml:whitespace="preserve">a title for the menu in tearoff mode</doc>
16723             <type name="utf8" c:type="gchar*"/>
16724           </parameter>
16725         </parameters>
16726       </method>
16727       <method name="get_focus_on_click"
16728               c:identifier="gtk_combo_box_get_focus_on_click"
16729               version="2.6">
16730         <doc xml:whitespace="preserve">Returns whether the combo box grabs focus when it is clicked 
16731 with the mouse. See gtk_combo_box_set_focus_on_click().
16732 clicked with the mouse.</doc>
16733         <return-value transfer-ownership="none">
16734           <doc xml:whitespace="preserve">%TRUE if the combo box grabs focus when it is</doc>
16735           <type name="boolean" c:type="gboolean"/>
16736         </return-value>
16737       </method>
16738       <method name="set_focus_on_click"
16739               c:identifier="gtk_combo_box_set_focus_on_click"
16740               version="2.6">
16741         <doc xml:whitespace="preserve">Sets whether the combo box will grab focus when it is clicked with 
16742 the mouse. Making mouse clicks not grab focus is useful in places 
16743 like toolbars where you don't want the keyboard focus removed from 
16744 the main area of the application.</doc>
16745         <return-value transfer-ownership="none">
16746           <type name="none" c:type="void"/>
16747         </return-value>
16748         <parameters>
16749           <parameter name="focus_on_click" transfer-ownership="none">
16750             <doc xml:whitespace="preserve">whether the combo box grabs focus when clicked with the mouse</doc>
16751             <type name="boolean" c:type="gboolean"/>
16752           </parameter>
16753         </parameters>
16754       </method>
16755       <method name="get_active"
16756               c:identifier="gtk_combo_box_get_active"
16757               version="2.4">
16758         <doc xml:whitespace="preserve">Returns the index of the currently active item, or -1 if there's no
16759 active item. If the model is a non-flat treemodel, and the active item 
16760 is not an immediate child of the root of the tree, this function returns 
16761 &lt;literal&gt;gtk_tree_path_get_indices (path)[0]&lt;/literal&gt;, where 
16762 &lt;literal&gt;path&lt;/literal&gt; is the #GtkTreePath of the active item.
16763 or -1 if there's no active item.</doc>
16764         <return-value transfer-ownership="none">
16765           <doc xml:whitespace="preserve">An integer which is the index of the currently active item,</doc>
16766           <type name="int" c:type="gint"/>
16767         </return-value>
16768       </method>
16769       <method name="set_active"
16770               c:identifier="gtk_combo_box_set_active"
16771               version="2.4">
16772         <doc xml:whitespace="preserve">Sets the active item of @combo_box to be the item at @index.</doc>
16773         <return-value transfer-ownership="none">
16774           <type name="none" c:type="void"/>
16775         </return-value>
16776         <parameters>
16777           <parameter name="index_" transfer-ownership="none">
16778             <doc xml:whitespace="preserve">An index in the model passed during construction, or -1 to have no active item</doc>
16779             <type name="int" c:type="gint"/>
16780           </parameter>
16781         </parameters>
16782       </method>
16783       <method name="get_active_iter"
16784               c:identifier="gtk_combo_box_get_active_iter"
16785               version="2.4">
16786         <doc xml:whitespace="preserve">Sets @iter to point to the current active item, if it exists.</doc>
16787         <return-value transfer-ownership="none">
16788           <doc xml:whitespace="preserve">%TRUE, if @iter was set</doc>
16789           <type name="boolean" c:type="gboolean"/>
16790         </return-value>
16791         <parameters>
16792           <parameter name="iter" transfer-ownership="none">
16793             <doc xml:whitespace="preserve">The uninitialized #GtkTreeIter</doc>
16794             <type name="TreeIter" c:type="GtkTreeIter*"/>
16795           </parameter>
16796         </parameters>
16797       </method>
16798       <method name="set_active_iter"
16799               c:identifier="gtk_combo_box_set_active_iter"
16800               version="2.4">
16801         <doc xml:whitespace="preserve">Sets the current active item to be the one referenced by @iter, or
16802 unsets the active item if @iter is %NULL.</doc>
16803         <return-value transfer-ownership="none">
16804           <type name="none" c:type="void"/>
16805         </return-value>
16806         <parameters>
16807           <parameter name="iter" transfer-ownership="none" allow-none="1">
16808             <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL</doc>
16809             <type name="TreeIter" c:type="GtkTreeIter*"/>
16810           </parameter>
16811         </parameters>
16812       </method>
16813       <method name="set_model"
16814               c:identifier="gtk_combo_box_set_model"
16815               version="2.4">
16816         <doc xml:whitespace="preserve">Sets the model used by @combo_box to be @model. Will unset a previously set
16817 model (if applicable). If model is %NULL, then it will unset the model.
16818 Note that this function does not clear the cell renderers, you have to 
16819 call gtk_cell_layout_clear() yourself if you need to set up different 
16820 cell renderers for the new model.</doc>
16821         <return-value transfer-ownership="none">
16822           <type name="none" c:type="void"/>
16823         </return-value>
16824         <parameters>
16825           <parameter name="model" transfer-ownership="none" allow-none="1">
16826             <doc xml:whitespace="preserve">A #GtkTreeModel</doc>
16827             <type name="TreeModel" c:type="GtkTreeModel*"/>
16828           </parameter>
16829         </parameters>
16830       </method>
16831       <method name="get_model" c:identifier="gtk_combo_box_get_model">
16832         <return-value transfer-ownership="full">
16833           <type name="TreeModel" c:type="GtkTreeModel*"/>
16834         </return-value>
16835       </method>
16836       <method name="get_row_separator_func"
16837               c:identifier="gtk_combo_box_get_row_separator_func"
16838               version="2.6">
16839         <doc xml:whitespace="preserve">Returns the current row separator function.</doc>
16840         <return-value transfer-ownership="full">
16841           <doc xml:whitespace="preserve">the current row separator function.</doc>
16842           <type name="TreeViewRowSeparatorFunc"
16843                 c:type="GtkTreeViewRowSeparatorFunc"/>
16844         </return-value>
16845       </method>
16846       <method name="set_row_separator_func"
16847               c:identifier="gtk_combo_box_set_row_separator_func"
16848               version="2.6">
16849         <doc xml:whitespace="preserve">Sets the row separator function, which is used to determine
16850 whether a row should be drawn as a separator. If the row separator
16851 function is %NULL, no separators are drawn. This is the default value.</doc>
16852         <return-value transfer-ownership="none">
16853           <type name="none" c:type="void"/>
16854         </return-value>
16855         <parameters>
16856           <parameter name="func"
16857                      transfer-ownership="none"
16858                      scope="notified"
16859                      closure="2"
16860                      destroy="3">
16861             <doc xml:whitespace="preserve">a #GtkTreeViewRowSeparatorFunc</doc>
16862             <type name="TreeViewRowSeparatorFunc"
16863                   c:type="GtkTreeViewRowSeparatorFunc"/>
16864           </parameter>
16865           <parameter name="data" transfer-ownership="none" allow-none="1">
16866             <doc xml:whitespace="preserve">user data to pass to @func, or %NULL</doc>
16867             <type name="any" c:type="gpointer"/>
16868           </parameter>
16869           <parameter name="destroy"
16870                      transfer-ownership="none"
16871                      allow-none="1"
16872                      scope="call">
16873             <doc xml:whitespace="preserve">destroy notifier for @data, or %NULL</doc>
16874             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
16875           </parameter>
16876         </parameters>
16877       </method>
16878       <method name="set_button_sensitivity"
16879               c:identifier="gtk_combo_box_set_button_sensitivity"
16880               version="2.14">
16881         <doc xml:whitespace="preserve">Sets whether the dropdown button of the combo box should be
16882 always sensitive (%GTK_SENSITIVITY_ON), never sensitive (%GTK_SENSITIVITY_OFF)
16883 or only if there is at least one item to display (%GTK_SENSITIVITY_AUTO).</doc>
16884         <return-value transfer-ownership="none">
16885           <type name="none" c:type="void"/>
16886         </return-value>
16887         <parameters>
16888           <parameter name="sensitivity" transfer-ownership="none">
16889             <doc xml:whitespace="preserve">specify the sensitivity of the dropdown button</doc>
16890             <type name="SensitivityType" c:type="GtkSensitivityType"/>
16891           </parameter>
16892         </parameters>
16893       </method>
16894       <method name="get_button_sensitivity"
16895               c:identifier="gtk_combo_box_get_button_sensitivity"
16896               version="2.14">
16897         <doc xml:whitespace="preserve">Returns whether the combo box sets the dropdown button
16898 sensitive or not when there are no items in the model.
16899 is sensitive when the model is empty, %GTK_SENSITIVITY_OFF
16900 if the button is always insensitive or
16901 %GTK_SENSITIVITY_AUTO if it is only sensitive as long as
16902 the model has one item to be selected.</doc>
16903         <return-value transfer-ownership="full">
16904           <doc xml:whitespace="preserve">%GTK_SENSITIVITY_ON if the dropdown button</doc>
16905           <type name="SensitivityType" c:type="GtkSensitivityType"/>
16906         </return-value>
16907       </method>
16908       <method name="append_text"
16909               c:identifier="gtk_combo_box_append_text"
16910               version="2.4">
16911         <doc xml:whitespace="preserve">Appends @string to the list of strings stored in @combo_box. Note that
16912 you can only use this function with combo boxes constructed with
16913 gtk_combo_box_new_text().</doc>
16914         <return-value transfer-ownership="none">
16915           <type name="none" c:type="void"/>
16916         </return-value>
16917         <parameters>
16918           <parameter name="text" transfer-ownership="none">
16919             <doc xml:whitespace="preserve">A string</doc>
16920             <type name="utf8" c:type="gchar*"/>
16921           </parameter>
16922         </parameters>
16923       </method>
16924       <method name="insert_text"
16925               c:identifier="gtk_combo_box_insert_text"
16926               version="2.4">
16927         <doc xml:whitespace="preserve">Inserts @string at @position in the list of strings stored in @combo_box.
16928 Note that you can only use this function with combo boxes constructed
16929 with gtk_combo_box_new_text().</doc>
16930         <return-value transfer-ownership="none">
16931           <type name="none" c:type="void"/>
16932         </return-value>
16933         <parameters>
16934           <parameter name="position" transfer-ownership="none">
16935             <doc xml:whitespace="preserve">An index to insert @text</doc>
16936             <type name="int" c:type="gint"/>
16937           </parameter>
16938           <parameter name="text" transfer-ownership="none">
16939             <doc xml:whitespace="preserve">A string</doc>
16940             <type name="utf8" c:type="gchar*"/>
16941           </parameter>
16942         </parameters>
16943       </method>
16944       <method name="prepend_text"
16945               c:identifier="gtk_combo_box_prepend_text"
16946               version="2.4">
16947         <doc xml:whitespace="preserve">Prepends @string to the list of strings stored in @combo_box. Note that
16948 you can only use this function with combo boxes constructed with
16949 gtk_combo_box_new_text().</doc>
16950         <return-value transfer-ownership="none">
16951           <type name="none" c:type="void"/>
16952         </return-value>
16953         <parameters>
16954           <parameter name="text" transfer-ownership="none">
16955             <doc xml:whitespace="preserve">A string</doc>
16956             <type name="utf8" c:type="gchar*"/>
16957           </parameter>
16958         </parameters>
16959       </method>
16960       <method name="remove_text"
16961               c:identifier="gtk_combo_box_remove_text"
16962               version="2.4">
16963         <doc xml:whitespace="preserve">Removes the string at @position from @combo_box. Note that you can only use
16964 this function with combo boxes constructed with gtk_combo_box_new_text().</doc>
16965         <return-value transfer-ownership="none">
16966           <type name="none" c:type="void"/>
16967         </return-value>
16968         <parameters>
16969           <parameter name="position" transfer-ownership="none">
16970             <doc xml:whitespace="preserve">Index of the item to remove</doc>
16971             <type name="int" c:type="gint"/>
16972           </parameter>
16973         </parameters>
16974       </method>
16975       <method name="get_active_text"
16976               c:identifier="gtk_combo_box_get_active_text"
16977               version="2.6">
16978         <doc xml:whitespace="preserve">Returns the currently active string in @combo_box or %NULL if none
16979 is selected.  Note that you can only use this function with combo
16980 boxes constructed with gtk_combo_box_new_text() and with
16981 #GtkComboBoxEntry&lt;!-- --&gt;s.
16982 Must be freed with g_free().</doc>
16983         <return-value transfer-ownership="full">
16984           <doc xml:whitespace="preserve">a newly allocated string containing the currently active text.</doc>
16985           <type name="utf8" c:type="gchar*"/>
16986         </return-value>
16987       </method>
16988       <method name="popup" c:identifier="gtk_combo_box_popup" version="2.4">
16989         <doc xml:whitespace="preserve">Pops up the menu or dropdown list of @combo_box. 
16990 This function is mostly intended for use by accessibility technologies;
16991 applications should have little use for it.</doc>
16992         <return-value transfer-ownership="none">
16993           <type name="none" c:type="void"/>
16994         </return-value>
16995       </method>
16996       <method name="popdown"
16997               c:identifier="gtk_combo_box_popdown"
16998               version="2.4">
16999         <doc xml:whitespace="preserve">Hides the menu or dropdown list of @combo_box.
17000 This function is mostly intended for use by accessibility technologies;
17001 applications should have little use for it.</doc>
17002         <return-value transfer-ownership="none">
17003           <type name="none" c:type="void"/>
17004         </return-value>
17005       </method>
17006       <method name="get_popup_accessible"
17007               c:identifier="gtk_combo_box_get_popup_accessible"
17008               version="2.6">
17009         <doc xml:whitespace="preserve">Gets the accessible object corresponding to the combo box's popup.
17010 This function is mostly intended for use by accessibility technologies;
17011 applications should have little use for it.</doc>
17012         <return-value transfer-ownership="full">
17013           <doc xml:whitespace="preserve">the accessible object corresponding to the combo box's popup.</doc>
17014           <type name="Atk.Object" c:type="AtkObject*"/>
17015         </return-value>
17016       </method>
17017       <property name="active"
17018                 version="2.4"
17019                 writable="1"
17020                 transfer-ownership="none">
17021         <doc xml:whitespace="preserve">The item which is currently active. If the model is a non-flat treemodel,
17022 and the active item is not an immediate child of the root of the tree,
17023 this property has the value 
17024 &lt;literal&gt;gtk_tree_path_get_indices (path)[0]&lt;/literal&gt;,
17025 where &lt;literal&gt;path&lt;/literal&gt; is the #GtkTreePath of the active item.</doc>
17026         <type name="int" c:type="gint"/>
17027       </property>
17028       <property name="add-tearoffs"
17029                 version="2.6"
17030                 writable="1"
17031                 transfer-ownership="none">
17032         <doc xml:whitespace="preserve">The add-tearoffs property controls whether generated menus 
17033 have tearoff menu items. 
17034 Note that this only affects menu style combo boxes.</doc>
17035         <type name="boolean" c:type="gboolean"/>
17036       </property>
17037       <property name="button-sensitivity"
17038                 version="2.14"
17039                 writable="1"
17040                 transfer-ownership="none">
17041         <doc xml:whitespace="preserve">Whether the dropdown button is sensitive when
17042 the model is empty.</doc>
17043         <type name="SensitivityType" c:type="GtkSensitivityType"/>
17044       </property>
17045       <property name="column-span-column"
17046                 version="2.4"
17047                 writable="1"
17048                 transfer-ownership="none">
17049         <doc xml:whitespace="preserve">If this is set to a non-negative value, it must be the index of a column 
17050 of type %G_TYPE_INT in the model. 
17051 The values of that column are used to determine how many columns a value 
17052 in the list will span.</doc>
17053         <type name="int" c:type="gint"/>
17054       </property>
17055       <property name="focus-on-click" writable="1" transfer-ownership="none">
17056         <type name="boolean" c:type="gboolean"/>
17057       </property>
17058       <property name="has-frame"
17059                 version="2.6"
17060                 writable="1"
17061                 transfer-ownership="none">
17062         <doc xml:whitespace="preserve">The has-frame property controls whether a frame
17063 is drawn around the entry.</doc>
17064         <type name="boolean" c:type="gboolean"/>
17065       </property>
17066       <property name="model"
17067                 version="2.4"
17068                 writable="1"
17069                 transfer-ownership="none">
17070         <doc xml:whitespace="preserve">The model from which the combo box takes the values shown
17071 in the list.</doc>
17072         <type name="TreeModel" c:type="GtkTreeModel"/>
17073       </property>
17074       <property name="popup-shown" version="2.10" transfer-ownership="none">
17075         <doc xml:whitespace="preserve">Whether the combo boxes dropdown is popped up. 
17076 Note that this property is mainly useful, because
17077 it allows you to connect to notify::popup-shown.</doc>
17078         <type name="boolean" c:type="gboolean"/>
17079       </property>
17080       <property name="row-span-column"
17081                 version="2.4"
17082                 writable="1"
17083                 transfer-ownership="none">
17084         <doc xml:whitespace="preserve">If this is set to a non-negative value, it must be the index of a column 
17085 of type %G_TYPE_INT in the model. 
17086 The values of that column are used to determine how many rows a value in 
17087 the list will span. Therefore, the values in the model column pointed to 
17088 by this property must be greater than zero and not larger than wrap-width.</doc>
17089         <type name="int" c:type="gint"/>
17090       </property>
17091       <property name="tearoff-title"
17092                 version="2.10"
17093                 writable="1"
17094                 transfer-ownership="none">
17095         <doc xml:whitespace="preserve">A title that may be displayed by the window manager 
17096 when the popup is torn-off.</doc>
17097         <type name="utf8" c:type="gchararray"/>
17098       </property>
17099       <property name="wrap-width"
17100                 version="2.4"
17101                 writable="1"
17102                 transfer-ownership="none">
17103         <doc xml:whitespace="preserve">If wrap-width is set to a positive value, the list will be
17104 displayed in multiple columns, the number of columns is
17105 determined by wrap-width.</doc>
17106         <type name="int" c:type="gint"/>
17107       </property>
17108       <field name="parent_instance">
17109         <type name="Bin" c:type="GtkBin"/>
17110       </field>
17111       <field name="priv">
17112         <type name="ComboBoxPrivate" c:type="GtkComboBoxPrivate*"/>
17113       </field>
17114       <glib:signal name="changed" version="2.4">
17115         <doc xml:whitespace="preserve">The changed signal is emitted when the active
17116 item is changed. The can be due to the user selecting
17117 a different item from the list, or due to a 
17118 call to gtk_combo_box_set_active_iter().
17119 It will also be emitted while typing into a GtkComboBoxEntry, 
17120 as well as when selecting an item from the GtkComboBoxEntry's list.</doc>
17121         <return-value transfer-ownership="full">
17122           <type name="none" c:type="void"/>
17123         </return-value>
17124       </glib:signal>
17125       <glib:signal name="move-active" version="2.12">
17126         <doc xml:whitespace="preserve">The ::move-active signal is a 
17127 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
17128 which gets emitted to move the active selection.</doc>
17129         <return-value transfer-ownership="full">
17130           <type name="none" c:type="void"/>
17131         </return-value>
17132         <parameters>
17133           <parameter name="scroll_type" transfer-ownership="none">
17134             <doc xml:whitespace="preserve">a #GtkScrollType</doc>
17135             <type name="ScrollType" c:type="GtkScrollType"/>
17136           </parameter>
17137         </parameters>
17138       </glib:signal>
17139       <glib:signal name="popdown" version="2.12">
17140         <doc xml:whitespace="preserve">The ::popdown signal is a 
17141 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
17142 which gets emitted to popdown the combo box list.
17143 The default bindings for this signal are Alt+Up and Escape.</doc>
17144         <return-value transfer-ownership="full">
17145           <type name="boolean" c:type="gboolean"/>
17146         </return-value>
17147       </glib:signal>
17148       <glib:signal name="popup" version="2.12">
17149         <doc xml:whitespace="preserve">The ::popup signal is a 
17150 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
17151 which gets emitted to popup the combo box list.
17152 The default binding for this signal is Alt+Down.</doc>
17153         <return-value transfer-ownership="full">
17154           <type name="none" c:type="void"/>
17155         </return-value>
17156       </glib:signal>
17157     </class>
17158     <record name="ComboBoxClass"
17159             c:type="GtkComboBoxClass"
17160             glib:is-gtype-struct-for="ComboBox">
17161       <field name="parent_class">
17162         <type name="BinClass" c:type="GtkBinClass"/>
17163       </field>
17164       <field name="changed">
17165         <callback name="changed" c:type="changed">
17166           <return-value transfer-ownership="none">
17167             <type name="none" c:type="void"/>
17168           </return-value>
17169           <parameters>
17170             <parameter name="combo_box" transfer-ownership="none">
17171               <type name="ComboBox" c:type="GtkComboBox*"/>
17172             </parameter>
17173           </parameters>
17174         </callback>
17175       </field>
17176       <field name="get_active_text">
17177         <callback name="get_active_text" c:type="get_active_text">
17178           <return-value transfer-ownership="full">
17179             <doc xml:whitespace="preserve">a newly allocated string containing the currently active text.</doc>
17180             <type name="utf8" c:type="gchar*"/>
17181           </return-value>
17182           <parameters>
17183             <parameter name="combo_box" transfer-ownership="none">
17184               <type name="ComboBox" c:type="GtkComboBox*"/>
17185             </parameter>
17186           </parameters>
17187         </callback>
17188       </field>
17189       <field name="gtk_reserved0">
17190         <callback name="gtk_reserved0" c:type="_gtk_reserved0">
17191           <return-value transfer-ownership="none">
17192             <type name="none" c:type="void"/>
17193           </return-value>
17194         </callback>
17195       </field>
17196       <field name="gtk_reserved1">
17197         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
17198           <return-value transfer-ownership="none">
17199             <type name="none" c:type="void"/>
17200           </return-value>
17201         </callback>
17202       </field>
17203       <field name="gtk_reserved2">
17204         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
17205           <return-value transfer-ownership="none">
17206             <type name="none" c:type="void"/>
17207           </return-value>
17208         </callback>
17209       </field>
17210     </record>
17211     <class name="ComboBoxEntry"
17212            c:type="GtkComboBoxEntry"
17213            parent="ComboBox"
17214            glib:type-name="GtkComboBoxEntry"
17215            glib:get-type="gtk_combo_box_entry_get_type"
17216            glib:type-struct="ComboBoxEntryClass">
17217       <implements name="Atk.ImplementorIface"/>
17218       <implements name="Buildable"/>
17219       <implements name="CellEditable"/>
17220       <implements name="CellLayout"/>
17221       <constructor name="new"
17222                    c:identifier="gtk_combo_box_entry_new"
17223                    version="2.4">
17224         <doc xml:whitespace="preserve">Creates a new #GtkComboBoxEntry which has a #GtkEntry as child. After
17225 construction, you should set a model using gtk_combo_box_set_model() and a
17226 text column using gtk_combo_box_entry_set_text_column().</doc>
17227         <return-value transfer-ownership="full">
17228           <doc xml:whitespace="preserve">A new #GtkComboBoxEntry.</doc>
17229           <type name="ComboBoxEntry" c:type="GtkWidget*"/>
17230         </return-value>
17231       </constructor>
17232       <constructor name="new_with_model"
17233                    c:identifier="gtk_combo_box_entry_new_with_model"
17234                    version="2.4">
17235         <doc xml:whitespace="preserve">Creates a new #GtkComboBoxEntry which has a #GtkEntry as child and a list
17236 of strings as popup. You can get the #GtkEntry from a #GtkComboBoxEntry
17237 using GTK_ENTRY (GTK_BIN (combo_box_entry)-&gt;child). To add and remove
17238 strings from the list, just modify @model using its data manipulation
17239 API.</doc>
17240         <return-value transfer-ownership="full">
17241           <doc xml:whitespace="preserve">A new #GtkComboBoxEntry.</doc>
17242           <type name="ComboBoxEntry" c:type="GtkWidget*"/>
17243         </return-value>
17244         <parameters>
17245           <parameter name="model" transfer-ownership="none">
17246             <doc xml:whitespace="preserve">A #GtkTreeModel.</doc>
17247             <type name="TreeModel" c:type="GtkTreeModel*"/>
17248           </parameter>
17249           <parameter name="text_column" transfer-ownership="none">
17250             <doc xml:whitespace="preserve">A column in @model to get the strings from.</doc>
17251             <type name="int" c:type="gint"/>
17252           </parameter>
17253         </parameters>
17254       </constructor>
17255       <constructor name="new_text"
17256                    c:identifier="gtk_combo_box_entry_new_text"
17257                    version="2.4">
17258         <doc xml:whitespace="preserve">Convenience function which constructs a new editable text combo box, which 
17259 is a #GtkComboBoxEntry just displaying strings. If you use this function to
17260 create a text combo box, you should only manipulate its data source with
17261 gtk_combo_box_insert_text(), gtk_combo_box_prepend_text() and
17262 gtk_combo_box_remove_text().</doc>
17263         <return-value transfer-ownership="full">
17264           <doc xml:whitespace="preserve">A new text #GtkComboBoxEntry.</doc>
17265           <type name="ComboBoxEntry" c:type="GtkWidget*"/>
17266         </return-value>
17267       </constructor>
17268       <method name="set_text_column"
17269               c:identifier="gtk_combo_box_entry_set_text_column"
17270               version="2.4">
17271         <doc xml:whitespace="preserve">Sets the model column which @entry_box should use to get strings from
17272 to be @text_column.</doc>
17273         <return-value transfer-ownership="none">
17274           <type name="none" c:type="void"/>
17275         </return-value>
17276         <parameters>
17277           <parameter name="text_column" transfer-ownership="none">
17278             <doc xml:whitespace="preserve">A column in @model to get the strings from.</doc>
17279             <type name="int" c:type="gint"/>
17280           </parameter>
17281         </parameters>
17282       </method>
17283       <method name="get_text_column"
17284               c:identifier="gtk_combo_box_entry_get_text_column"
17285               version="2.4">
17286         <doc xml:whitespace="preserve">Returns the column which @entry_box is using to get the strings from.</doc>
17287         <return-value transfer-ownership="none">
17288           <doc xml:whitespace="preserve">A column in the data source model of @entry_box.</doc>
17289           <type name="int" c:type="gint"/>
17290         </return-value>
17291       </method>
17292       <property name="text-column" writable="1" transfer-ownership="none">
17293         <type name="int" c:type="gint"/>
17294       </property>
17295       <field name="parent_instance">
17296         <type name="ComboBox" c:type="GtkComboBox"/>
17297       </field>
17298       <field name="priv">
17299         <type name="ComboBoxEntryPrivate" c:type="GtkComboBoxEntryPrivate*"/>
17300       </field>
17301     </class>
17302     <record name="ComboBoxEntryClass"
17303             c:type="GtkComboBoxEntryClass"
17304             glib:is-gtype-struct-for="ComboBoxEntry">
17305       <field name="parent_class">
17306         <type name="ComboBoxClass" c:type="GtkComboBoxClass"/>
17307       </field>
17308       <field name="gtk_reserved0">
17309         <callback name="gtk_reserved0" c:type="_gtk_reserved0">
17310           <return-value transfer-ownership="none">
17311             <type name="none" c:type="void"/>
17312           </return-value>
17313         </callback>
17314       </field>
17315       <field name="gtk_reserved1">
17316         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
17317           <return-value transfer-ownership="none">
17318             <type name="none" c:type="void"/>
17319           </return-value>
17320         </callback>
17321       </field>
17322       <field name="gtk_reserved2">
17323         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
17324           <return-value transfer-ownership="none">
17325             <type name="none" c:type="void"/>
17326           </return-value>
17327         </callback>
17328       </field>
17329       <field name="gtk_reserved3">
17330         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
17331           <return-value transfer-ownership="none">
17332             <type name="none" c:type="void"/>
17333           </return-value>
17334         </callback>
17335       </field>
17336     </record>
17337     <record name="ComboBoxEntryPrivate" c:type="GtkComboBoxEntryPrivate">
17338     </record>
17339     <record name="ComboBoxPrivate" c:type="GtkComboBoxPrivate">
17340     </record>
17341     <record name="ComboClass"
17342             c:type="GtkComboClass"
17343             glib:is-gtype-struct-for="Combo">
17344       <field name="parent_class">
17345         <type name="HBoxClass" c:type="GtkHBoxClass"/>
17346       </field>
17347       <field name="gtk_reserved1">
17348         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
17349           <return-value transfer-ownership="none">
17350             <type name="none" c:type="void"/>
17351           </return-value>
17352         </callback>
17353       </field>
17354       <field name="gtk_reserved2">
17355         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
17356           <return-value transfer-ownership="none">
17357             <type name="none" c:type="void"/>
17358           </return-value>
17359         </callback>
17360       </field>
17361       <field name="gtk_reserved3">
17362         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
17363           <return-value transfer-ownership="none">
17364             <type name="none" c:type="void"/>
17365           </return-value>
17366         </callback>
17367       </field>
17368       <field name="gtk_reserved4">
17369         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
17370           <return-value transfer-ownership="none">
17371             <type name="none" c:type="void"/>
17372           </return-value>
17373         </callback>
17374       </field>
17375     </record>
17376     <class name="Container"
17377            c:type="GtkContainer"
17378            parent="Widget"
17379            abstract="1"
17380            glib:type-name="GtkContainer"
17381            glib:get-type="gtk_container_get_type"
17382            glib:type-struct="ContainerClass">
17383       <implements name="Atk.ImplementorIface"/>
17384       <implements name="Buildable"/>
17385       <function name="class_find_child_property"
17386                 c:identifier="gtk_container_class_find_child_property">
17387         <doc xml:whitespace="preserve">Finds a child property of a container class by name.</doc>
17388         <return-value transfer-ownership="full">
17389           <doc xml:whitespace="preserve">the #GParamSpec of the child property or %NULL if @class has no child property with that name.</doc>
17390           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
17391         </return-value>
17392         <parameters>
17393           <parameter name="cclass" transfer-ownership="none">
17394             <doc xml:whitespace="preserve">a #GtkContainerClass</doc>
17395             <type name="GObject.ObjectClass" c:type="GObjectClass*"/>
17396           </parameter>
17397           <parameter name="property_name" transfer-ownership="none">
17398             <doc xml:whitespace="preserve">the name of the child property to find</doc>
17399             <type name="utf8" c:type="gchar*"/>
17400           </parameter>
17401         </parameters>
17402       </function>
17403       <function name="class_list_child_properties"
17404                 c:identifier="gtk_container_class_list_child_properties">
17405         <doc xml:whitespace="preserve">Returns all child properties of a container class.</doc>
17406         <return-value transfer-ownership="full">
17407           <doc xml:whitespace="preserve">a newly allocated %NULL-terminated array of #GParamSpec*. The array must be freed with g_free().</doc>
17408           <type name="GObject.ParamSpec" c:type="GParamSpec**"/>
17409         </return-value>
17410         <parameters>
17411           <parameter name="cclass" transfer-ownership="none">
17412             <doc xml:whitespace="preserve">a #GtkContainerClass</doc>
17413             <type name="GObject.ObjectClass" c:type="GObjectClass*"/>
17414           </parameter>
17415           <parameter name="n_properties"
17416                      direction="out"
17417                      caller-allocates="0"
17418                      transfer-ownership="full">
17419             <doc xml:whitespace="preserve">location to return the number of child properties found</doc>
17420             <type name="uint" c:type="guint*"/>
17421           </parameter>
17422         </parameters>
17423       </function>
17424       <virtual-method name="forall">
17425         <return-value transfer-ownership="none">
17426           <type name="none" c:type="void"/>
17427         </return-value>
17428         <parameters>
17429           <parameter name="include_internals" transfer-ownership="none">
17430             <type name="boolean" c:type="gboolean"/>
17431           </parameter>
17432           <parameter name="callback" transfer-ownership="none">
17433             <type name="Callback" c:type="GtkCallback"/>
17434           </parameter>
17435           <parameter name="callback_data" transfer-ownership="none">
17436             <type name="any" c:type="gpointer"/>
17437           </parameter>
17438         </parameters>
17439       </virtual-method>
17440       <virtual-method name="child_type" invoker="child_type">
17441         <doc xml:whitespace="preserve">Returns the type of the children supported by the container.
17442 Note that this may return %G_TYPE_NONE to indicate that no more
17443 children can be added, e.g. for a #GtkPaned which already has two 
17444 children.</doc>
17445         <return-value transfer-ownership="none">
17446           <doc xml:whitespace="preserve">a #GType.</doc>
17447           <type name="GType" c:type="GType"/>
17448         </return-value>
17449       </virtual-method>
17450       <virtual-method name="composite_name">
17451         <return-value transfer-ownership="full">
17452           <type name="utf8" c:type="gchar*"/>
17453         </return-value>
17454         <parameters>
17455           <parameter name="child" transfer-ownership="none">
17456             <type name="Widget" c:type="GtkWidget*"/>
17457           </parameter>
17458         </parameters>
17459       </virtual-method>
17460       <virtual-method name="set_child_property">
17461         <return-value transfer-ownership="none">
17462           <type name="none" c:type="void"/>
17463         </return-value>
17464         <parameters>
17465           <parameter name="child" transfer-ownership="none">
17466             <type name="Widget" c:type="GtkWidget*"/>
17467           </parameter>
17468           <parameter name="property_id" transfer-ownership="none">
17469             <type name="uint" c:type="guint"/>
17470           </parameter>
17471           <parameter name="value" transfer-ownership="none">
17472             <type name="GObject.Value" c:type="GValue*"/>
17473           </parameter>
17474           <parameter name="pspec" transfer-ownership="none">
17475             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
17476           </parameter>
17477         </parameters>
17478       </virtual-method>
17479       <virtual-method name="get_child_property">
17480         <return-value transfer-ownership="none">
17481           <type name="none" c:type="void"/>
17482         </return-value>
17483         <parameters>
17484           <parameter name="child" transfer-ownership="none">
17485             <type name="Widget" c:type="GtkWidget*"/>
17486           </parameter>
17487           <parameter name="property_id" transfer-ownership="none">
17488             <type name="uint" c:type="guint"/>
17489           </parameter>
17490           <parameter name="value" transfer-ownership="none">
17491             <type name="GObject.Value" c:type="GValue*"/>
17492           </parameter>
17493           <parameter name="pspec" transfer-ownership="none">
17494             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
17495           </parameter>
17496         </parameters>
17497       </virtual-method>
17498       <method name="set_border_width"
17499               c:identifier="gtk_container_set_border_width">
17500         <doc xml:whitespace="preserve">Sets the border width of the container.
17501 The border width of a container is the amount of space to leave
17502 around the outside of the container. The only exception to this is
17503 #GtkWindow; because toplevel windows can't leave space outside,
17504 they leave the space inside. The border is added on all sides of
17505 the container. To add space to only one side, one approach is to
17506 create a #GtkAlignment widget, call gtk_widget_set_size_request()
17507 to give it a size, and place it on the side of the container as
17508 a spacer.</doc>
17509         <return-value transfer-ownership="none">
17510           <type name="none" c:type="void"/>
17511         </return-value>
17512         <parameters>
17513           <parameter name="border_width" transfer-ownership="none">
17514             <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>
17515             <type name="uint" c:type="guint"/>
17516           </parameter>
17517         </parameters>
17518       </method>
17519       <method name="get_border_width"
17520               c:identifier="gtk_container_get_border_width">
17521         <doc xml:whitespace="preserve">Retrieves the border width of the container. See
17522 gtk_container_set_border_width().</doc>
17523         <return-value transfer-ownership="none">
17524           <doc xml:whitespace="preserve">the current border width</doc>
17525           <type name="uint" c:type="guint"/>
17526         </return-value>
17527       </method>
17528       <method name="add" c:identifier="gtk_container_add">
17529         <doc xml:whitespace="preserve">Adds @widget to @container. Typically used for simple containers
17530 such as #GtkWindow, #GtkFrame, or #GtkButton; for more complicated
17531 layout containers such as #GtkBox or #GtkTable, this function will
17532 pick default packing parameters that may not be correct.  So
17533 consider functions such as gtk_box_pack_start() and
17534 gtk_table_attach() as an alternative to gtk_container_add() in
17535 those cases. A widget may be added to only one container at a time;
17536 you can't place the same widget inside two different containers.</doc>
17537         <return-value transfer-ownership="none">
17538           <type name="none" c:type="void"/>
17539         </return-value>
17540         <parameters>
17541           <parameter name="widget" transfer-ownership="none">
17542             <doc xml:whitespace="preserve">a widget to be placed inside @container</doc>
17543             <type name="Widget" c:type="GtkWidget*"/>
17544           </parameter>
17545         </parameters>
17546       </method>
17547       <method name="remove" c:identifier="gtk_container_remove">
17548         <doc xml:whitespace="preserve">Removes @widget from @container. @widget must be inside @container.
17549 Note that @container will own a reference to @widget, and that this
17550 may be the last reference held; so removing a widget from its
17551 container can destroy that widget. If you want to use @widget
17552 again, you need to add a reference to it while it's not inside
17553 a container, using g_object_ref(). If you don't want to use @widget
17554 again it's usually more efficient to simply destroy it directly
17555 using gtk_widget_destroy() since this will remove it from the
17556 container and help break any circular reference count cycles.</doc>
17557         <return-value transfer-ownership="none">
17558           <type name="none" c:type="void"/>
17559         </return-value>
17560         <parameters>
17561           <parameter name="widget" transfer-ownership="none">
17562             <doc xml:whitespace="preserve">a current child of @container</doc>
17563             <type name="Widget" c:type="GtkWidget*"/>
17564           </parameter>
17565         </parameters>
17566       </method>
17567       <method name="set_resize_mode"
17568               c:identifier="gtk_container_set_resize_mode">
17569         <doc xml:whitespace="preserve">Sets the resize mode for the container.
17570 The resize mode of a container determines whether a resize request 
17571 will be passed to the container's parent, queued for later execution
17572 or executed immediately.</doc>
17573         <return-value transfer-ownership="none">
17574           <type name="none" c:type="void"/>
17575         </return-value>
17576         <parameters>
17577           <parameter name="resize_mode" transfer-ownership="none">
17578             <doc xml:whitespace="preserve">the new resize mode</doc>
17579             <type name="ResizeMode" c:type="GtkResizeMode"/>
17580           </parameter>
17581         </parameters>
17582       </method>
17583       <method name="get_resize_mode"
17584               c:identifier="gtk_container_get_resize_mode">
17585         <doc xml:whitespace="preserve">Returns the resize mode for the container. See
17586 gtk_container_set_resize_mode ().</doc>
17587         <return-value transfer-ownership="full">
17588           <doc xml:whitespace="preserve">the current resize mode</doc>
17589           <type name="ResizeMode" c:type="GtkResizeMode"/>
17590         </return-value>
17591       </method>
17592       <method name="check_resize" c:identifier="gtk_container_check_resize">
17593         <return-value transfer-ownership="none">
17594           <type name="none" c:type="void"/>
17595         </return-value>
17596       </method>
17597       <method name="foreach" c:identifier="gtk_container_foreach">
17598         <doc xml:whitespace="preserve">Invokes @callback on each non-internal child of @container. See
17599 gtk_container_forall() for details on what constitutes an
17600 "internal" child.  Most applications should use
17601 gtk_container_foreach(), rather than gtk_container_forall().</doc>
17602         <return-value transfer-ownership="none">
17603           <type name="none" c:type="void"/>
17604         </return-value>
17605         <parameters>
17606           <parameter name="callback"
17607                      transfer-ownership="none"
17608                      scope="call"
17609                      closure="2">
17610             <doc xml:whitespace="preserve">a callback</doc>
17611             <type name="Callback" c:type="GtkCallback"/>
17612           </parameter>
17613           <parameter name="callback_data" transfer-ownership="none">
17614             <doc xml:whitespace="preserve">callback user data</doc>
17615             <type name="any" c:type="gpointer"/>
17616           </parameter>
17617         </parameters>
17618       </method>
17619       <method name="foreach_full" c:identifier="gtk_container_foreach_full">
17620         <return-value transfer-ownership="none">
17621           <type name="none" c:type="void"/>
17622         </return-value>
17623         <parameters>
17624           <parameter name="callback" transfer-ownership="none" scope="call">
17625             <type name="Callback" c:type="GtkCallback"/>
17626           </parameter>
17627           <parameter name="marshal"
17628                      transfer-ownership="none"
17629                      scope="notified"
17630                      closure="3"
17631                      destroy="4">
17632             <type name="CallbackMarshal" c:type="GtkCallbackMarshal"/>
17633           </parameter>
17634           <parameter name="callback_data" transfer-ownership="none">
17635             <type name="any" c:type="gpointer"/>
17636           </parameter>
17637           <parameter name="notify" transfer-ownership="none" scope="call">
17638             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
17639           </parameter>
17640         </parameters>
17641       </method>
17642       <method name="get_children" c:identifier="gtk_container_get_children">
17643         <doc xml:whitespace="preserve">Returns the container's non-internal children. See
17644 gtk_container_forall() for details on what constitutes an "internal" child.</doc>
17645         <return-value transfer-ownership="container">
17646           <doc xml:whitespace="preserve">a newly-allocated list of the container's non-internal children.</doc>
17647           <type name="GLib.List" c:type="GList*">
17648             <type name="Widget"/>
17649           </type>
17650         </return-value>
17651       </method>
17652       <method name="propagate_expose"
17653               c:identifier="gtk_container_propagate_expose">
17654         <doc xml:whitespace="preserve">When a container receives an expose event, it must send synthetic
17655 expose events to all children that don't have their own #GdkWindows.
17656 This function provides a convenient way of doing this. A container,
17657 when it receives an expose event, calls gtk_container_propagate_expose() 
17658 once for each child, passing in the event the container received.
17659 gtk_container_propagate_expose() takes care of deciding whether
17660 an expose event needs to be sent to the child, intersecting
17661 the event's area with the child area, and sending the event.
17662 In most cases, a container can simply either simply inherit the
17663 #GtkWidget::expose implementation from #GtkContainer, or, do some drawing 
17664 and then chain to the ::expose implementation from #GtkContainer.</doc>
17665         <return-value transfer-ownership="none">
17666           <type name="none" c:type="void"/>
17667         </return-value>
17668         <parameters>
17669           <parameter name="child" transfer-ownership="none">
17670             <doc xml:whitespace="preserve">a child of @container</doc>
17671             <type name="Widget" c:type="GtkWidget*"/>
17672           </parameter>
17673           <parameter name="event" transfer-ownership="none">
17674             <doc xml:whitespace="preserve">a expose event sent to container</doc>
17675             <type name="Gdk.EventExpose" c:type="GdkEventExpose*"/>
17676           </parameter>
17677         </parameters>
17678       </method>
17679       <method name="set_focus_chain"
17680               c:identifier="gtk_container_set_focus_chain"
17681               introspectable="0">
17682         <doc xml:whitespace="preserve">Sets a focus chain, overriding the one computed automatically by GTK+.
17683 In principle each widget in the chain should be a descendant of the 
17684 container, but this is not enforced by this method, since it's allowed 
17685 to set the focus chain before you pack the widgets, or have a widget 
17686 in the chain that isn't always packed. The necessary checks are done 
17687 when the focus chain is actually traversed.</doc>
17688         <return-value transfer-ownership="none">
17689           <type name="none" c:type="void"/>
17690         </return-value>
17691         <parameters>
17692           <parameter name="focusable_widgets" transfer-ownership="none">
17693             <doc xml:whitespace="preserve">the new focus chain</doc>
17694             <type name="GLib.List" c:type="GList*">
17695               <type name="any" c:type="gpointer"/>
17696             </type>
17697           </parameter>
17698         </parameters>
17699       </method>
17700       <method name="get_focus_chain"
17701               c:identifier="gtk_container_get_focus_chain">
17702         <doc xml:whitespace="preserve">Retrieves the focus chain of the container, if one has been
17703 set explicitly. If no focus chain has been explicitly
17704 set, GTK+ computes the focus chain based on the positions
17705 of the children. In that case, GTK+ stores %NULL in
17706 has been set explicitly.</doc>
17707         <return-value transfer-ownership="none">
17708           <doc xml:whitespace="preserve">%TRUE if the focus chain of the container</doc>
17709           <type name="boolean" c:type="gboolean"/>
17710         </return-value>
17711         <parameters>
17712           <parameter name="focusable_widgets"
17713                      direction="out"
17714                      caller-allocates="0"
17715                      transfer-ownership="container">
17716             <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>
17717             <type name="GLib.List" c:type="GList**">
17718               <type name="Widget"/>
17719             </type>
17720           </parameter>
17721         </parameters>
17722       </method>
17723       <method name="unset_focus_chain"
17724               c:identifier="gtk_container_unset_focus_chain">
17725         <doc xml:whitespace="preserve">Removes a focus chain explicitly set with gtk_container_set_focus_chain().</doc>
17726         <return-value transfer-ownership="none">
17727           <type name="none" c:type="void"/>
17728         </return-value>
17729       </method>
17730       <method name="set_reallocate_redraws"
17731               c:identifier="gtk_container_set_reallocate_redraws">
17732         <doc xml:whitespace="preserve">Sets the @reallocate_redraws flag of the container to the given value.
17733 Containers requesting reallocation redraws get automatically
17734 redrawn if any of their children changed allocation.</doc>
17735         <return-value transfer-ownership="none">
17736           <type name="none" c:type="void"/>
17737         </return-value>
17738         <parameters>
17739           <parameter name="needs_redraws" transfer-ownership="none">
17740             <doc xml:whitespace="preserve">the new value for the container's @reallocate_redraws flag</doc>
17741             <type name="boolean" c:type="gboolean"/>
17742           </parameter>
17743         </parameters>
17744       </method>
17745       <method name="set_focus_child"
17746               c:identifier="gtk_container_set_focus_child">
17747         <doc xml:whitespace="preserve">Sets, or unsets if @child is %NULL, the focused child of @container.
17748 This function emits the GtkContainer::set_focus_child signal of
17749 default behaviour by overriding the class closure of this signal.</doc>
17750         <return-value transfer-ownership="none">
17751           <type name="none" c:type="void"/>
17752         </return-value>
17753         <parameters>
17754           <parameter name="child" transfer-ownership="none" allow-none="1">
17755             <doc xml:whitespace="preserve">a #GtkWidget, or %NULL</doc>
17756             <type name="Widget" c:type="GtkWidget*"/>
17757           </parameter>
17758         </parameters>
17759       </method>
17760       <method name="get_focus_child"
17761               c:identifier="gtk_container_get_focus_child"
17762               version="2.14">
17763         <doc xml:whitespace="preserve">Returns the current focus child widget inside @container.
17764 inside @container, or %NULL if none is set.</doc>
17765         <return-value transfer-ownership="full">
17766           <doc xml:whitespace="preserve">The child widget which has the focus</doc>
17767           <type name="Widget" c:type="GtkWidget*"/>
17768         </return-value>
17769       </method>
17770       <method name="set_focus_vadjustment"
17771               c:identifier="gtk_container_set_focus_vadjustment">
17772         <doc xml:whitespace="preserve">Hooks up an adjustment to focus handling in a container, so when a 
17773 child of the container is focused, the adjustment is scrolled to 
17774 show that widget. This function sets the vertical alignment. See 
17775 gtk_scrolled_window_get_vadjustment() for a typical way of obtaining 
17776 the adjustment and gtk_container_set_focus_hadjustment() for setting
17777 the horizontal adjustment.
17778 The adjustments have to be in pixel units and in the same coordinate 
17779 system as the allocation for immediate children of the container.</doc>
17780         <return-value transfer-ownership="none">
17781           <type name="none" c:type="void"/>
17782         </return-value>
17783         <parameters>
17784           <parameter name="adjustment" transfer-ownership="none">
17785             <doc xml:whitespace="preserve">an adjustment which should be adjusted when the focus is moved among the descendents of @container</doc>
17786             <type name="Adjustment" c:type="GtkAdjustment*"/>
17787           </parameter>
17788         </parameters>
17789       </method>
17790       <method name="get_focus_vadjustment"
17791               c:identifier="gtk_container_get_focus_vadjustment">
17792         <doc xml:whitespace="preserve">Retrieves the vertical focus adjustment for the container. See
17793 gtk_container_set_focus_vadjustment().
17794 none has been set.</doc>
17795         <return-value transfer-ownership="none">
17796           <doc xml:whitespace="preserve">the vertical focus adjustment, or %NULL if</doc>
17797           <type name="Adjustment" c:type="GtkAdjustment*"/>
17798         </return-value>
17799       </method>
17800       <method name="set_focus_hadjustment"
17801               c:identifier="gtk_container_set_focus_hadjustment">
17802         <doc xml:whitespace="preserve">Hooks up an adjustment to focus handling in a container, so when a child 
17803 of the container is focused, the adjustment is scrolled to show that 
17804 widget. This function sets the horizontal alignment. 
17805 See gtk_scrolled_window_get_hadjustment() for a typical way of obtaining 
17806 the adjustment and gtk_container_set_focus_vadjustment() for setting
17807 the vertical adjustment.
17808 The adjustments have to be in pixel units and in the same coordinate 
17809 system as the allocation for immediate children of the container.</doc>
17810         <return-value transfer-ownership="none">
17811           <type name="none" c:type="void"/>
17812         </return-value>
17813         <parameters>
17814           <parameter name="adjustment" transfer-ownership="none">
17815             <doc xml:whitespace="preserve">an adjustment which should be adjusted when the focus is moved among the descendents of @container</doc>
17816             <type name="Adjustment" c:type="GtkAdjustment*"/>
17817           </parameter>
17818         </parameters>
17819       </method>
17820       <method name="get_focus_hadjustment"
17821               c:identifier="gtk_container_get_focus_hadjustment">
17822         <doc xml:whitespace="preserve">Retrieves the horizontal focus adjustment for the container. See
17823 gtk_container_set_focus_hadjustment ().
17824 none has been set.</doc>
17825         <return-value transfer-ownership="none">
17826           <doc xml:whitespace="preserve">the horizontal focus adjustment, or %NULL if</doc>
17827           <type name="Adjustment" c:type="GtkAdjustment*"/>
17828         </return-value>
17829       </method>
17830       <method name="resize_children"
17831               c:identifier="gtk_container_resize_children">
17832         <return-value transfer-ownership="none">
17833           <type name="none" c:type="void"/>
17834         </return-value>
17835       </method>
17836       <method name="child_type" c:identifier="gtk_container_child_type">
17837         <doc xml:whitespace="preserve">Returns the type of the children supported by the container.
17838 Note that this may return %G_TYPE_NONE to indicate that no more
17839 children can be added, e.g. for a #GtkPaned which already has two 
17840 children.</doc>
17841         <return-value transfer-ownership="none">
17842           <doc xml:whitespace="preserve">a #GType.</doc>
17843           <type name="GType" c:type="GType"/>
17844         </return-value>
17845       </method>
17846       <method name="add_with_properties"
17847               c:identifier="gtk_container_add_with_properties"
17848               introspectable="0">
17849         <doc xml:whitespace="preserve">Adds @widget to @container, setting child properties at the same time.
17850 See gtk_container_add() and gtk_container_child_set() for more details.</doc>
17851         <return-value transfer-ownership="none">
17852           <type name="none" c:type="void"/>
17853         </return-value>
17854         <parameters>
17855           <parameter name="widget" transfer-ownership="none">
17856             <doc xml:whitespace="preserve">a widget to be placed inside @container</doc>
17857             <type name="Widget" c:type="GtkWidget*"/>
17858           </parameter>
17859           <parameter name="first_prop_name" transfer-ownership="none">
17860             <doc xml:whitespace="preserve">the name of the first child property to set</doc>
17861             <type name="utf8" c:type="gchar*"/>
17862           </parameter>
17863           <parameter transfer-ownership="none">
17864             <varargs>
17865             </varargs>
17866           </parameter>
17867         </parameters>
17868       </method>
17869       <method name="child_set"
17870               c:identifier="gtk_container_child_set"
17871               introspectable="0">
17872         <doc xml:whitespace="preserve">Sets one or more child properties for @child and @container.</doc>
17873         <return-value transfer-ownership="none">
17874           <type name="none" c:type="void"/>
17875         </return-value>
17876         <parameters>
17877           <parameter name="child" transfer-ownership="none">
17878             <doc xml:whitespace="preserve">a widget which is a child of @container</doc>
17879             <type name="Widget" c:type="GtkWidget*"/>
17880           </parameter>
17881           <parameter name="first_prop_name" transfer-ownership="none">
17882             <doc xml:whitespace="preserve">the name of the first property to set</doc>
17883             <type name="utf8" c:type="gchar*"/>
17884           </parameter>
17885           <parameter transfer-ownership="none">
17886             <varargs>
17887             </varargs>
17888           </parameter>
17889         </parameters>
17890       </method>
17891       <method name="child_get"
17892               c:identifier="gtk_container_child_get"
17893               introspectable="0">
17894         <doc xml:whitespace="preserve">Gets the values of one or more child properties for @child and @container.</doc>
17895         <return-value transfer-ownership="none">
17896           <type name="none" c:type="void"/>
17897         </return-value>
17898         <parameters>
17899           <parameter name="child" transfer-ownership="none">
17900             <doc xml:whitespace="preserve">a widget which is a child of @container</doc>
17901             <type name="Widget" c:type="GtkWidget*"/>
17902           </parameter>
17903           <parameter name="first_prop_name" transfer-ownership="none">
17904             <doc xml:whitespace="preserve">the name of the first property to get</doc>
17905             <type name="utf8" c:type="gchar*"/>
17906           </parameter>
17907           <parameter transfer-ownership="none">
17908             <varargs>
17909             </varargs>
17910           </parameter>
17911         </parameters>
17912       </method>
17913       <method name="child_set_property"
17914               c:identifier="gtk_container_child_set_property">
17915         <doc xml:whitespace="preserve">Sets a child property for @child and @container.</doc>
17916         <return-value transfer-ownership="none">
17917           <type name="none" c:type="void"/>
17918         </return-value>
17919         <parameters>
17920           <parameter name="child" transfer-ownership="none">
17921             <doc xml:whitespace="preserve">a widget which is a child of @container</doc>
17922             <type name="Widget" c:type="GtkWidget*"/>
17923           </parameter>
17924           <parameter name="property_name" transfer-ownership="none">
17925             <doc xml:whitespace="preserve">the name of the property to set</doc>
17926             <type name="utf8" c:type="gchar*"/>
17927           </parameter>
17928           <parameter name="value" transfer-ownership="none">
17929             <doc xml:whitespace="preserve">the value to set the property to</doc>
17930             <type name="GObject.Value" c:type="GValue*"/>
17931           </parameter>
17932         </parameters>
17933       </method>
17934       <method name="child_get_property"
17935               c:identifier="gtk_container_child_get_property">
17936         <doc xml:whitespace="preserve">Gets the value of a child property for @child and @container.</doc>
17937         <return-value transfer-ownership="none">
17938           <type name="none" c:type="void"/>
17939         </return-value>
17940         <parameters>
17941           <parameter name="child" transfer-ownership="none">
17942             <doc xml:whitespace="preserve">a widget which is a child of @container</doc>
17943             <type name="Widget" c:type="GtkWidget*"/>
17944           </parameter>
17945           <parameter name="property_name" transfer-ownership="none">
17946             <doc xml:whitespace="preserve">the name of the property to get</doc>
17947             <type name="utf8" c:type="gchar*"/>
17948           </parameter>
17949           <parameter name="value" transfer-ownership="none">
17950             <doc xml:whitespace="preserve">a location to return the value</doc>
17951             <type name="GObject.Value" c:type="GValue*"/>
17952           </parameter>
17953         </parameters>
17954       </method>
17955       <method name="forall" c:identifier="gtk_container_forall">
17956         <doc xml:whitespace="preserve">Invokes @callback on each child of @container, including children
17957 that are considered "internal" (implementation details of the
17958 container). "Internal" children generally weren't added by the user
17959 of the container, but were added by the container implementation
17960 itself.  Most applications should use gtk_container_foreach(),
17961 rather than gtk_container_forall().</doc>
17962         <return-value transfer-ownership="none">
17963           <type name="none" c:type="void"/>
17964         </return-value>
17965         <parameters>
17966           <parameter name="callback"
17967                      transfer-ownership="none"
17968                      scope="call"
17969                      closure="2">
17970             <doc xml:whitespace="preserve">a callback</doc>
17971             <type name="Callback" c:type="GtkCallback"/>
17972           </parameter>
17973           <parameter name="callback_data" transfer-ownership="none">
17974             <doc xml:whitespace="preserve">callback user data</doc>
17975             <type name="any" c:type="gpointer"/>
17976           </parameter>
17977         </parameters>
17978       </method>
17979       <property name="border-width" writable="1" transfer-ownership="none">
17980         <type name="uint" c:type="guint"/>
17981       </property>
17982       <property name="child"
17983                 readable="0"
17984                 writable="1"
17985                 transfer-ownership="none">
17986         <type name="Widget" c:type="GtkWidget"/>
17987       </property>
17988       <property name="resize-mode" writable="1" transfer-ownership="none">
17989         <type name="ResizeMode" c:type="GtkResizeMode"/>
17990       </property>
17991       <field name="widget">
17992         <type name="Widget" c:type="GtkWidget"/>
17993       </field>
17994       <field name="focus_child">
17995         <type name="Widget" c:type="GtkWidget*"/>
17996       </field>
17997       <field name="border_width" bits="16">
17998         <type name="uint" c:type="guint"/>
17999       </field>
18000       <field name="need_resize" bits="1">
18001         <type name="uint" c:type="guint"/>
18002       </field>
18003       <field name="resize_mode" bits="2">
18004         <type name="uint" c:type="guint"/>
18005       </field>
18006       <field name="reallocate_redraws" bits="1">
18007         <type name="uint" c:type="guint"/>
18008       </field>
18009       <field name="has_focus_chain" bits="1">
18010         <type name="uint" c:type="guint"/>
18011       </field>
18012       <glib:signal name="add">
18013         <return-value transfer-ownership="full">
18014           <type name="none" c:type="void"/>
18015         </return-value>
18016         <parameters>
18017           <parameter name="object" transfer-ownership="none">
18018             <type name="Widget" c:type="GtkWidget"/>
18019           </parameter>
18020         </parameters>
18021       </glib:signal>
18022       <glib:signal name="check-resize">
18023         <return-value transfer-ownership="full">
18024           <type name="none" c:type="void"/>
18025         </return-value>
18026       </glib:signal>
18027       <glib:signal name="remove">
18028         <return-value transfer-ownership="full">
18029           <type name="none" c:type="void"/>
18030         </return-value>
18031         <parameters>
18032           <parameter name="object" transfer-ownership="none">
18033             <type name="Widget" c:type="GtkWidget"/>
18034           </parameter>
18035         </parameters>
18036       </glib:signal>
18037       <glib:signal name="set-focus-child">
18038         <return-value transfer-ownership="full">
18039           <type name="none" c:type="void"/>
18040         </return-value>
18041         <parameters>
18042           <parameter name="object" transfer-ownership="none">
18043             <type name="Widget" c:type="GtkWidget"/>
18044           </parameter>
18045         </parameters>
18046       </glib:signal>
18047     </class>
18048     <record name="ContainerClass"
18049             c:type="GtkContainerClass"
18050             glib:is-gtype-struct-for="Container">
18051       <field name="parent_class">
18052         <type name="WidgetClass" c:type="GtkWidgetClass"/>
18053       </field>
18054       <field name="add">
18055         <callback name="add" c:type="add">
18056           <return-value transfer-ownership="none">
18057             <type name="none" c:type="void"/>
18058           </return-value>
18059           <parameters>
18060             <parameter name="container" transfer-ownership="none">
18061               <type name="Container" c:type="GtkContainer*"/>
18062             </parameter>
18063             <parameter name="widget" transfer-ownership="none">
18064               <type name="Widget" c:type="GtkWidget*"/>
18065             </parameter>
18066           </parameters>
18067         </callback>
18068       </field>
18069       <field name="remove">
18070         <callback name="remove" c:type="remove">
18071           <return-value transfer-ownership="none">
18072             <type name="none" c:type="void"/>
18073           </return-value>
18074           <parameters>
18075             <parameter name="container" transfer-ownership="none">
18076               <type name="Container" c:type="GtkContainer*"/>
18077             </parameter>
18078             <parameter name="widget" transfer-ownership="none">
18079               <type name="Widget" c:type="GtkWidget*"/>
18080             </parameter>
18081           </parameters>
18082         </callback>
18083       </field>
18084       <field name="check_resize">
18085         <callback name="check_resize" c:type="check_resize">
18086           <return-value transfer-ownership="none">
18087             <type name="none" c:type="void"/>
18088           </return-value>
18089           <parameters>
18090             <parameter name="container" transfer-ownership="none">
18091               <type name="Container" c:type="GtkContainer*"/>
18092             </parameter>
18093           </parameters>
18094         </callback>
18095       </field>
18096       <field name="forall">
18097         <callback name="forall" c:type="forall">
18098           <return-value transfer-ownership="none">
18099             <type name="none" c:type="void"/>
18100           </return-value>
18101           <parameters>
18102             <parameter name="container" transfer-ownership="none">
18103               <type name="Container" c:type="GtkContainer*"/>
18104             </parameter>
18105             <parameter name="include_internals" transfer-ownership="none">
18106               <type name="boolean" c:type="gboolean"/>
18107             </parameter>
18108             <parameter name="callback" transfer-ownership="none">
18109               <type name="Callback" c:type="GtkCallback"/>
18110             </parameter>
18111             <parameter name="callback_data" transfer-ownership="none">
18112               <type name="any" c:type="gpointer"/>
18113             </parameter>
18114           </parameters>
18115         </callback>
18116       </field>
18117       <field name="set_focus_child">
18118         <callback name="set_focus_child" c:type="set_focus_child">
18119           <return-value transfer-ownership="none">
18120             <type name="none" c:type="void"/>
18121           </return-value>
18122           <parameters>
18123             <parameter name="container" transfer-ownership="none">
18124               <type name="Container" c:type="GtkContainer*"/>
18125             </parameter>
18126             <parameter name="widget" transfer-ownership="none">
18127               <type name="Widget" c:type="GtkWidget*"/>
18128             </parameter>
18129           </parameters>
18130         </callback>
18131       </field>
18132       <field name="child_type">
18133         <callback name="child_type" c:type="child_type">
18134           <return-value transfer-ownership="none">
18135             <doc xml:whitespace="preserve">a #GType.</doc>
18136             <type name="GType" c:type="GType"/>
18137           </return-value>
18138           <parameters>
18139             <parameter name="container" transfer-ownership="none">
18140               <type name="Container" c:type="GtkContainer*"/>
18141             </parameter>
18142           </parameters>
18143         </callback>
18144       </field>
18145       <field name="composite_name">
18146         <callback name="composite_name" c:type="composite_name">
18147           <return-value transfer-ownership="full">
18148             <type name="utf8" c:type="gchar*"/>
18149           </return-value>
18150           <parameters>
18151             <parameter name="container" transfer-ownership="none">
18152               <type name="Container" c:type="GtkContainer*"/>
18153             </parameter>
18154             <parameter name="child" transfer-ownership="none">
18155               <type name="Widget" c:type="GtkWidget*"/>
18156             </parameter>
18157           </parameters>
18158         </callback>
18159       </field>
18160       <field name="set_child_property">
18161         <callback name="set_child_property" c:type="set_child_property">
18162           <return-value transfer-ownership="none">
18163             <type name="none" c:type="void"/>
18164           </return-value>
18165           <parameters>
18166             <parameter name="container" transfer-ownership="none">
18167               <type name="Container" c:type="GtkContainer*"/>
18168             </parameter>
18169             <parameter name="child" transfer-ownership="none">
18170               <type name="Widget" c:type="GtkWidget*"/>
18171             </parameter>
18172             <parameter name="property_id" transfer-ownership="none">
18173               <type name="uint" c:type="guint"/>
18174             </parameter>
18175             <parameter name="value" transfer-ownership="none">
18176               <type name="GObject.Value" c:type="GValue*"/>
18177             </parameter>
18178             <parameter name="pspec" transfer-ownership="none">
18179               <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
18180             </parameter>
18181           </parameters>
18182         </callback>
18183       </field>
18184       <field name="get_child_property">
18185         <callback name="get_child_property" c:type="get_child_property">
18186           <return-value transfer-ownership="none">
18187             <type name="none" c:type="void"/>
18188           </return-value>
18189           <parameters>
18190             <parameter name="container" transfer-ownership="none">
18191               <type name="Container" c:type="GtkContainer*"/>
18192             </parameter>
18193             <parameter name="child" transfer-ownership="none">
18194               <type name="Widget" c:type="GtkWidget*"/>
18195             </parameter>
18196             <parameter name="property_id" transfer-ownership="none">
18197               <type name="uint" c:type="guint"/>
18198             </parameter>
18199             <parameter name="value" transfer-ownership="none">
18200               <type name="GObject.Value" c:type="GValue*"/>
18201             </parameter>
18202             <parameter name="pspec" transfer-ownership="none">
18203               <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
18204             </parameter>
18205           </parameters>
18206         </callback>
18207       </field>
18208       <field name="gtk_reserved1">
18209         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
18210           <return-value transfer-ownership="none">
18211             <type name="none" c:type="void"/>
18212           </return-value>
18213         </callback>
18214       </field>
18215       <field name="gtk_reserved2">
18216         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
18217           <return-value transfer-ownership="none">
18218             <type name="none" c:type="void"/>
18219           </return-value>
18220         </callback>
18221       </field>
18222       <field name="gtk_reserved3">
18223         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
18224           <return-value transfer-ownership="none">
18225             <type name="none" c:type="void"/>
18226           </return-value>
18227         </callback>
18228       </field>
18229       <field name="gtk_reserved4">
18230         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
18231           <return-value transfer-ownership="none">
18232             <type name="none" c:type="void"/>
18233           </return-value>
18234         </callback>
18235       </field>
18236       <method name="install_child_property"
18237               c:identifier="gtk_container_class_install_child_property">
18238         <doc xml:whitespace="preserve">Installs a child property on a container class.</doc>
18239         <return-value transfer-ownership="none">
18240           <type name="none" c:type="void"/>
18241         </return-value>
18242         <parameters>
18243           <parameter name="property_id" transfer-ownership="none">
18244             <doc xml:whitespace="preserve">the id for the property</doc>
18245             <type name="uint" c:type="guint"/>
18246           </parameter>
18247           <parameter name="pspec" transfer-ownership="none">
18248             <doc xml:whitespace="preserve">the #GParamSpec for the property</doc>
18249             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
18250           </parameter>
18251         </parameters>
18252       </method>
18253     </record>
18254     <enumeration name="CornerType"
18255                  glib:type-name="GtkCornerType"
18256                  glib:get-type="gtk_corner_type_get_type"
18257                  c:type="GtkCornerType">
18258       <member name="top_left"
18259               value="0"
18260               c:identifier="GTK_CORNER_TOP_LEFT"
18261               glib:nick="top-left"/>
18262       <member name="bottom_left"
18263               value="1"
18264               c:identifier="GTK_CORNER_BOTTOM_LEFT"
18265               glib:nick="bottom-left"/>
18266       <member name="top_right"
18267               value="2"
18268               c:identifier="GTK_CORNER_TOP_RIGHT"
18269               glib:nick="top-right"/>
18270       <member name="bottom_right"
18271               value="3"
18272               c:identifier="GTK_CORNER_BOTTOM_RIGHT"
18273               glib:nick="bottom-right"/>
18274     </enumeration>
18275     <class name="Curve"
18276            c:type="GtkCurve"
18277            parent="DrawingArea"
18278            glib:type-name="GtkCurve"
18279            glib:get-type="gtk_curve_get_type"
18280            glib:type-struct="CurveClass">
18281       <implements name="Atk.ImplementorIface"/>
18282       <implements name="Buildable"/>
18283       <constructor name="new" c:identifier="gtk_curve_new">
18284         <return-value transfer-ownership="full">
18285           <type name="Curve" c:type="GtkWidget*"/>
18286         </return-value>
18287       </constructor>
18288       <method name="reset" c:identifier="gtk_curve_reset">
18289         <return-value transfer-ownership="none">
18290           <type name="none" c:type="void"/>
18291         </return-value>
18292       </method>
18293       <method name="set_gamma" c:identifier="gtk_curve_set_gamma">
18294         <return-value transfer-ownership="none">
18295           <type name="none" c:type="void"/>
18296         </return-value>
18297         <parameters>
18298           <parameter name="gamma_" transfer-ownership="none">
18299             <type name="float" c:type="gfloat"/>
18300           </parameter>
18301         </parameters>
18302       </method>
18303       <method name="set_range" c:identifier="gtk_curve_set_range">
18304         <return-value transfer-ownership="none">
18305           <type name="none" c:type="void"/>
18306         </return-value>
18307         <parameters>
18308           <parameter name="min_x" transfer-ownership="none">
18309             <type name="float" c:type="gfloat"/>
18310           </parameter>
18311           <parameter name="max_x" transfer-ownership="none">
18312             <type name="float" c:type="gfloat"/>
18313           </parameter>
18314           <parameter name="min_y" transfer-ownership="none">
18315             <type name="float" c:type="gfloat"/>
18316           </parameter>
18317           <parameter name="max_y" transfer-ownership="none">
18318             <type name="float" c:type="gfloat"/>
18319           </parameter>
18320         </parameters>
18321       </method>
18322       <method name="get_vector" c:identifier="gtk_curve_get_vector">
18323         <return-value transfer-ownership="none">
18324           <type name="none" c:type="void"/>
18325         </return-value>
18326         <parameters>
18327           <parameter name="veclen" transfer-ownership="none">
18328             <type name="int" c:type="int"/>
18329           </parameter>
18330           <parameter name="vector" transfer-ownership="none">
18331             <type name="float" c:type="gfloat"/>
18332           </parameter>
18333         </parameters>
18334       </method>
18335       <method name="set_vector" c:identifier="gtk_curve_set_vector">
18336         <return-value transfer-ownership="none">
18337           <type name="none" c:type="void"/>
18338         </return-value>
18339         <parameters>
18340           <parameter name="veclen" transfer-ownership="none">
18341             <type name="int" c:type="int"/>
18342           </parameter>
18343           <parameter name="vector" transfer-ownership="none">
18344             <type name="float" c:type="gfloat"/>
18345           </parameter>
18346         </parameters>
18347       </method>
18348       <method name="set_curve_type" c:identifier="gtk_curve_set_curve_type">
18349         <return-value transfer-ownership="none">
18350           <type name="none" c:type="void"/>
18351         </return-value>
18352         <parameters>
18353           <parameter name="type" transfer-ownership="none">
18354             <type name="CurveType" c:type="GtkCurveType"/>
18355           </parameter>
18356         </parameters>
18357       </method>
18358       <property name="curve-type" writable="1" transfer-ownership="none">
18359         <type name="CurveType" c:type="GtkCurveType"/>
18360       </property>
18361       <property name="max-x" writable="1" transfer-ownership="none">
18362         <type name="float" c:type="gfloat"/>
18363       </property>
18364       <property name="max-y" writable="1" transfer-ownership="none">
18365         <type name="float" c:type="gfloat"/>
18366       </property>
18367       <property name="min-x" writable="1" transfer-ownership="none">
18368         <type name="float" c:type="gfloat"/>
18369       </property>
18370       <property name="min-y" writable="1" transfer-ownership="none">
18371         <type name="float" c:type="gfloat"/>
18372       </property>
18373       <field name="graph">
18374         <type name="DrawingArea" c:type="GtkDrawingArea"/>
18375       </field>
18376       <field name="cursor_type">
18377         <type name="int" c:type="gint"/>
18378       </field>
18379       <field name="min_x">
18380         <type name="float" c:type="gfloat"/>
18381       </field>
18382       <field name="max_x">
18383         <type name="float" c:type="gfloat"/>
18384       </field>
18385       <field name="min_y">
18386         <type name="float" c:type="gfloat"/>
18387       </field>
18388       <field name="max_y">
18389         <type name="float" c:type="gfloat"/>
18390       </field>
18391       <field name="pixmap">
18392         <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
18393       </field>
18394       <field name="curve_type">
18395         <type name="CurveType" c:type="GtkCurveType"/>
18396       </field>
18397       <field name="height">
18398         <type name="int" c:type="gint"/>
18399       </field>
18400       <field name="grab_point">
18401         <type name="int" c:type="gint"/>
18402       </field>
18403       <field name="last">
18404         <type name="int" c:type="gint"/>
18405       </field>
18406       <field name="num_points">
18407         <type name="int" c:type="gint"/>
18408       </field>
18409       <field name="point">
18410         <type name="Gdk.Point" c:type="GdkPoint*"/>
18411       </field>
18412       <field name="num_ctlpoints">
18413         <type name="int" c:type="gint"/>
18414       </field>
18415       <field name="ctlpoint">
18416         <type name="any" c:type="gfloat*"/>
18417       </field>
18418       <glib:signal name="curve-type-changed">
18419         <return-value transfer-ownership="full">
18420           <type name="none" c:type="void"/>
18421         </return-value>
18422       </glib:signal>
18423     </class>
18424     <record name="CurveClass"
18425             c:type="GtkCurveClass"
18426             glib:is-gtype-struct-for="Curve">
18427       <field name="parent_class">
18428         <type name="DrawingAreaClass" c:type="GtkDrawingAreaClass"/>
18429       </field>
18430       <field name="curve_type_changed">
18431         <callback name="curve_type_changed" c:type="curve_type_changed">
18432           <return-value transfer-ownership="none">
18433             <type name="none" c:type="void"/>
18434           </return-value>
18435           <parameters>
18436             <parameter name="curve" transfer-ownership="none">
18437               <type name="Curve" c:type="GtkCurve*"/>
18438             </parameter>
18439           </parameters>
18440         </callback>
18441       </field>
18442       <field name="gtk_reserved1">
18443         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
18444           <return-value transfer-ownership="none">
18445             <type name="none" c:type="void"/>
18446           </return-value>
18447         </callback>
18448       </field>
18449       <field name="gtk_reserved2">
18450         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
18451           <return-value transfer-ownership="none">
18452             <type name="none" c:type="void"/>
18453           </return-value>
18454         </callback>
18455       </field>
18456       <field name="gtk_reserved3">
18457         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
18458           <return-value transfer-ownership="none">
18459             <type name="none" c:type="void"/>
18460           </return-value>
18461         </callback>
18462       </field>
18463       <field name="gtk_reserved4">
18464         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
18465           <return-value transfer-ownership="none">
18466             <type name="none" c:type="void"/>
18467           </return-value>
18468         </callback>
18469       </field>
18470     </record>
18471     <enumeration name="CurveType"
18472                  glib:type-name="GtkCurveType"
18473                  glib:get-type="gtk_curve_type_get_type"
18474                  c:type="GtkCurveType">
18475       <member name="linear"
18476               value="0"
18477               c:identifier="GTK_CURVE_TYPE_LINEAR"
18478               glib:nick="linear"/>
18479       <member name="spline"
18480               value="1"
18481               c:identifier="GTK_CURVE_TYPE_SPLINE"
18482               glib:nick="spline"/>
18483       <member name="free"
18484               value="2"
18485               c:identifier="GTK_CURVE_TYPE_FREE"
18486               glib:nick="free"/>
18487     </enumeration>
18488     <bitfield name="DebugFlag"
18489               glib:type-name="GtkDebugFlag"
18490               glib:get-type="gtk_debug_flag_get_type"
18491               c:type="GtkDebugFlag">
18492       <member name="misc"
18493               value="1"
18494               c:identifier="GTK_DEBUG_MISC"
18495               glib:nick="misc"/>
18496       <member name="plugsocket"
18497               value="2"
18498               c:identifier="GTK_DEBUG_PLUGSOCKET"
18499               glib:nick="plugsocket"/>
18500       <member name="text"
18501               value="4"
18502               c:identifier="GTK_DEBUG_TEXT"
18503               glib:nick="text"/>
18504       <member name="tree"
18505               value="8"
18506               c:identifier="GTK_DEBUG_TREE"
18507               glib:nick="tree"/>
18508       <member name="updates"
18509               value="16"
18510               c:identifier="GTK_DEBUG_UPDATES"
18511               glib:nick="updates"/>
18512       <member name="keybindings"
18513               value="32"
18514               c:identifier="GTK_DEBUG_KEYBINDINGS"
18515               glib:nick="keybindings"/>
18516       <member name="multihead"
18517               value="64"
18518               c:identifier="GTK_DEBUG_MULTIHEAD"
18519               glib:nick="multihead"/>
18520       <member name="modules"
18521               value="128"
18522               c:identifier="GTK_DEBUG_MODULES"
18523               glib:nick="modules"/>
18524       <member name="geometry"
18525               value="256"
18526               c:identifier="GTK_DEBUG_GEOMETRY"
18527               glib:nick="geometry"/>
18528       <member name="icontheme"
18529               value="512"
18530               c:identifier="GTK_DEBUG_ICONTHEME"
18531               glib:nick="icontheme"/>
18532       <member name="printing"
18533               value="1024"
18534               c:identifier="GTK_DEBUG_PRINTING"
18535               glib:nick="printing"/>
18536       <member name="builder"
18537               value="2048"
18538               c:identifier="GTK_DEBUG_BUILDER"
18539               glib:nick="builder"/>
18540     </bitfield>
18541     <enumeration name="DeleteType"
18542                  glib:type-name="GtkDeleteType"
18543                  glib:get-type="gtk_delete_type_get_type"
18544                  c:type="GtkDeleteType">
18545       <member name="chars"
18546               value="0"
18547               c:identifier="GTK_DELETE_CHARS"
18548               glib:nick="chars"/>
18549       <member name="word_ends"
18550               value="1"
18551               c:identifier="GTK_DELETE_WORD_ENDS"
18552               glib:nick="word-ends"/>
18553       <member name="words"
18554               value="2"
18555               c:identifier="GTK_DELETE_WORDS"
18556               glib:nick="words"/>
18557       <member name="display_lines"
18558               value="3"
18559               c:identifier="GTK_DELETE_DISPLAY_LINES"
18560               glib:nick="display-lines"/>
18561       <member name="display_line_ends"
18562               value="4"
18563               c:identifier="GTK_DELETE_DISPLAY_LINE_ENDS"
18564               glib:nick="display-line-ends"/>
18565       <member name="paragraph_ends"
18566               value="5"
18567               c:identifier="GTK_DELETE_PARAGRAPH_ENDS"
18568               glib:nick="paragraph-ends"/>
18569       <member name="paragraphs"
18570               value="6"
18571               c:identifier="GTK_DELETE_PARAGRAPHS"
18572               glib:nick="paragraphs"/>
18573       <member name="whitespace"
18574               value="7"
18575               c:identifier="GTK_DELETE_WHITESPACE"
18576               glib:nick="whitespace"/>
18577     </enumeration>
18578     <bitfield name="DestDefaults"
18579               glib:type-name="GtkDestDefaults"
18580               glib:get-type="gtk_dest_defaults_get_type"
18581               c:type="GtkDestDefaults">
18582       <member name="motion"
18583               value="1"
18584               c:identifier="GTK_DEST_DEFAULT_MOTION"
18585               glib:nick="motion"/>
18586       <member name="highlight"
18587               value="2"
18588               c:identifier="GTK_DEST_DEFAULT_HIGHLIGHT"
18589               glib:nick="highlight"/>
18590       <member name="drop"
18591               value="4"
18592               c:identifier="GTK_DEST_DEFAULT_DROP"
18593               glib:nick="drop"/>
18594       <member name="all"
18595               value="7"
18596               c:identifier="GTK_DEST_DEFAULT_ALL"
18597               glib:nick="all"/>
18598     </bitfield>
18599     <callback name="DestroyNotify" c:type="GtkDestroyNotify">
18600       <return-value transfer-ownership="none">
18601         <type name="none" c:type="void"/>
18602       </return-value>
18603       <parameters>
18604         <parameter name="data" transfer-ownership="none">
18605           <type name="any" c:type="gpointer"/>
18606         </parameter>
18607       </parameters>
18608     </callback>
18609     <class name="Dialog"
18610            c:type="GtkDialog"
18611            parent="Window"
18612            glib:type-name="GtkDialog"
18613            glib:get-type="gtk_dialog_get_type"
18614            glib:type-struct="DialogClass">
18615       <implements name="Atk.ImplementorIface"/>
18616       <implements name="Buildable"/>
18617       <constructor name="new" c:identifier="gtk_dialog_new">
18618         <return-value transfer-ownership="full">
18619           <type name="Dialog" c:type="GtkWidget*"/>
18620         </return-value>
18621       </constructor>
18622       <constructor name="new_with_buttons"
18623                    c:identifier="gtk_dialog_new_with_buttons"
18624                    introspectable="0">
18625         <doc xml:whitespace="preserve">Creates a new #GtkDialog with title @title (or %NULL for the default
18626 title; see gtk_window_set_title()) and transient parent @parent (or
18627 %NULL for none; see gtk_window_set_transient_for()). The @flags
18628 argument can be used to make the dialog modal (#GTK_DIALOG_MODAL)
18629 and/or to have it destroyed along with its transient parent
18630 (#GTK_DIALOG_DESTROY_WITH_PARENT). After @flags, button
18631 text/response ID pairs should be listed, with a %NULL pointer ending
18632 the list. Button text can be either a stock ID such as
18633 #GTK_STOCK_OK, or some arbitrary text. A response ID can be
18634 any positive number, or one of the values in the #GtkResponseType
18635 enumeration. If the user clicks one of these dialog buttons,
18636 #GtkDialog will emit the #GtkDialog::response signal with the corresponding
18637 response ID. If a #GtkDialog receives the #GtkWidget::delete-event signal, 
18638 it will emit ::response with a response ID of #GTK_RESPONSE_DELETE_EVENT.
18639 However, destroying a dialog does not emit the ::response signal;
18640 so be careful relying on ::response when using the 
18641 #GTK_DIALOG_DESTROY_WITH_PARENT flag. Buttons are from left to right,
18642 so the first button in the list will be the leftmost button in the dialog.
18643 Here's a simple example:
18644 |[
18645 GtkWidget *dialog = gtk_dialog_new_with_buttons ("My dialog",
18646 main_app_window,
18647 GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
18648 GTK_STOCK_OK,
18649 GTK_RESPONSE_ACCEPT,
18650 GTK_STOCK_CANCEL,
18651 GTK_RESPONSE_REJECT,
18652 NULL);
18653 ]|</doc>
18654         <return-value transfer-ownership="full">
18655           <doc xml:whitespace="preserve">a new #GtkDialog</doc>
18656           <type name="Dialog" c:type="GtkWidget*"/>
18657         </return-value>
18658         <parameters>
18659           <parameter name="title" transfer-ownership="none" allow-none="1">
18660             <doc xml:whitespace="preserve">Title of the dialog, or %NULL</doc>
18661             <type name="utf8" c:type="gchar*"/>
18662           </parameter>
18663           <parameter name="parent" transfer-ownership="none" allow-none="1">
18664             <doc xml:whitespace="preserve">Transient parent of the dialog, or %NULL</doc>
18665             <type name="Window" c:type="GtkWindow*"/>
18666           </parameter>
18667           <parameter name="flags" transfer-ownership="none">
18668             <doc xml:whitespace="preserve">from #GtkDialogFlags</doc>
18669             <type name="DialogFlags" c:type="GtkDialogFlags"/>
18670           </parameter>
18671           <parameter name="first_button_text"
18672                      transfer-ownership="none"
18673                      allow-none="1">
18674             <doc xml:whitespace="preserve">stock ID or text to go in first button, or %NULL</doc>
18675             <type name="utf8" c:type="gchar*"/>
18676           </parameter>
18677           <parameter transfer-ownership="none">
18678             <varargs>
18679             </varargs>
18680           </parameter>
18681         </parameters>
18682       </constructor>
18683       <method name="add_action_widget"
18684               c:identifier="gtk_dialog_add_action_widget">
18685         <doc xml:whitespace="preserve">Adds an activatable widget to the action area of a #GtkDialog,
18686 connecting a signal handler that will emit the #GtkDialog::response 
18687 signal on the dialog when the widget is activated. The widget is 
18688 appended to the end of the dialog's action area. If you want to add a
18689 non-activatable widget, simply pack it into the @action_area field 
18690 of the #GtkDialog struct.</doc>
18691         <return-value transfer-ownership="none">
18692           <type name="none" c:type="void"/>
18693         </return-value>
18694         <parameters>
18695           <parameter name="child" transfer-ownership="none">
18696             <doc xml:whitespace="preserve">an activatable widget</doc>
18697             <type name="Widget" c:type="GtkWidget*"/>
18698           </parameter>
18699           <parameter name="response_id" transfer-ownership="none">
18700             <doc xml:whitespace="preserve">response ID for @child</doc>
18701             <type name="int" c:type="gint"/>
18702           </parameter>
18703         </parameters>
18704       </method>
18705       <method name="add_button" c:identifier="gtk_dialog_add_button">
18706         <doc xml:whitespace="preserve">Adds a button with the given text (or a stock button, if @button_text is a
18707 stock ID) and sets things up so that clicking the button will emit the
18708 #GtkDialog::response signal with the given @response_id. The button is 
18709 appended to the end of the dialog's action area. The button widget is 
18710 returned, but usually you don't need it.</doc>
18711         <return-value transfer-ownership="full">
18712           <doc xml:whitespace="preserve">the button widget that was added</doc>
18713           <type name="Widget" c:type="GtkWidget*"/>
18714         </return-value>
18715         <parameters>
18716           <parameter name="button_text" transfer-ownership="none">
18717             <doc xml:whitespace="preserve">text of button, or stock ID</doc>
18718             <type name="utf8" c:type="gchar*"/>
18719           </parameter>
18720           <parameter name="response_id" transfer-ownership="none">
18721             <doc xml:whitespace="preserve">response ID for the button</doc>
18722             <type name="int" c:type="gint"/>
18723           </parameter>
18724         </parameters>
18725       </method>
18726       <method name="add_buttons"
18727               c:identifier="gtk_dialog_add_buttons"
18728               introspectable="0">
18729         <doc xml:whitespace="preserve">Adds more buttons, same as calling gtk_dialog_add_button()
18730 repeatedly.  The variable argument list should be %NULL-terminated
18731 as with gtk_dialog_new_with_buttons(). Each button must have both
18732 text and response ID.</doc>
18733         <return-value transfer-ownership="none">
18734           <type name="none" c:type="void"/>
18735         </return-value>
18736         <parameters>
18737           <parameter name="first_button_text" transfer-ownership="none">
18738             <doc xml:whitespace="preserve">button text or stock ID</doc>
18739             <type name="utf8" c:type="gchar*"/>
18740           </parameter>
18741           <parameter transfer-ownership="none">
18742             <varargs>
18743             </varargs>
18744           </parameter>
18745         </parameters>
18746       </method>
18747       <method name="set_response_sensitive"
18748               c:identifier="gtk_dialog_set_response_sensitive">
18749         <doc xml:whitespace="preserve">Calls &lt;literal&gt;gtk_widget_set_sensitive (widget, @setting)&lt;/literal&gt; 
18750 for each widget in the dialog's action area with the given @response_id.
18751 A convenient way to sensitize/desensitize dialog buttons.</doc>
18752         <return-value transfer-ownership="none">
18753           <type name="none" c:type="void"/>
18754         </return-value>
18755         <parameters>
18756           <parameter name="response_id" transfer-ownership="none">
18757             <doc xml:whitespace="preserve">a response ID</doc>
18758             <type name="int" c:type="gint"/>
18759           </parameter>
18760           <parameter name="setting" transfer-ownership="none">
18761             <doc xml:whitespace="preserve">%TRUE for sensitive</doc>
18762             <type name="boolean" c:type="gboolean"/>
18763           </parameter>
18764         </parameters>
18765       </method>
18766       <method name="set_default_response"
18767               c:identifier="gtk_dialog_set_default_response">
18768         <doc xml:whitespace="preserve">Sets the last widget in the dialog's action area with the given @response_id
18769 as the default widget for the dialog. Pressing "Enter" normally activates
18770 the default widget.</doc>
18771         <return-value transfer-ownership="none">
18772           <type name="none" c:type="void"/>
18773         </return-value>
18774         <parameters>
18775           <parameter name="response_id" transfer-ownership="none">
18776             <doc xml:whitespace="preserve">a response ID</doc>
18777             <type name="int" c:type="gint"/>
18778           </parameter>
18779         </parameters>
18780       </method>
18781       <method name="get_widget_for_response"
18782               c:identifier="gtk_dialog_get_widget_for_response"
18783               version="2.20">
18784         <doc xml:whitespace="preserve">Gets the widget button that uses the given response ID in the action area
18785 of a dialog.</doc>
18786         <return-value transfer-ownership="full">
18787           <doc xml:whitespace="preserve">the @widget button that uses the given @response_id, or %NULL.</doc>
18788           <type name="Widget" c:type="GtkWidget*"/>
18789         </return-value>
18790         <parameters>
18791           <parameter name="response_id" transfer-ownership="none">
18792             <doc xml:whitespace="preserve">the response ID used by the @dialog widget</doc>
18793             <type name="int" c:type="gint"/>
18794           </parameter>
18795         </parameters>
18796       </method>
18797       <method name="get_response_for_widget"
18798               c:identifier="gtk_dialog_get_response_for_widget"
18799               version="2.8">
18800         <doc xml:whitespace="preserve">Gets the response id of a widget in the action area
18801 of a dialog.
18802 if @widget doesn't have a response id set.</doc>
18803         <return-value transfer-ownership="none">
18804           <doc xml:whitespace="preserve">the response id of @widget, or %GTK_RESPONSE_NONE</doc>
18805           <type name="int" c:type="gint"/>
18806         </return-value>
18807         <parameters>
18808           <parameter name="widget" transfer-ownership="none">
18809             <doc xml:whitespace="preserve">a widget in the action area of @dialog</doc>
18810             <type name="Widget" c:type="GtkWidget*"/>
18811           </parameter>
18812         </parameters>
18813       </method>
18814       <method name="set_has_separator"
18815               c:identifier="gtk_dialog_set_has_separator">
18816         <doc xml:whitespace="preserve">Sets whether the dialog has a separator above the buttons.
18817 %TRUE by default.</doc>
18818         <return-value transfer-ownership="none">
18819           <type name="none" c:type="void"/>
18820         </return-value>
18821         <parameters>
18822           <parameter name="setting" transfer-ownership="none">
18823             <doc xml:whitespace="preserve">%TRUE to have a separator</doc>
18824             <type name="boolean" c:type="gboolean"/>
18825           </parameter>
18826         </parameters>
18827       </method>
18828       <method name="get_has_separator"
18829               c:identifier="gtk_dialog_get_has_separator">
18830         <doc xml:whitespace="preserve">Accessor for whether the dialog has a separator.</doc>
18831         <return-value transfer-ownership="none">
18832           <doc xml:whitespace="preserve">%TRUE if the dialog has a separator</doc>
18833           <type name="boolean" c:type="gboolean"/>
18834         </return-value>
18835       </method>
18836       <method name="set_alternative_button_order"
18837               c:identifier="gtk_dialog_set_alternative_button_order"
18838               version="2.6"
18839               introspectable="0">
18840         <doc xml:whitespace="preserve">Sets an alternative button order. If the 
18841 #GtkSettings:gtk-alternative-button-order setting is set to %TRUE, 
18842 the dialog buttons are reordered according to the order of the 
18843 response ids passed to this function.
18844 By default, GTK+ dialogs use the button order advocated by the Gnome 
18845 &lt;ulink url="http://developer.gnome.org/projects/gup/hig/2.0/"&gt;Human 
18846 Interface Guidelines&lt;/ulink&gt; with the affirmative button at the far 
18847 right, and the cancel button left of it. But the builtin GTK+ dialogs
18848 and #GtkMessageDialog&lt;!-- --&gt;s do provide an alternative button order,
18849 which is more suitable on some platforms, e.g. Windows.
18850 Use this function after adding all the buttons to your dialog, as the 
18851 following example shows:
18852 |[
18853 cancel_button = gtk_dialog_add_button (GTK_DIALOG (dialog),
18854 GTK_STOCK_CANCEL,
18855 GTK_RESPONSE_CANCEL);
18856 ok_button = gtk_dialog_add_button (GTK_DIALOG (dialog),
18857 GTK_STOCK_OK,
18858 GTK_RESPONSE_OK);
18859 gtk_widget_grab_default (ok_button);
18860 help_button = gtk_dialog_add_button (GTK_DIALOG (dialog),
18861 GTK_STOCK_HELP,
18862 GTK_RESPONSE_HELP);
18863 gtk_dialog_set_alternative_button_order (GTK_DIALOG (dialog),
18864 GTK_RESPONSE_OK,
18865 GTK_RESPONSE_CANCEL,
18866 GTK_RESPONSE_HELP,
18867 -1);
18868 ]|</doc>
18869         <return-value transfer-ownership="none">
18870           <type name="none" c:type="void"/>
18871         </return-value>
18872         <parameters>
18873           <parameter name="first_response_id" transfer-ownership="none">
18874             <doc xml:whitespace="preserve">a response id used by one @dialog's buttons</doc>
18875             <type name="int" c:type="gint"/>
18876           </parameter>
18877           <parameter transfer-ownership="none">
18878             <varargs>
18879             </varargs>
18880           </parameter>
18881         </parameters>
18882       </method>
18883       <method name="set_alternative_button_order_from_array"
18884               c:identifier="gtk_dialog_set_alternative_button_order_from_array"
18885               version="2.6">
18886         <doc xml:whitespace="preserve">Sets an alternative button order. If the 
18887 #GtkSettings:gtk-alternative-button-order setting is set to %TRUE, 
18888 the dialog buttons are reordered according to the order of the 
18889 response ids in @new_order.
18890 See gtk_dialog_set_alternative_button_order() for more information.
18891 This function is for use by language bindings.</doc>
18892         <return-value transfer-ownership="none">
18893           <type name="none" c:type="void"/>
18894         </return-value>
18895         <parameters>
18896           <parameter name="n_params" transfer-ownership="none">
18897             <doc xml:whitespace="preserve">the number of response ids in @new_order</doc>
18898             <type name="int" c:type="gint"/>
18899           </parameter>
18900           <parameter name="new_order"
18901                      direction="out"
18902                      caller-allocates="0"
18903                      transfer-ownership="full">
18904             <doc xml:whitespace="preserve">an array of response ids of @dialog's buttons</doc>
18905             <type name="int" c:type="gint*"/>
18906           </parameter>
18907         </parameters>
18908       </method>
18909       <method name="response" c:identifier="gtk_dialog_response">
18910         <doc xml:whitespace="preserve">Emits the #GtkDialog::response signal with the given response ID. 
18911 Used to indicate that the user has responded to the dialog in some way;
18912 typically either you or gtk_dialog_run() will be monitoring the
18913 ::response signal and take appropriate action.</doc>
18914         <return-value transfer-ownership="none">
18915           <type name="none" c:type="void"/>
18916         </return-value>
18917         <parameters>
18918           <parameter name="response_id" transfer-ownership="none">
18919             <doc xml:whitespace="preserve">response ID</doc>
18920             <type name="int" c:type="gint"/>
18921           </parameter>
18922         </parameters>
18923       </method>
18924       <method name="run" c:identifier="gtk_dialog_run">
18925         <doc xml:whitespace="preserve">Blocks in a recursive main loop until the @dialog either emits the
18926 #GtkDialog::response signal, or is destroyed. If the dialog is 
18927 destroyed during the call to gtk_dialog_run(), gtk_dialog_run() returns 
18928 #GTK_RESPONSE_NONE. Otherwise, it returns the response ID from the 
18929 ::response signal emission.
18930 Before entering the recursive main loop, gtk_dialog_run() calls
18931 gtk_widget_show() on the dialog for you. Note that you still
18932 need to show any children of the dialog yourself.
18933 During gtk_dialog_run(), the default behavior of #GtkWidget::delete-event 
18934 is disabled; if the dialog receives ::delete_event, it will not be
18935 destroyed as windows usually are, and gtk_dialog_run() will return
18936 #GTK_RESPONSE_DELETE_EVENT. Also, during gtk_dialog_run() the dialog 
18937 will be modal. You can force gtk_dialog_run() to return at any time by
18938 calling gtk_dialog_response() to emit the ::response signal. Destroying 
18939 the dialog during gtk_dialog_run() is a very bad idea, because your 
18940 post-run code won't know whether the dialog was destroyed or not.
18941 After gtk_dialog_run() returns, you are responsible for hiding or
18942 destroying the dialog if you wish to do so.
18943 Typical usage of this function might be:
18944 |[
18945 gint result = gtk_dialog_run (GTK_DIALOG (dialog));
18946 switch (result)
18947 {
18948 case GTK_RESPONSE_ACCEPT:
18949 do_application_specific_something ();
18950 break;
18951 default:
18952 do_nothing_since_dialog_was_cancelled ();
18953 break;
18954 }
18955 gtk_widget_destroy (dialog);
18956 ]|
18957 Note that even though the recursive main loop gives the effect of a
18958 modal dialog (it prevents the user from interacting with other 
18959 windows in the same window group while the dialog is run), callbacks 
18960 such as timeouts, IO channel watches, DND drops, etc, &lt;emphasis&gt;will&lt;/emphasis&gt; 
18961 be triggered during a gtk_dialog_run() call.</doc>
18962         <return-value transfer-ownership="none">
18963           <doc xml:whitespace="preserve">response ID</doc>
18964           <type name="int" c:type="gint"/>
18965         </return-value>
18966       </method>
18967       <method name="get_action_area"
18968               c:identifier="gtk_dialog_get_action_area"
18969               version="2.14">
18970         <doc xml:whitespace="preserve">Returns the action area of @dialog.</doc>
18971         <return-value transfer-ownership="none">
18972           <doc xml:whitespace="preserve">the action area.</doc>
18973           <type name="Widget" c:type="GtkWidget*"/>
18974         </return-value>
18975       </method>
18976       <method name="get_content_area"
18977               c:identifier="gtk_dialog_get_content_area"
18978               version="2.14">
18979         <doc xml:whitespace="preserve">Returns the content area of @dialog.</doc>
18980         <return-value transfer-ownership="none">
18981           <doc xml:whitespace="preserve">the content area #GtkVBox.</doc>
18982           <type name="Widget" c:type="GtkWidget*"/>
18983         </return-value>
18984       </method>
18985       <property name="has-separator" writable="1" transfer-ownership="none">
18986         <doc xml:whitespace="preserve">When %TRUE, the dialog has a separator bar above its buttons.</doc>
18987         <type name="boolean" c:type="gboolean"/>
18988       </property>
18989       <field name="window">
18990         <type name="Window" c:type="GtkWindow"/>
18991       </field>
18992       <field name="vbox">
18993         <type name="Widget" c:type="GtkWidget*"/>
18994       </field>
18995       <field name="action_area">
18996         <type name="Widget" c:type="GtkWidget*"/>
18997       </field>
18998       <field name="separator">
18999         <type name="Widget" c:type="GtkWidget*"/>
19000       </field>
19001       <glib:signal name="close">
19002         <doc xml:whitespace="preserve">The ::close signal is a 
19003 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
19004 which gets emitted when the user uses a keybinding to close
19005 the dialog.
19006 The default binding for this signal is the Escape key.</doc>
19007         <return-value transfer-ownership="full">
19008           <type name="none" c:type="void"/>
19009         </return-value>
19010       </glib:signal>
19011       <glib:signal name="response">
19012         <doc xml:whitespace="preserve">Emitted when an action widget is clicked, the dialog receives a 
19013 delete event, or the application programmer calls gtk_dialog_response(). 
19014 On a delete event, the response ID is #GTK_RESPONSE_DELETE_EVENT. 
19015 Otherwise, it depends on which action widget was clicked.</doc>
19016         <return-value transfer-ownership="full">
19017           <type name="none" c:type="void"/>
19018         </return-value>
19019         <parameters>
19020           <parameter name="response_id" transfer-ownership="none">
19021             <doc xml:whitespace="preserve">the response ID</doc>
19022             <type name="int" c:type="gint"/>
19023           </parameter>
19024         </parameters>
19025       </glib:signal>
19026     </class>
19027     <record name="DialogClass"
19028             c:type="GtkDialogClass"
19029             glib:is-gtype-struct-for="Dialog">
19030       <field name="parent_class">
19031         <type name="WindowClass" c:type="GtkWindowClass"/>
19032       </field>
19033       <field name="response">
19034         <callback name="response" c:type="response">
19035           <return-value transfer-ownership="none">
19036             <type name="none" c:type="void"/>
19037           </return-value>
19038           <parameters>
19039             <parameter name="dialog" transfer-ownership="none">
19040               <type name="Dialog" c:type="GtkDialog*"/>
19041             </parameter>
19042             <parameter name="response_id" transfer-ownership="none">
19043               <type name="int" c:type="gint"/>
19044             </parameter>
19045           </parameters>
19046         </callback>
19047       </field>
19048       <field name="close">
19049         <callback name="close" c:type="close">
19050           <return-value transfer-ownership="none">
19051             <type name="none" c:type="void"/>
19052           </return-value>
19053           <parameters>
19054             <parameter name="dialog" transfer-ownership="none">
19055               <type name="Dialog" c:type="GtkDialog*"/>
19056             </parameter>
19057           </parameters>
19058         </callback>
19059       </field>
19060       <field name="gtk_reserved1">
19061         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
19062           <return-value transfer-ownership="none">
19063             <type name="none" c:type="void"/>
19064           </return-value>
19065         </callback>
19066       </field>
19067       <field name="gtk_reserved2">
19068         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
19069           <return-value transfer-ownership="none">
19070             <type name="none" c:type="void"/>
19071           </return-value>
19072         </callback>
19073       </field>
19074       <field name="gtk_reserved3">
19075         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
19076           <return-value transfer-ownership="none">
19077             <type name="none" c:type="void"/>
19078           </return-value>
19079         </callback>
19080       </field>
19081       <field name="gtk_reserved4">
19082         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
19083           <return-value transfer-ownership="none">
19084             <type name="none" c:type="void"/>
19085           </return-value>
19086         </callback>
19087       </field>
19088     </record>
19089     <bitfield name="DialogFlags"
19090               glib:type-name="GtkDialogFlags"
19091               glib:get-type="gtk_dialog_flags_get_type"
19092               c:type="GtkDialogFlags">
19093       <member name="modal"
19094               value="1"
19095               c:identifier="GTK_DIALOG_MODAL"
19096               glib:nick="modal"/>
19097       <member name="destroy_with_parent"
19098               value="2"
19099               c:identifier="GTK_DIALOG_DESTROY_WITH_PARENT"
19100               glib:nick="destroy-with-parent"/>
19101       <member name="no_separator"
19102               value="4"
19103               c:identifier="GTK_DIALOG_NO_SEPARATOR"
19104               glib:nick="no-separator"/>
19105     </bitfield>
19106     <enumeration name="DirectionType"
19107                  glib:type-name="GtkDirectionType"
19108                  glib:get-type="gtk_direction_type_get_type"
19109                  c:type="GtkDirectionType">
19110       <member name="tab_forward"
19111               value="0"
19112               c:identifier="GTK_DIR_TAB_FORWARD"
19113               glib:nick="tab-forward"/>
19114       <member name="tab_backward"
19115               value="1"
19116               c:identifier="GTK_DIR_TAB_BACKWARD"
19117               glib:nick="tab-backward"/>
19118       <member name="up" value="2" c:identifier="GTK_DIR_UP" glib:nick="up"/>
19119       <member name="down"
19120               value="3"
19121               c:identifier="GTK_DIR_DOWN"
19122               glib:nick="down"/>
19123       <member name="left"
19124               value="4"
19125               c:identifier="GTK_DIR_LEFT"
19126               glib:nick="left"/>
19127       <member name="right"
19128               value="5"
19129               c:identifier="GTK_DIR_RIGHT"
19130               glib:nick="right"/>
19131     </enumeration>
19132     <union name="DitherInfo" c:type="GtkDitherInfo">
19133       <field name="s" writable="1">
19134         <array zero-terminated="0" c:type="gushort" fixed-size="2">
19135           <type name="ushort"/>
19136         </array>
19137       </field>
19138       <field name="c" writable="1">
19139         <array zero-terminated="0" c:type="guchar" fixed-size="4">
19140           <type name="uint8"/>
19141         </array>
19142       </field>
19143     </union>
19144     <enumeration name="DragResult"
19145                  glib:type-name="GtkDragResult"
19146                  glib:get-type="gtk_drag_result_get_type"
19147                  c:type="GtkDragResult">
19148       <member name="success"
19149               value="0"
19150               c:identifier="GTK_DRAG_RESULT_SUCCESS"
19151               glib:nick="success"/>
19152       <member name="no_target"
19153               value="1"
19154               c:identifier="GTK_DRAG_RESULT_NO_TARGET"
19155               glib:nick="no-target"/>
19156       <member name="user_cancelled"
19157               value="2"
19158               c:identifier="GTK_DRAG_RESULT_USER_CANCELLED"
19159               glib:nick="user-cancelled"/>
19160       <member name="timeout_expired"
19161               value="3"
19162               c:identifier="GTK_DRAG_RESULT_TIMEOUT_EXPIRED"
19163               glib:nick="timeout-expired"/>
19164       <member name="grab_broken"
19165               value="4"
19166               c:identifier="GTK_DRAG_RESULT_GRAB_BROKEN"
19167               glib:nick="grab-broken"/>
19168       <member name="error"
19169               value="5"
19170               c:identifier="GTK_DRAG_RESULT_ERROR"
19171               glib:nick="error"/>
19172     </enumeration>
19173     <class name="DrawingArea"
19174            c:type="GtkDrawingArea"
19175            parent="Widget"
19176            glib:type-name="GtkDrawingArea"
19177            glib:get-type="gtk_drawing_area_get_type"
19178            glib:type-struct="DrawingAreaClass">
19179       <implements name="Atk.ImplementorIface"/>
19180       <implements name="Buildable"/>
19181       <constructor name="new" c:identifier="gtk_drawing_area_new">
19182         <return-value transfer-ownership="full">
19183           <type name="DrawingArea" c:type="GtkWidget*"/>
19184         </return-value>
19185       </constructor>
19186       <method name="size" c:identifier="gtk_drawing_area_size">
19187         <return-value transfer-ownership="none">
19188           <type name="none" c:type="void"/>
19189         </return-value>
19190         <parameters>
19191           <parameter name="width" transfer-ownership="none">
19192             <type name="int" c:type="gint"/>
19193           </parameter>
19194           <parameter name="height" transfer-ownership="none">
19195             <type name="int" c:type="gint"/>
19196           </parameter>
19197         </parameters>
19198       </method>
19199       <field name="widget">
19200         <type name="Widget" c:type="GtkWidget"/>
19201       </field>
19202       <field name="draw_data">
19203         <type name="any" c:type="gpointer"/>
19204       </field>
19205     </class>
19206     <record name="DrawingAreaClass"
19207             c:type="GtkDrawingAreaClass"
19208             glib:is-gtype-struct-for="DrawingArea">
19209       <field name="parent_class">
19210         <type name="WidgetClass" c:type="GtkWidgetClass"/>
19211       </field>
19212       <field name="gtk_reserved1">
19213         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
19214           <return-value transfer-ownership="none">
19215             <type name="none" c:type="void"/>
19216           </return-value>
19217         </callback>
19218       </field>
19219       <field name="gtk_reserved2">
19220         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
19221           <return-value transfer-ownership="none">
19222             <type name="none" c:type="void"/>
19223           </return-value>
19224         </callback>
19225       </field>
19226       <field name="gtk_reserved3">
19227         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
19228           <return-value transfer-ownership="none">
19229             <type name="none" c:type="void"/>
19230           </return-value>
19231         </callback>
19232       </field>
19233       <field name="gtk_reserved4">
19234         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
19235           <return-value transfer-ownership="none">
19236             <type name="none" c:type="void"/>
19237           </return-value>
19238         </callback>
19239       </field>
19240     </record>
19241     <interface name="Editable"
19242                c:type="GtkEditable"
19243                glib:type-name="GtkEditable"
19244                glib:get-type="gtk_editable_get_type"
19245                glib:type-struct="EditableClass">
19246       <virtual-method name="do_insert_text">
19247         <return-value transfer-ownership="none">
19248           <type name="none" c:type="void"/>
19249         </return-value>
19250         <parameters>
19251           <parameter name="text" transfer-ownership="none">
19252             <type name="utf8" c:type="gchar*"/>
19253           </parameter>
19254           <parameter name="length" transfer-ownership="none">
19255             <type name="int" c:type="gint"/>
19256           </parameter>
19257           <parameter name="position"
19258                      direction="out"
19259                      caller-allocates="0"
19260                      transfer-ownership="full">
19261             <type name="int" c:type="gint*"/>
19262           </parameter>
19263         </parameters>
19264       </virtual-method>
19265       <virtual-method name="do_delete_text">
19266         <return-value transfer-ownership="none">
19267           <type name="none" c:type="void"/>
19268         </return-value>
19269         <parameters>
19270           <parameter name="start_pos" transfer-ownership="none">
19271             <type name="int" c:type="gint"/>
19272           </parameter>
19273           <parameter name="end_pos" transfer-ownership="none">
19274             <type name="int" c:type="gint"/>
19275           </parameter>
19276         </parameters>
19277       </virtual-method>
19278       <virtual-method name="get_chars" invoker="get_chars">
19279         <doc xml:whitespace="preserve">Retrieves a sequence of characters. The characters that are retrieved 
19280 are those characters at positions from @start_pos up to, but not 
19281 including @end_pos. If @end_pos is negative, then the the characters 
19282 retrieved are those characters from @start_pos to the end of the text.
19283 Note that positions are specified in characters, not bytes.
19284 string. This string is allocated by the #GtkEditable
19285 implementation and should be freed by the caller.</doc>
19286         <return-value transfer-ownership="full">
19287           <doc xml:whitespace="preserve">a pointer to the contents of the widget as a</doc>
19288           <type name="utf8" c:type="gchar*"/>
19289         </return-value>
19290         <parameters>
19291           <parameter name="start_pos" transfer-ownership="none">
19292             <doc xml:whitespace="preserve">start of text</doc>
19293             <type name="int" c:type="gint"/>
19294           </parameter>
19295           <parameter name="end_pos" transfer-ownership="none">
19296             <doc xml:whitespace="preserve">end of text</doc>
19297             <type name="int" c:type="gint"/>
19298           </parameter>
19299         </parameters>
19300       </virtual-method>
19301       <virtual-method name="set_selection_bounds">
19302         <return-value transfer-ownership="none">
19303           <type name="none" c:type="void"/>
19304         </return-value>
19305         <parameters>
19306           <parameter name="start_pos" transfer-ownership="none">
19307             <type name="int" c:type="gint"/>
19308           </parameter>
19309           <parameter name="end_pos" transfer-ownership="none">
19310             <type name="int" c:type="gint"/>
19311           </parameter>
19312         </parameters>
19313       </virtual-method>
19314       <virtual-method name="get_selection_bounds"
19315                       invoker="get_selection_bounds">
19316         <doc xml:whitespace="preserve">Retrieves the selection bound of the editable. start_pos will be filled
19317 with the start of the selection and @end_pos with end. If no text was
19318 selected both will be identical and %FALSE will be returned.
19319 Note that positions are specified in characters, not bytes.</doc>
19320         <return-value transfer-ownership="none">
19321           <doc xml:whitespace="preserve">%TRUE if an area is selected, %FALSE otherwise</doc>
19322           <type name="boolean" c:type="gboolean"/>
19323         </return-value>
19324         <parameters>
19325           <parameter name="start_pos"
19326                      direction="out"
19327                      caller-allocates="0"
19328                      transfer-ownership="full"
19329                      allow-none="1">
19330             <doc xml:whitespace="preserve">location to store the starting position, or %NULL</doc>
19331             <type name="int" c:type="gint*"/>
19332           </parameter>
19333           <parameter name="end_pos"
19334                      direction="out"
19335                      caller-allocates="0"
19336                      transfer-ownership="full"
19337                      allow-none="1">
19338             <doc xml:whitespace="preserve">location to store the end position, or %NULL</doc>
19339             <type name="int" c:type="gint*"/>
19340           </parameter>
19341         </parameters>
19342       </virtual-method>
19343       <virtual-method name="set_position" invoker="set_position">
19344         <doc xml:whitespace="preserve">Sets the cursor position in the editable to the given value.
19345 The cursor is displayed before the character with the given (base 0) 
19346 index in the contents of the editable. The value must be less than or 
19347 equal to the number of characters in the editable. A value of -1 
19348 indicates that the position should be set after the last character 
19349 of the editable. Note that @position is in characters, not in bytes.</doc>
19350         <return-value transfer-ownership="none">
19351           <type name="none" c:type="void"/>
19352         </return-value>
19353         <parameters>
19354           <parameter name="position" transfer-ownership="none">
19355             <doc xml:whitespace="preserve">the position of the cursor</doc>
19356             <type name="int" c:type="gint"/>
19357           </parameter>
19358         </parameters>
19359       </virtual-method>
19360       <virtual-method name="get_position" invoker="get_position">
19361         <doc xml:whitespace="preserve">Retrieves the current position of the cursor relative to the start
19362 of the content of the editable. 
19363 Note that this position is in characters, not in bytes.</doc>
19364         <return-value transfer-ownership="none">
19365           <doc xml:whitespace="preserve">the cursor position</doc>
19366           <type name="int" c:type="gint"/>
19367         </return-value>
19368       </virtual-method>
19369       <method name="select_region" c:identifier="gtk_editable_select_region">
19370         <doc xml:whitespace="preserve">Selects a region of text. The characters that are selected are 
19371 those characters at positions from @start_pos up to, but not 
19372 including @end_pos. If @end_pos is negative, then the the 
19373 characters selected are those characters from @start_pos to 
19374 the end of the text.
19375 Note that positions are specified in characters, not bytes.</doc>
19376         <return-value transfer-ownership="none">
19377           <type name="none" c:type="void"/>
19378         </return-value>
19379         <parameters>
19380           <parameter name="start_pos" transfer-ownership="none">
19381             <doc xml:whitespace="preserve">start of region</doc>
19382             <type name="int" c:type="gint"/>
19383           </parameter>
19384           <parameter name="end_pos" transfer-ownership="none">
19385             <doc xml:whitespace="preserve">end of region</doc>
19386             <type name="int" c:type="gint"/>
19387           </parameter>
19388         </parameters>
19389       </method>
19390       <method name="get_selection_bounds"
19391               c:identifier="gtk_editable_get_selection_bounds">
19392         <doc xml:whitespace="preserve">Retrieves the selection bound of the editable. start_pos will be filled
19393 with the start of the selection and @end_pos with end. If no text was
19394 selected both will be identical and %FALSE will be returned.
19395 Note that positions are specified in characters, not bytes.</doc>
19396         <return-value transfer-ownership="none">
19397           <doc xml:whitespace="preserve">%TRUE if an area is selected, %FALSE otherwise</doc>
19398           <type name="boolean" c:type="gboolean"/>
19399         </return-value>
19400         <parameters>
19401           <parameter name="start_pos"
19402                      direction="out"
19403                      caller-allocates="0"
19404                      transfer-ownership="full"
19405                      allow-none="1">
19406             <doc xml:whitespace="preserve">location to store the starting position, or %NULL</doc>
19407             <type name="int" c:type="gint*"/>
19408           </parameter>
19409           <parameter name="end_pos"
19410                      direction="out"
19411                      caller-allocates="0"
19412                      transfer-ownership="full"
19413                      allow-none="1">
19414             <doc xml:whitespace="preserve">location to store the end position, or %NULL</doc>
19415             <type name="int" c:type="gint*"/>
19416           </parameter>
19417         </parameters>
19418       </method>
19419       <method name="insert_text" c:identifier="gtk_editable_insert_text">
19420         <doc xml:whitespace="preserve">Inserts @new_text_length bytes of @new_text into the contents of the
19421 widget, at position @position.
19422 Note that the position is in characters, not in bytes. 
19423 The function updates @position to point after the newly inserted text.</doc>
19424         <return-value transfer-ownership="none">
19425           <type name="none" c:type="void"/>
19426         </return-value>
19427         <parameters>
19428           <parameter name="new_text" transfer-ownership="none">
19429             <doc xml:whitespace="preserve">the text to append</doc>
19430             <type name="utf8" c:type="gchar*"/>
19431           </parameter>
19432           <parameter name="new_text_length" transfer-ownership="none">
19433             <doc xml:whitespace="preserve">the length of the text in bytes, or -1</doc>
19434             <type name="int" c:type="gint"/>
19435           </parameter>
19436           <parameter name="position"
19437                      direction="inout"
19438                      caller-allocates="0"
19439                      transfer-ownership="full">
19440             <doc xml:whitespace="preserve">location of the position text will be inserted at</doc>
19441             <type name="int" c:type="gint*"/>
19442           </parameter>
19443         </parameters>
19444       </method>
19445       <method name="delete_text" c:identifier="gtk_editable_delete_text">
19446         <doc xml:whitespace="preserve">Deletes a sequence of characters. The characters that are deleted are 
19447 those characters at positions from @start_pos up to, but not including 
19448 are those from @start_pos to the end of the text.
19449 Note that the positions are specified in characters, not bytes.</doc>
19450         <return-value transfer-ownership="none">
19451           <type name="none" c:type="void"/>
19452         </return-value>
19453         <parameters>
19454           <parameter name="start_pos" transfer-ownership="none">
19455             <doc xml:whitespace="preserve">start position</doc>
19456             <type name="int" c:type="gint"/>
19457           </parameter>
19458           <parameter name="end_pos" transfer-ownership="none">
19459             <doc xml:whitespace="preserve">end position</doc>
19460             <type name="int" c:type="gint"/>
19461           </parameter>
19462         </parameters>
19463       </method>
19464       <method name="get_chars" c:identifier="gtk_editable_get_chars">
19465         <doc xml:whitespace="preserve">Retrieves a sequence of characters. The characters that are retrieved 
19466 are those characters at positions from @start_pos up to, but not 
19467 including @end_pos. If @end_pos is negative, then the the characters 
19468 retrieved are those characters from @start_pos to the end of the text.
19469 Note that positions are specified in characters, not bytes.
19470 string. This string is allocated by the #GtkEditable
19471 implementation and should be freed by the caller.</doc>
19472         <return-value transfer-ownership="full">
19473           <doc xml:whitespace="preserve">a pointer to the contents of the widget as a</doc>
19474           <type name="utf8" c:type="gchar*"/>
19475         </return-value>
19476         <parameters>
19477           <parameter name="start_pos" transfer-ownership="none">
19478             <doc xml:whitespace="preserve">start of text</doc>
19479             <type name="int" c:type="gint"/>
19480           </parameter>
19481           <parameter name="end_pos" transfer-ownership="none">
19482             <doc xml:whitespace="preserve">end of text</doc>
19483             <type name="int" c:type="gint"/>
19484           </parameter>
19485         </parameters>
19486       </method>
19487       <method name="cut_clipboard" c:identifier="gtk_editable_cut_clipboard">
19488         <doc xml:whitespace="preserve">Removes the contents of the currently selected content in the editable and
19489 puts it on the clipboard.</doc>
19490         <return-value transfer-ownership="none">
19491           <type name="none" c:type="void"/>
19492         </return-value>
19493       </method>
19494       <method name="copy_clipboard" c:identifier="gtk_editable_copy_clipboard">
19495         <doc xml:whitespace="preserve">Copies the contents of the currently selected content in the editable and
19496 puts it on the clipboard.</doc>
19497         <return-value transfer-ownership="none">
19498           <type name="none" c:type="void"/>
19499         </return-value>
19500       </method>
19501       <method name="paste_clipboard"
19502               c:identifier="gtk_editable_paste_clipboard">
19503         <doc xml:whitespace="preserve">Pastes the content of the clipboard to the current position of the
19504 cursor in the editable.</doc>
19505         <return-value transfer-ownership="none">
19506           <type name="none" c:type="void"/>
19507         </return-value>
19508       </method>
19509       <method name="delete_selection"
19510               c:identifier="gtk_editable_delete_selection">
19511         <doc xml:whitespace="preserve">Deletes the currently selected text of the editable.
19512 This call doesn't do anything if there is no selected text.</doc>
19513         <return-value transfer-ownership="none">
19514           <type name="none" c:type="void"/>
19515         </return-value>
19516       </method>
19517       <method name="set_position" c:identifier="gtk_editable_set_position">
19518         <doc xml:whitespace="preserve">Sets the cursor position in the editable to the given value.
19519 The cursor is displayed before the character with the given (base 0) 
19520 index in the contents of the editable. The value must be less than or 
19521 equal to the number of characters in the editable. A value of -1 
19522 indicates that the position should be set after the last character 
19523 of the editable. Note that @position is in characters, not in bytes.</doc>
19524         <return-value transfer-ownership="none">
19525           <type name="none" c:type="void"/>
19526         </return-value>
19527         <parameters>
19528           <parameter name="position" transfer-ownership="none">
19529             <doc xml:whitespace="preserve">the position of the cursor</doc>
19530             <type name="int" c:type="gint"/>
19531           </parameter>
19532         </parameters>
19533       </method>
19534       <method name="get_position" c:identifier="gtk_editable_get_position">
19535         <doc xml:whitespace="preserve">Retrieves the current position of the cursor relative to the start
19536 of the content of the editable. 
19537 Note that this position is in characters, not in bytes.</doc>
19538         <return-value transfer-ownership="none">
19539           <doc xml:whitespace="preserve">the cursor position</doc>
19540           <type name="int" c:type="gint"/>
19541         </return-value>
19542       </method>
19543       <method name="set_editable" c:identifier="gtk_editable_set_editable">
19544         <doc xml:whitespace="preserve">Determines if the user can edit the text in the editable
19545 widget or not.</doc>
19546         <return-value transfer-ownership="none">
19547           <type name="none" c:type="void"/>
19548         </return-value>
19549         <parameters>
19550           <parameter name="is_editable" transfer-ownership="none">
19551             <doc xml:whitespace="preserve">%TRUE if the user is allowed to edit the text in the widget</doc>
19552             <type name="boolean" c:type="gboolean"/>
19553           </parameter>
19554         </parameters>
19555       </method>
19556       <method name="get_editable" c:identifier="gtk_editable_get_editable">
19557         <doc xml:whitespace="preserve">Retrieves whether @editable is editable. See
19558 gtk_editable_set_editable().</doc>
19559         <return-value transfer-ownership="none">
19560           <doc xml:whitespace="preserve">%TRUE if @editable is editable.</doc>
19561           <type name="boolean" c:type="gboolean"/>
19562         </return-value>
19563       </method>
19564       <glib:signal name="changed">
19565         <doc xml:whitespace="preserve">The ::changed signal is emitted at the end of a single
19566 user-visible operation on the contents of the #GtkEditable.
19567 E.g., a paste operation that replaces the contents of the
19568 selection will cause only one signal emission (even though it
19569 is implemented by first deleting the selection, then inserting
19570 the new content, and may cause multiple ::notify::text signals
19571 to be emitted).</doc>
19572         <return-value transfer-ownership="full">
19573           <type name="none" c:type="void"/>
19574         </return-value>
19575       </glib:signal>
19576       <glib:signal name="delete-text">
19577         <doc xml:whitespace="preserve">This signal is emitted when text is deleted from
19578 the widget by the user. The default handler for
19579 this signal will normally be responsible for deleting
19580 the text, so by connecting to this signal and then
19581 stopping the signal with g_signal_stop_emission(), it
19582 is possible to modify the range of deleted text, or
19583 prevent it from being deleted entirely. The @start_pos
19584 and @end_pos parameters are interpreted as for
19585 gtk_editable_delete_text().</doc>
19586         <return-value transfer-ownership="full">
19587           <type name="none" c:type="void"/>
19588         </return-value>
19589         <parameters>
19590           <parameter name="start_pos" transfer-ownership="none">
19591             <doc xml:whitespace="preserve">the starting position</doc>
19592             <type name="int" c:type="gint"/>
19593           </parameter>
19594           <parameter name="end_pos" transfer-ownership="none">
19595             <doc xml:whitespace="preserve">the end position</doc>
19596             <type name="int" c:type="gint"/>
19597           </parameter>
19598         </parameters>
19599       </glib:signal>
19600       <glib:signal name="insert-text">
19601         <doc xml:whitespace="preserve">This signal is emitted when text is inserted into
19602 the widget by the user. The default handler for
19603 this signal will normally be responsible for inserting
19604 the text, so by connecting to this signal and then
19605 stopping the signal with g_signal_stop_emission(), it
19606 is possible to modify the inserted text, or prevent
19607 it from being inserted entirely.</doc>
19608         <return-value transfer-ownership="full">
19609           <type name="none" c:type="void"/>
19610         </return-value>
19611         <parameters>
19612           <parameter name="new_text" transfer-ownership="none">
19613             <doc xml:whitespace="preserve">the new text to insert</doc>
19614             <type name="utf8" c:type="gchararray"/>
19615           </parameter>
19616           <parameter name="new_text_length" transfer-ownership="none">
19617             <doc xml:whitespace="preserve">the length of the new text, in bytes, or -1 if new_text is nul-terminated</doc>
19618             <type name="int" c:type="gint"/>
19619           </parameter>
19620           <parameter name="position" transfer-ownership="none">
19621             <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>
19622             <type name="any" c:type="gpointer"/>
19623           </parameter>
19624         </parameters>
19625       </glib:signal>
19626     </interface>
19627     <record name="EditableClass"
19628             c:type="GtkEditableClass"
19629             glib:is-gtype-struct-for="Editable">
19630       <field name="base_iface">
19631         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
19632       </field>
19633       <field name="insert_text">
19634         <callback name="insert_text" c:type="insert_text">
19635           <return-value transfer-ownership="none">
19636             <type name="none" c:type="void"/>
19637           </return-value>
19638           <parameters>
19639             <parameter name="editable" transfer-ownership="none">
19640               <type name="Editable" c:type="GtkEditable*"/>
19641             </parameter>
19642             <parameter name="text" transfer-ownership="none">
19643               <type name="utf8" c:type="gchar*"/>
19644             </parameter>
19645             <parameter name="length" transfer-ownership="none">
19646               <type name="int" c:type="gint"/>
19647             </parameter>
19648             <parameter name="position"
19649                        direction="out"
19650                        caller-allocates="0"
19651                        transfer-ownership="full">
19652               <type name="int" c:type="gint*"/>
19653             </parameter>
19654           </parameters>
19655         </callback>
19656       </field>
19657       <field name="delete_text">
19658         <callback name="delete_text" c:type="delete_text">
19659           <return-value transfer-ownership="none">
19660             <type name="none" c:type="void"/>
19661           </return-value>
19662           <parameters>
19663             <parameter name="editable" transfer-ownership="none">
19664               <type name="Editable" c:type="GtkEditable*"/>
19665             </parameter>
19666             <parameter name="start_pos" transfer-ownership="none">
19667               <type name="int" c:type="gint"/>
19668             </parameter>
19669             <parameter name="end_pos" transfer-ownership="none">
19670               <type name="int" c:type="gint"/>
19671             </parameter>
19672           </parameters>
19673         </callback>
19674       </field>
19675       <field name="changed">
19676         <callback name="changed" c:type="changed">
19677           <return-value transfer-ownership="none">
19678             <type name="none" c:type="void"/>
19679           </return-value>
19680           <parameters>
19681             <parameter name="editable" transfer-ownership="none">
19682               <type name="Editable" c:type="GtkEditable*"/>
19683             </parameter>
19684           </parameters>
19685         </callback>
19686       </field>
19687       <field name="do_insert_text">
19688         <callback name="do_insert_text" c:type="do_insert_text">
19689           <return-value transfer-ownership="none">
19690             <type name="none" c:type="void"/>
19691           </return-value>
19692           <parameters>
19693             <parameter name="editable" transfer-ownership="none">
19694               <type name="Editable" c:type="GtkEditable*"/>
19695             </parameter>
19696             <parameter name="text" transfer-ownership="none">
19697               <type name="utf8" c:type="gchar*"/>
19698             </parameter>
19699             <parameter name="length" transfer-ownership="none">
19700               <type name="int" c:type="gint"/>
19701             </parameter>
19702             <parameter name="position"
19703                        direction="out"
19704                        caller-allocates="0"
19705                        transfer-ownership="full">
19706               <type name="int" c:type="gint*"/>
19707             </parameter>
19708           </parameters>
19709         </callback>
19710       </field>
19711       <field name="do_delete_text">
19712         <callback name="do_delete_text" c:type="do_delete_text">
19713           <return-value transfer-ownership="none">
19714             <type name="none" c:type="void"/>
19715           </return-value>
19716           <parameters>
19717             <parameter name="editable" transfer-ownership="none">
19718               <type name="Editable" c:type="GtkEditable*"/>
19719             </parameter>
19720             <parameter name="start_pos" transfer-ownership="none">
19721               <type name="int" c:type="gint"/>
19722             </parameter>
19723             <parameter name="end_pos" transfer-ownership="none">
19724               <type name="int" c:type="gint"/>
19725             </parameter>
19726           </parameters>
19727         </callback>
19728       </field>
19729       <field name="get_chars">
19730         <callback name="get_chars" c:type="get_chars">
19731           <return-value transfer-ownership="full">
19732             <doc xml:whitespace="preserve">a pointer to the contents of the widget as a</doc>
19733             <type name="utf8" c:type="gchar*"/>
19734           </return-value>
19735           <parameters>
19736             <parameter name="editable" transfer-ownership="none">
19737               <type name="Editable" c:type="GtkEditable*"/>
19738             </parameter>
19739             <parameter name="start_pos" transfer-ownership="none">
19740               <doc xml:whitespace="preserve">start of text</doc>
19741               <type name="int" c:type="gint"/>
19742             </parameter>
19743             <parameter name="end_pos" transfer-ownership="none">
19744               <doc xml:whitespace="preserve">end of text</doc>
19745               <type name="int" c:type="gint"/>
19746             </parameter>
19747           </parameters>
19748         </callback>
19749       </field>
19750       <field name="set_selection_bounds">
19751         <callback name="set_selection_bounds" c:type="set_selection_bounds">
19752           <return-value transfer-ownership="none">
19753             <type name="none" c:type="void"/>
19754           </return-value>
19755           <parameters>
19756             <parameter name="editable" transfer-ownership="none">
19757               <type name="Editable" c:type="GtkEditable*"/>
19758             </parameter>
19759             <parameter name="start_pos" transfer-ownership="none">
19760               <type name="int" c:type="gint"/>
19761             </parameter>
19762             <parameter name="end_pos" transfer-ownership="none">
19763               <type name="int" c:type="gint"/>
19764             </parameter>
19765           </parameters>
19766         </callback>
19767       </field>
19768       <field name="get_selection_bounds">
19769         <callback name="get_selection_bounds" c:type="get_selection_bounds">
19770           <return-value transfer-ownership="none">
19771             <doc xml:whitespace="preserve">%TRUE if an area is selected, %FALSE otherwise</doc>
19772             <type name="boolean" c:type="gboolean"/>
19773           </return-value>
19774           <parameters>
19775             <parameter name="editable" transfer-ownership="none">
19776               <type name="Editable" c:type="GtkEditable*"/>
19777             </parameter>
19778             <parameter name="start_pos"
19779                        direction="out"
19780                        caller-allocates="0"
19781                        transfer-ownership="full"
19782                        allow-none="1">
19783               <doc xml:whitespace="preserve">location to store the starting position, or %NULL</doc>
19784               <type name="int" c:type="gint*"/>
19785             </parameter>
19786             <parameter name="end_pos"
19787                        direction="out"
19788                        caller-allocates="0"
19789                        transfer-ownership="full"
19790                        allow-none="1">
19791               <doc xml:whitespace="preserve">location to store the end position, or %NULL</doc>
19792               <type name="int" c:type="gint*"/>
19793             </parameter>
19794           </parameters>
19795         </callback>
19796       </field>
19797       <field name="set_position">
19798         <callback name="set_position" c:type="set_position">
19799           <return-value transfer-ownership="none">
19800             <type name="none" c:type="void"/>
19801           </return-value>
19802           <parameters>
19803             <parameter name="editable" transfer-ownership="none">
19804               <type name="Editable" c:type="GtkEditable*"/>
19805             </parameter>
19806             <parameter name="position" transfer-ownership="none">
19807               <doc xml:whitespace="preserve">the position of the cursor</doc>
19808               <type name="int" c:type="gint"/>
19809             </parameter>
19810           </parameters>
19811         </callback>
19812       </field>
19813       <field name="get_position">
19814         <callback name="get_position" c:type="get_position">
19815           <return-value transfer-ownership="none">
19816             <doc xml:whitespace="preserve">the cursor position</doc>
19817             <type name="int" c:type="gint"/>
19818           </return-value>
19819           <parameters>
19820             <parameter name="editable" transfer-ownership="none">
19821               <type name="Editable" c:type="GtkEditable*"/>
19822             </parameter>
19823           </parameters>
19824         </callback>
19825       </field>
19826     </record>
19827     <class name="Entry"
19828            c:type="GtkEntry"
19829            parent="Widget"
19830            glib:type-name="GtkEntry"
19831            glib:get-type="gtk_entry_get_type"
19832            glib:type-struct="EntryClass">
19833       <implements name="Atk.ImplementorIface"/>
19834       <implements name="Buildable"/>
19835       <implements name="CellEditable"/>
19836       <implements name="Editable"/>
19837       <constructor name="new" c:identifier="gtk_entry_new">
19838         <doc xml:whitespace="preserve">Creates a new entry.</doc>
19839         <return-value transfer-ownership="full">
19840           <doc xml:whitespace="preserve">a new #GtkEntry.</doc>
19841           <type name="Entry" c:type="GtkWidget*"/>
19842         </return-value>
19843       </constructor>
19844       <constructor name="new_with_buffer"
19845                    c:identifier="gtk_entry_new_with_buffer"
19846                    version="2.18">
19847         <doc xml:whitespace="preserve">Creates a new entry with the specified text buffer.</doc>
19848         <return-value transfer-ownership="full">
19849           <doc xml:whitespace="preserve">a new #GtkEntry</doc>
19850           <type name="Entry" c:type="GtkWidget*"/>
19851         </return-value>
19852         <parameters>
19853           <parameter name="buffer" transfer-ownership="none">
19854             <doc xml:whitespace="preserve">The buffer to use for the new #GtkEntry.</doc>
19855             <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
19856           </parameter>
19857         </parameters>
19858       </constructor>
19859       <constructor name="new_with_max_length"
19860                    c:identifier="gtk_entry_new_with_max_length"
19861                    deprecated="Use gtk_entry_set_max_length() instead."
19862                    deprecated-version="2.0">
19863         <doc xml:whitespace="preserve">Creates a new #GtkEntry widget with the given maximum length.</doc>
19864         <return-value transfer-ownership="full">
19865           <doc xml:whitespace="preserve">a new #GtkEntry</doc>
19866           <type name="Entry" c:type="GtkWidget*"/>
19867         </return-value>
19868         <parameters>
19869           <parameter name="max" transfer-ownership="none">
19870             <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>
19871             <type name="int" c:type="gint"/>
19872           </parameter>
19873         </parameters>
19874       </constructor>
19875       <virtual-method name="get_text_area_size">
19876         <return-value transfer-ownership="none">
19877           <type name="none" c:type="void"/>
19878         </return-value>
19879         <parameters>
19880           <parameter name="x"
19881                      direction="out"
19882                      caller-allocates="0"
19883                      transfer-ownership="full">
19884             <type name="int" c:type="gint*"/>
19885           </parameter>
19886           <parameter name="y"
19887                      direction="out"
19888                      caller-allocates="0"
19889                      transfer-ownership="full">
19890             <type name="int" c:type="gint*"/>
19891           </parameter>
19892           <parameter name="width"
19893                      direction="out"
19894                      caller-allocates="0"
19895                      transfer-ownership="full">
19896             <type name="int" c:type="gint*"/>
19897           </parameter>
19898           <parameter name="height"
19899                      direction="out"
19900                      caller-allocates="0"
19901                      transfer-ownership="full">
19902             <type name="int" c:type="gint*"/>
19903           </parameter>
19904         </parameters>
19905       </virtual-method>
19906       <method name="get_buffer"
19907               c:identifier="gtk_entry_get_buffer"
19908               version="2.18">
19909         <doc xml:whitespace="preserve">Get the #GtkEntryBuffer object which holds the text for
19910 this widget.</doc>
19911         <return-value transfer-ownership="full">
19912           <doc xml:whitespace="preserve">A #GtkEntryBuffer object.</doc>
19913           <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
19914         </return-value>
19915       </method>
19916       <method name="set_buffer"
19917               c:identifier="gtk_entry_set_buffer"
19918               version="2.18">
19919         <doc xml:whitespace="preserve">Set the #GtkEntryBuffer object which holds the text for
19920 this widget.</doc>
19921         <return-value transfer-ownership="none">
19922           <type name="none" c:type="void"/>
19923         </return-value>
19924         <parameters>
19925           <parameter name="buffer" transfer-ownership="none">
19926             <doc xml:whitespace="preserve">a #GtkEntryBuffer</doc>
19927             <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
19928           </parameter>
19929         </parameters>
19930       </method>
19931       <method name="get_text_window"
19932               c:identifier="gtk_entry_get_text_window"
19933               version="2.20">
19934         <doc xml:whitespace="preserve">Returns the #GdkWindow which contains the text. This function is
19935 useful when drawing something to the entry in an expose-event
19936 callback because it enables the callback to distinguish between
19937 the text window and entry's icon windows.
19938 See also gtk_entry_get_icon_window().</doc>
19939         <return-value transfer-ownership="full">
19940           <doc xml:whitespace="preserve">the entry's text window.</doc>
19941           <type name="Gdk.Window" c:type="GdkWindow*"/>
19942         </return-value>
19943       </method>
19944       <method name="set_visibility" c:identifier="gtk_entry_set_visibility">
19945         <doc xml:whitespace="preserve">Sets whether the contents of the entry are visible or not. 
19946 When visibility is set to %FALSE, characters are displayed 
19947 as the invisible char, and will also appear that way when 
19948 the text in the entry widget is copied elsewhere.
19949 By default, GTK+ picks the best invisible character available
19950 in the current font, but it can be changed with
19951 gtk_entry_set_invisible_char().</doc>
19952         <return-value transfer-ownership="none">
19953           <type name="none" c:type="void"/>
19954         </return-value>
19955         <parameters>
19956           <parameter name="visible" transfer-ownership="none">
19957             <doc xml:whitespace="preserve">%TRUE if the contents of the entry are displayed as plaintext</doc>
19958             <type name="boolean" c:type="gboolean"/>
19959           </parameter>
19960         </parameters>
19961       </method>
19962       <method name="get_visibility" c:identifier="gtk_entry_get_visibility">
19963         <doc xml:whitespace="preserve">Retrieves whether the text in @entry is visible. See
19964 gtk_entry_set_visibility().</doc>
19965         <return-value transfer-ownership="none">
19966           <doc xml:whitespace="preserve">%TRUE if the text is currently visible</doc>
19967           <type name="boolean" c:type="gboolean"/>
19968         </return-value>
19969       </method>
19970       <method name="set_invisible_char"
19971               c:identifier="gtk_entry_set_invisible_char">
19972         <doc xml:whitespace="preserve">Sets the character to use in place of the actual text when
19973 gtk_entry_set_visibility() has been called to set text visibility
19974 to %FALSE. i.e. this is the character used in "password mode" to
19975 show the user how many characters have been typed. By default, GTK+
19976 picks the best invisible char available in the current font. If you
19977 set the invisible char to 0, then the user will get no feedback
19978 at all; there will be no text on the screen as they type.</doc>
19979         <return-value transfer-ownership="none">
19980           <type name="none" c:type="void"/>
19981         </return-value>
19982         <parameters>
19983           <parameter name="ch" transfer-ownership="none">
19984             <doc xml:whitespace="preserve">a Unicode character</doc>
19985             <type name="GLib.unichar" c:type="gunichar"/>
19986           </parameter>
19987         </parameters>
19988       </method>
19989       <method name="get_invisible_char"
19990               c:identifier="gtk_entry_get_invisible_char">
19991         <doc xml:whitespace="preserve">Retrieves the character displayed in place of the real characters
19992 for entries with visibility set to false. See gtk_entry_set_invisible_char().
19993 show invisible text at all.</doc>
19994         <return-value transfer-ownership="full">
19995           <doc xml:whitespace="preserve">the current invisible char, or 0, if the entry does not</doc>
19996           <type name="GLib.unichar" c:type="gunichar"/>
19997         </return-value>
19998       </method>
19999       <method name="unset_invisible_char"
20000               c:identifier="gtk_entry_unset_invisible_char"
20001               version="2.16">
20002         <doc xml:whitespace="preserve">Unsets the invisible char previously set with
20003 gtk_entry_set_invisible_char(). So that the
20004 default invisible char is used again.</doc>
20005         <return-value transfer-ownership="none">
20006           <type name="none" c:type="void"/>
20007         </return-value>
20008       </method>
20009       <method name="set_has_frame" c:identifier="gtk_entry_set_has_frame">
20010         <doc xml:whitespace="preserve">Sets whether the entry has a beveled frame around it.</doc>
20011         <return-value transfer-ownership="none">
20012           <type name="none" c:type="void"/>
20013         </return-value>
20014         <parameters>
20015           <parameter name="setting" transfer-ownership="none">
20016             <doc xml:whitespace="preserve">new value</doc>
20017             <type name="boolean" c:type="gboolean"/>
20018           </parameter>
20019         </parameters>
20020       </method>
20021       <method name="get_has_frame" c:identifier="gtk_entry_get_has_frame">
20022         <doc xml:whitespace="preserve">Gets the value set by gtk_entry_set_has_frame().</doc>
20023         <return-value transfer-ownership="none">
20024           <doc xml:whitespace="preserve">whether the entry has a beveled frame</doc>
20025           <type name="boolean" c:type="gboolean"/>
20026         </return-value>
20027       </method>
20028       <method name="set_inner_border"
20029               c:identifier="gtk_entry_set_inner_border"
20030               version="2.10">
20031         <doc xml:whitespace="preserve">Sets %entry's inner-border property to %border, or clears it if %NULL
20032 is passed. The inner-border is the area around the entry's text, but
20033 inside its frame.
20034 If set, this property overrides the inner-border style property.
20035 Overriding the style-provided border is useful when you want to do
20036 in-place editing of some text in a canvas or list widget, where
20037 pixel-exact positioning of the entry is important.</doc>
20038         <return-value transfer-ownership="none">
20039           <type name="none" c:type="void"/>
20040         </return-value>
20041         <parameters>
20042           <parameter name="border" transfer-ownership="none" allow-none="1">
20043             <doc xml:whitespace="preserve">a #GtkBorder, or %NULL</doc>
20044             <type name="Border" c:type="GtkBorder*"/>
20045           </parameter>
20046         </parameters>
20047       </method>
20048       <method name="get_inner_border"
20049               c:identifier="gtk_entry_get_inner_border"
20050               version="2.10">
20051         <doc xml:whitespace="preserve">This function returns the entry's #GtkEntry:inner-border property. See
20052 gtk_entry_set_inner_border() for more information.</doc>
20053         <return-value transfer-ownership="none">
20054           <doc xml:whitespace="preserve">the entry's #GtkBorder, or %NULL if none was set.</doc>
20055           <type name="Border" c:type="GtkBorder*"/>
20056         </return-value>
20057       </method>
20058       <method name="set_overwrite_mode"
20059               c:identifier="gtk_entry_set_overwrite_mode"
20060               version="2.14">
20061         <doc xml:whitespace="preserve">Sets whether the text is overwritten when typing in the #GtkEntry.</doc>
20062         <return-value transfer-ownership="none">
20063           <type name="none" c:type="void"/>
20064         </return-value>
20065         <parameters>
20066           <parameter name="overwrite" transfer-ownership="none">
20067             <doc xml:whitespace="preserve">new value</doc>
20068             <type name="boolean" c:type="gboolean"/>
20069           </parameter>
20070         </parameters>
20071       </method>
20072       <method name="get_overwrite_mode"
20073               c:identifier="gtk_entry_get_overwrite_mode"
20074               version="2.14">
20075         <doc xml:whitespace="preserve">Gets the value set by gtk_entry_set_overwrite_mode().</doc>
20076         <return-value transfer-ownership="none">
20077           <doc xml:whitespace="preserve">whether the text is overwritten when typing.</doc>
20078           <type name="boolean" c:type="gboolean"/>
20079         </return-value>
20080       </method>
20081       <method name="set_max_length" c:identifier="gtk_entry_set_max_length">
20082         <doc xml:whitespace="preserve">Sets the maximum allowed length of the contents of the widget. If
20083 the current contents are longer than the given length, then they
20084 will be truncated to fit.
20085 This is equivalent to:
20086 &lt;informalexample&gt;&lt;programlisting&gt;
20087 gtk_entry_buffer_set_max_length (gtk_entry_get_buffer (entry), max);
20088 &lt;/programlisting&gt;&lt;/informalexample&gt;</doc>
20089         <return-value transfer-ownership="none">
20090           <type name="none" c:type="void"/>
20091         </return-value>
20092         <parameters>
20093           <parameter name="max" transfer-ownership="none">
20094             <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>
20095             <type name="int" c:type="gint"/>
20096           </parameter>
20097         </parameters>
20098       </method>
20099       <method name="get_max_length" c:identifier="gtk_entry_get_max_length">
20100         <doc xml:whitespace="preserve">Retrieves the maximum allowed length of the text in
20101 This is equivalent to:
20102 &lt;informalexample&gt;&lt;programlisting&gt;
20103 gtk_entry_buffer_get_max_length (gtk_entry_get_buffer (entry));
20104 &lt;/programlisting&gt;&lt;/informalexample&gt;
20105 in #GtkEntry, or 0 if there is no maximum.</doc>
20106         <return-value transfer-ownership="none">
20107           <doc xml:whitespace="preserve">the maximum allowed number of characters</doc>
20108           <type name="int" c:type="gint"/>
20109         </return-value>
20110       </method>
20111       <method name="get_text_length"
20112               c:identifier="gtk_entry_get_text_length"
20113               version="2.14">
20114         <doc xml:whitespace="preserve">Retrieves the current length of the text in
20115 This is equivalent to:
20116 &lt;informalexample&gt;&lt;programlisting&gt;
20117 gtk_entry_buffer_get_length (gtk_entry_get_buffer (entry));
20118 &lt;/programlisting&gt;&lt;/informalexample&gt;
20119 in #GtkEntry, or 0 if there are none.</doc>
20120         <return-value transfer-ownership="none">
20121           <doc xml:whitespace="preserve">the current number of characters</doc>
20122           <type name="uint16" c:type="guint16"/>
20123         </return-value>
20124       </method>
20125       <method name="set_activates_default"
20126               c:identifier="gtk_entry_set_activates_default">
20127         <doc xml:whitespace="preserve">If @setting is %TRUE, pressing Enter in the @entry will activate the default
20128 widget for the window containing the entry. This usually means that
20129 the dialog box containing the entry will be closed, since the default
20130 widget is usually one of the dialog buttons.
20131 (For experts: if @setting is %TRUE, the entry calls
20132 gtk_window_activate_default() on the window containing the entry, in
20133 the default handler for the #GtkWidget::activate signal.)</doc>
20134         <return-value transfer-ownership="none">
20135           <type name="none" c:type="void"/>
20136         </return-value>
20137         <parameters>
20138           <parameter name="setting" transfer-ownership="none">
20139             <doc xml:whitespace="preserve">%TRUE to activate window's default widget on Enter keypress</doc>
20140             <type name="boolean" c:type="gboolean"/>
20141           </parameter>
20142         </parameters>
20143       </method>
20144       <method name="get_activates_default"
20145               c:identifier="gtk_entry_get_activates_default">
20146         <doc xml:whitespace="preserve">Retrieves the value set by gtk_entry_set_activates_default().</doc>
20147         <return-value transfer-ownership="none">
20148           <doc xml:whitespace="preserve">%TRUE if the entry will activate the default widget</doc>
20149           <type name="boolean" c:type="gboolean"/>
20150         </return-value>
20151       </method>
20152       <method name="set_width_chars" c:identifier="gtk_entry_set_width_chars">
20153         <doc xml:whitespace="preserve">Changes the size request of the entry to be about the right size
20154 for @n_chars characters. Note that it changes the size
20155 &lt;emphasis&gt;request&lt;/emphasis&gt;, the size can still be affected by
20156 how you pack the widget into containers. If @n_chars is -1, the
20157 size reverts to the default entry size.</doc>
20158         <return-value transfer-ownership="none">
20159           <type name="none" c:type="void"/>
20160         </return-value>
20161         <parameters>
20162           <parameter name="n_chars" transfer-ownership="none">
20163             <doc xml:whitespace="preserve">width in chars</doc>
20164             <type name="int" c:type="gint"/>
20165           </parameter>
20166         </parameters>
20167       </method>
20168       <method name="get_width_chars" c:identifier="gtk_entry_get_width_chars">
20169         <doc xml:whitespace="preserve">Gets the value set by gtk_entry_set_width_chars().</doc>
20170         <return-value transfer-ownership="none">
20171           <doc xml:whitespace="preserve">number of chars to request space for, or negative if unset</doc>
20172           <type name="int" c:type="gint"/>
20173         </return-value>
20174       </method>
20175       <method name="set_text" c:identifier="gtk_entry_set_text">
20176         <doc xml:whitespace="preserve">Sets the text in the widget to the given
20177 value, replacing the current contents.
20178 See gtk_entry_buffer_set_text().</doc>
20179         <return-value transfer-ownership="none">
20180           <type name="none" c:type="void"/>
20181         </return-value>
20182         <parameters>
20183           <parameter name="text" transfer-ownership="none">
20184             <doc xml:whitespace="preserve">the new text</doc>
20185             <type name="utf8" c:type="gchar*"/>
20186           </parameter>
20187         </parameters>
20188       </method>
20189       <method name="get_text" c:identifier="gtk_entry_get_text">
20190         <doc xml:whitespace="preserve">Retrieves the contents of the entry widget.
20191 See also gtk_editable_get_chars().
20192 This is equivalent to:
20193 &lt;informalexample&gt;&lt;programlisting&gt;
20194 gtk_entry_buffer_get_text (gtk_entry_get_buffer (entry));
20195 &lt;/programlisting&gt;&lt;/informalexample&gt;
20196 string. This string points to internally allocated
20197 storage in the widget and must not be freed, modified or
20198 stored.</doc>
20199         <return-value transfer-ownership="none">
20200           <doc xml:whitespace="preserve">a pointer to the contents of the widget as a</doc>
20201           <type name="utf8" c:type="gchar*"/>
20202         </return-value>
20203       </method>
20204       <method name="get_layout" c:identifier="gtk_entry_get_layout">
20205         <doc xml:whitespace="preserve">Gets the #PangoLayout used to display the entry.
20206 The layout is useful to e.g. convert text positions to
20207 pixel positions, in combination with gtk_entry_get_layout_offsets().
20208 The returned layout is owned by the entry and must not be 
20209 modified or freed by the caller.
20210 Keep in mind that the layout text may contain a preedit string, so
20211 gtk_entry_layout_index_to_text_index() and
20212 gtk_entry_text_index_to_layout_index() are needed to convert byte
20213 indices in the layout to byte indices in the entry contents.</doc>
20214         <return-value transfer-ownership="none">
20215           <doc xml:whitespace="preserve">the #PangoLayout for this entry</doc>
20216           <type name="Pango.Layout" c:type="PangoLayout*"/>
20217         </return-value>
20218       </method>
20219       <method name="get_layout_offsets"
20220               c:identifier="gtk_entry_get_layout_offsets">
20221         <doc xml:whitespace="preserve">Obtains the position of the #PangoLayout used to render text
20222 in the entry, in widget coordinates. Useful if you want to line
20223 up the text in an entry with some other text, e.g. when using the
20224 entry to implement editable cells in a sheet widget.
20225 Also useful to convert mouse events into coordinates inside the
20226 #PangoLayout, e.g. to take some action if some part of the entry text
20227 is clicked.
20228 Note that as the user scrolls around in the entry the offsets will
20229 change; you'll need to connect to the "notify::scroll-offset"
20230 signal to track this. Remember when using the #PangoLayout
20231 functions you need to convert to and from pixels using
20232 PANGO_PIXELS() or #PANGO_SCALE.
20233 Keep in mind that the layout text may contain a preedit string, so
20234 gtk_entry_layout_index_to_text_index() and
20235 gtk_entry_text_index_to_layout_index() are needed to convert byte
20236 indices in the layout to byte indices in the entry contents.</doc>
20237         <return-value transfer-ownership="none">
20238           <type name="none" c:type="void"/>
20239         </return-value>
20240         <parameters>
20241           <parameter name="x"
20242                      direction="out"
20243                      caller-allocates="0"
20244                      transfer-ownership="full"
20245                      allow-none="1">
20246             <doc xml:whitespace="preserve">location to store X offset of layout, or %NULL</doc>
20247             <type name="int" c:type="gint*"/>
20248           </parameter>
20249           <parameter name="y"
20250                      direction="out"
20251                      caller-allocates="0"
20252                      transfer-ownership="full"
20253                      allow-none="1">
20254             <doc xml:whitespace="preserve">location to store Y offset of layout, or %NULL</doc>
20255             <type name="int" c:type="gint*"/>
20256           </parameter>
20257         </parameters>
20258       </method>
20259       <method name="set_alignment"
20260               c:identifier="gtk_entry_set_alignment"
20261               version="2.4">
20262         <doc xml:whitespace="preserve">Sets the alignment for the contents of the entry. This controls
20263 the horizontal positioning of the contents when the displayed
20264 text is shorter than the width of the entry.</doc>
20265         <return-value transfer-ownership="none">
20266           <type name="none" c:type="void"/>
20267         </return-value>
20268         <parameters>
20269           <parameter name="xalign" transfer-ownership="none">
20270             <doc xml:whitespace="preserve">The horizontal alignment, from 0 (left) to 1 (right). Reversed for RTL layouts</doc>
20271             <type name="float" c:type="gfloat"/>
20272           </parameter>
20273         </parameters>
20274       </method>
20275       <method name="get_alignment"
20276               c:identifier="gtk_entry_get_alignment"
20277               version="2.4">
20278         <doc xml:whitespace="preserve">Gets the value set by gtk_entry_set_alignment().</doc>
20279         <return-value transfer-ownership="none">
20280           <doc xml:whitespace="preserve">the alignment</doc>
20281           <type name="float" c:type="gfloat"/>
20282         </return-value>
20283       </method>
20284       <method name="set_completion"
20285               c:identifier="gtk_entry_set_completion"
20286               version="2.4">
20287         <doc xml:whitespace="preserve">Sets @completion to be the auxiliary completion object to use with @entry.
20288 All further configuration of the completion mechanism is done on</doc>
20289         <return-value transfer-ownership="none">
20290           <type name="none" c:type="void"/>
20291         </return-value>
20292         <parameters>
20293           <parameter name="completion"
20294                      transfer-ownership="none"
20295                      allow-none="1">
20296             <doc xml:whitespace="preserve">The #GtkEntryCompletion or %NULL</doc>
20297             <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
20298           </parameter>
20299         </parameters>
20300       </method>
20301       <method name="get_completion"
20302               c:identifier="gtk_entry_get_completion"
20303               version="2.4">
20304         <doc xml:whitespace="preserve">Returns the auxiliary completion object currently in use by @entry.</doc>
20305         <return-value transfer-ownership="full">
20306           <doc xml:whitespace="preserve">The auxiliary completion object currently in use by @entry.</doc>
20307           <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
20308         </return-value>
20309       </method>
20310       <method name="layout_index_to_text_index"
20311               c:identifier="gtk_entry_layout_index_to_text_index">
20312         <doc xml:whitespace="preserve">Converts from a position in the entry contents (returned
20313 by gtk_entry_get_text()) to a position in the
20314 entry's #PangoLayout (returned by gtk_entry_get_layout(),
20315 with text retrieved via pango_layout_get_text()).</doc>
20316         <return-value transfer-ownership="none">
20317           <doc xml:whitespace="preserve">byte index into the entry contents</doc>
20318           <type name="int" c:type="gint"/>
20319         </return-value>
20320         <parameters>
20321           <parameter name="layout_index" transfer-ownership="none">
20322             <doc xml:whitespace="preserve">byte index into the entry layout text</doc>
20323             <type name="int" c:type="gint"/>
20324           </parameter>
20325         </parameters>
20326       </method>
20327       <method name="text_index_to_layout_index"
20328               c:identifier="gtk_entry_text_index_to_layout_index">
20329         <doc xml:whitespace="preserve">Converts from a position in the entry's #PangoLayout (returned by
20330 gtk_entry_get_layout()) to a position in the entry contents
20331 (returned by gtk_entry_get_text()).</doc>
20332         <return-value transfer-ownership="none">
20333           <doc xml:whitespace="preserve">byte index into the entry layout text</doc>
20334           <type name="int" c:type="gint"/>
20335         </return-value>
20336         <parameters>
20337           <parameter name="text_index" transfer-ownership="none">
20338             <doc xml:whitespace="preserve">byte index into the entry contents</doc>
20339             <type name="int" c:type="gint"/>
20340           </parameter>
20341         </parameters>
20342       </method>
20343       <method name="set_cursor_hadjustment"
20344               c:identifier="gtk_entry_set_cursor_hadjustment"
20345               version="2.12">
20346         <doc xml:whitespace="preserve">Hooks up an adjustment to the cursor position in an entry, so that when 
20347 the cursor is moved, the adjustment is scrolled to show that position. 
20348 See gtk_scrolled_window_get_hadjustment() for a typical way of obtaining 
20349 the adjustment.
20350 The adjustment has to be in pixel units and in the same coordinate system 
20351 as the entry.</doc>
20352         <return-value transfer-ownership="none">
20353           <type name="none" c:type="void"/>
20354         </return-value>
20355         <parameters>
20356           <parameter name="adjustment" transfer-ownership="none">
20357             <doc xml:whitespace="preserve">an adjustment which should be adjusted when the cursor is moved, or %NULL</doc>
20358             <type name="Adjustment" c:type="GtkAdjustment*"/>
20359           </parameter>
20360         </parameters>
20361       </method>
20362       <method name="get_cursor_hadjustment"
20363               c:identifier="gtk_entry_get_cursor_hadjustment"
20364               version="2.12">
20365         <doc xml:whitespace="preserve">Retrieves the horizontal cursor adjustment for the entry. 
20366 See gtk_entry_set_cursor_hadjustment().
20367 if none has been set.</doc>
20368         <return-value transfer-ownership="none">
20369           <doc xml:whitespace="preserve">the horizontal cursor adjustment, or %NULL</doc>
20370           <type name="Adjustment" c:type="GtkAdjustment*"/>
20371         </return-value>
20372       </method>
20373       <method name="set_progress_fraction"
20374               c:identifier="gtk_entry_set_progress_fraction"
20375               version="2.16">
20376         <doc xml:whitespace="preserve">Causes the entry's progress indicator to "fill in" the given
20377 fraction of the bar. The fraction should be between 0.0 and 1.0,
20378 inclusive.</doc>
20379         <return-value transfer-ownership="none">
20380           <type name="none" c:type="void"/>
20381         </return-value>
20382         <parameters>
20383           <parameter name="fraction" transfer-ownership="none">
20384             <doc xml:whitespace="preserve">fraction of the task that's been completed</doc>
20385             <type name="double" c:type="gdouble"/>
20386           </parameter>
20387         </parameters>
20388       </method>
20389       <method name="get_progress_fraction"
20390               c:identifier="gtk_entry_get_progress_fraction"
20391               version="2.16">
20392         <doc xml:whitespace="preserve">Returns the current fraction of the task that's been completed.
20393 See gtk_entry_set_progress_fraction().</doc>
20394         <return-value transfer-ownership="none">
20395           <doc xml:whitespace="preserve">a fraction from 0.0 to 1.0</doc>
20396           <type name="double" c:type="gdouble"/>
20397         </return-value>
20398       </method>
20399       <method name="set_progress_pulse_step"
20400               c:identifier="gtk_entry_set_progress_pulse_step"
20401               version="2.16">
20402         <doc xml:whitespace="preserve">Sets the fraction of total entry width to move the progress
20403 bouncing block for each call to gtk_entry_progress_pulse().</doc>
20404         <return-value transfer-ownership="none">
20405           <type name="none" c:type="void"/>
20406         </return-value>
20407         <parameters>
20408           <parameter name="fraction" transfer-ownership="none">
20409             <doc xml:whitespace="preserve">fraction between 0.0 and 1.0</doc>
20410             <type name="double" c:type="gdouble"/>
20411           </parameter>
20412         </parameters>
20413       </method>
20414       <method name="get_progress_pulse_step"
20415               c:identifier="gtk_entry_get_progress_pulse_step"
20416               version="2.16">
20417         <doc xml:whitespace="preserve">Retrieves the pulse step set with gtk_entry_set_progress_pulse_step().</doc>
20418         <return-value transfer-ownership="none">
20419           <doc xml:whitespace="preserve">a fraction from 0.0 to 1.0</doc>
20420           <type name="double" c:type="gdouble"/>
20421         </return-value>
20422       </method>
20423       <method name="progress_pulse"
20424               c:identifier="gtk_entry_progress_pulse"
20425               version="2.16">
20426         <doc xml:whitespace="preserve">Indicates that some progress is made, but you don't know how much.
20427 Causes the entry's progress indicator to enter "activity mode,"
20428 where a block bounces back and forth. Each call to
20429 gtk_entry_progress_pulse() causes the block to move by a little bit
20430 (the amount of movement per pulse is determined by
20431 gtk_entry_set_progress_pulse_step()).</doc>
20432         <return-value transfer-ownership="none">
20433           <type name="none" c:type="void"/>
20434         </return-value>
20435       </method>
20436       <method name="set_icon_from_pixbuf"
20437               c:identifier="gtk_entry_set_icon_from_pixbuf"
20438               version="2.16">
20439         <doc xml:whitespace="preserve">Sets the icon shown in the specified position using a pixbuf.
20440 If @pixbuf is %NULL, no icon will be shown in the specified position.</doc>
20441         <return-value transfer-ownership="none">
20442           <type name="none" c:type="void"/>
20443         </return-value>
20444         <parameters>
20445           <parameter name="icon_pos" transfer-ownership="none">
20446             <doc xml:whitespace="preserve">Icon position</doc>
20447             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20448           </parameter>
20449           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
20450             <doc xml:whitespace="preserve">A #GdkPixbuf, or %NULL</doc>
20451             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
20452           </parameter>
20453         </parameters>
20454       </method>
20455       <method name="set_icon_from_stock"
20456               c:identifier="gtk_entry_set_icon_from_stock"
20457               version="2.16">
20458         <doc xml:whitespace="preserve">Sets the icon shown in the entry at the specified position from
20459 a stock image.
20460 If @stock_id is %NULL, no icon will be shown in the specified position.</doc>
20461         <return-value transfer-ownership="none">
20462           <type name="none" c:type="void"/>
20463         </return-value>
20464         <parameters>
20465           <parameter name="icon_pos" transfer-ownership="none">
20466             <doc xml:whitespace="preserve">Icon position</doc>
20467             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20468           </parameter>
20469           <parameter name="stock_id" transfer-ownership="none" allow-none="1">
20470             <doc xml:whitespace="preserve">The name of the stock item, or %NULL</doc>
20471             <type name="utf8" c:type="gchar*"/>
20472           </parameter>
20473         </parameters>
20474       </method>
20475       <method name="set_icon_from_icon_name"
20476               c:identifier="gtk_entry_set_icon_from_icon_name"
20477               version="2.16">
20478         <doc xml:whitespace="preserve">Sets the icon shown in the entry at the specified position
20479 from the current icon theme.
20480 If the icon name isn't known, a "broken image" icon will be displayed
20481 instead.
20482 If @icon_name is %NULL, no icon will be shown in the specified position.</doc>
20483         <return-value transfer-ownership="none">
20484           <type name="none" c:type="void"/>
20485         </return-value>
20486         <parameters>
20487           <parameter name="icon_pos" transfer-ownership="none">
20488             <doc xml:whitespace="preserve">The position at which to set the icon</doc>
20489             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20490           </parameter>
20491           <parameter name="icon_name" transfer-ownership="none" allow-none="1">
20492             <doc xml:whitespace="preserve">An icon name, or %NULL</doc>
20493             <type name="utf8" c:type="gchar*"/>
20494           </parameter>
20495         </parameters>
20496       </method>
20497       <method name="set_icon_from_gicon"
20498               c:identifier="gtk_entry_set_icon_from_gicon"
20499               version="2.16">
20500         <doc xml:whitespace="preserve">Sets the icon shown in the entry at the specified position
20501 from the current icon theme.
20502 If the icon isn't known, a "broken image" icon will be displayed
20503 instead.
20504 If @icon is %NULL, no icon will be shown in the specified position.</doc>
20505         <return-value transfer-ownership="none">
20506           <type name="none" c:type="void"/>
20507         </return-value>
20508         <parameters>
20509           <parameter name="icon_pos" transfer-ownership="none">
20510             <doc xml:whitespace="preserve">The position at which to set the icon</doc>
20511             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20512           </parameter>
20513           <parameter name="icon" transfer-ownership="none" allow-none="1">
20514             <doc xml:whitespace="preserve">The icon to set, or %NULL</doc>
20515             <type name="Gio.Icon" c:type="GIcon*"/>
20516           </parameter>
20517         </parameters>
20518       </method>
20519       <method name="get_icon_storage_type"
20520               c:identifier="gtk_entry_get_icon_storage_type"
20521               version="2.16">
20522         <doc xml:whitespace="preserve">Gets the type of representation being used by the icon
20523 to store image data. If the icon has no image data,
20524 the return value will be %GTK_IMAGE_EMPTY.</doc>
20525         <return-value transfer-ownership="full">
20526           <doc xml:whitespace="preserve">image representation being used</doc>
20527           <type name="ImageType" c:type="GtkImageType"/>
20528         </return-value>
20529         <parameters>
20530           <parameter name="icon_pos" transfer-ownership="none">
20531             <doc xml:whitespace="preserve">Icon position</doc>
20532             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20533           </parameter>
20534         </parameters>
20535       </method>
20536       <method name="get_icon_pixbuf"
20537               c:identifier="gtk_entry_get_icon_pixbuf"
20538               version="2.16">
20539         <doc xml:whitespace="preserve">Retrieves the image used for the icon.
20540 Unlike the other methods of setting and getting icon data, this
20541 method will work regardless of whether the icon was set using a
20542 #GdkPixbuf, a #GIcon, a stock item, or an icon name.</doc>
20543         <return-value transfer-ownership="full">
20544           <doc xml:whitespace="preserve">A #GdkPixbuf, or %NULL if no icon is set for this position.</doc>
20545           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
20546         </return-value>
20547         <parameters>
20548           <parameter name="icon_pos" transfer-ownership="none">
20549             <doc xml:whitespace="preserve">Icon position</doc>
20550             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20551           </parameter>
20552         </parameters>
20553       </method>
20554       <method name="get_icon_stock"
20555               c:identifier="gtk_entry_get_icon_stock"
20556               version="2.16">
20557         <doc xml:whitespace="preserve">Retrieves the stock id used for the icon, or %NULL if there is
20558 no icon or if the icon was set by some other method (e.g., by
20559 pixbuf, icon name or gicon).
20560 wasn't set from a stock id</doc>
20561         <return-value transfer-ownership="none">
20562           <doc xml:whitespace="preserve">A stock id, or %NULL if no icon is set or if the icon</doc>
20563           <type name="utf8" c:type="gchar*"/>
20564         </return-value>
20565         <parameters>
20566           <parameter name="icon_pos" transfer-ownership="none">
20567             <doc xml:whitespace="preserve">Icon position</doc>
20568             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20569           </parameter>
20570         </parameters>
20571       </method>
20572       <method name="get_icon_name"
20573               c:identifier="gtk_entry_get_icon_name"
20574               version="2.16">
20575         <doc xml:whitespace="preserve">Retrieves the icon name used for the icon, or %NULL if there is
20576 no icon or if the icon was set by some other method (e.g., by
20577 pixbuf, stock or gicon).
20578 wasn't set from an icon name</doc>
20579         <return-value transfer-ownership="none">
20580           <doc xml:whitespace="preserve">An icon name, or %NULL if no icon is set or if the icon</doc>
20581           <type name="utf8" c:type="gchar*"/>
20582         </return-value>
20583         <parameters>
20584           <parameter name="icon_pos" transfer-ownership="none">
20585             <doc xml:whitespace="preserve">Icon position</doc>
20586             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20587           </parameter>
20588         </parameters>
20589       </method>
20590       <method name="get_icon_gicon"
20591               c:identifier="gtk_entry_get_icon_gicon"
20592               version="2.16">
20593         <doc xml:whitespace="preserve">Retrieves the #GIcon used for the icon, or %NULL if there is
20594 no icon or if the icon was set by some other method (e.g., by
20595 stock, pixbuf, or icon name).
20596 is not a #GIcon</doc>
20597         <return-value transfer-ownership="full">
20598           <doc xml:whitespace="preserve">A #GIcon, or %NULL if no icon is set or if the icon</doc>
20599           <type name="Gio.Icon" c:type="GIcon*"/>
20600         </return-value>
20601         <parameters>
20602           <parameter name="icon_pos" transfer-ownership="none">
20603             <doc xml:whitespace="preserve">Icon position</doc>
20604             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20605           </parameter>
20606         </parameters>
20607       </method>
20608       <method name="set_icon_activatable"
20609               c:identifier="gtk_entry_set_icon_activatable"
20610               version="2.16">
20611         <doc xml:whitespace="preserve">Sets whether the icon is activatable.</doc>
20612         <return-value transfer-ownership="none">
20613           <type name="none" c:type="void"/>
20614         </return-value>
20615         <parameters>
20616           <parameter name="icon_pos" transfer-ownership="none">
20617             <doc xml:whitespace="preserve">Icon position</doc>
20618             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20619           </parameter>
20620           <parameter name="activatable" transfer-ownership="none">
20621             <doc xml:whitespace="preserve">%TRUE if the icon should be activatable</doc>
20622             <type name="boolean" c:type="gboolean"/>
20623           </parameter>
20624         </parameters>
20625       </method>
20626       <method name="get_icon_activatable"
20627               c:identifier="gtk_entry_get_icon_activatable"
20628               version="2.16">
20629         <doc xml:whitespace="preserve">Returns whether the icon is activatable.</doc>
20630         <return-value transfer-ownership="none">
20631           <doc xml:whitespace="preserve">%TRUE if the icon is activatable.</doc>
20632           <type name="boolean" c:type="gboolean"/>
20633         </return-value>
20634         <parameters>
20635           <parameter name="icon_pos" transfer-ownership="none">
20636             <doc xml:whitespace="preserve">Icon position</doc>
20637             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20638           </parameter>
20639         </parameters>
20640       </method>
20641       <method name="set_icon_sensitive"
20642               c:identifier="gtk_entry_set_icon_sensitive"
20643               version="2.16">
20644         <doc xml:whitespace="preserve">Sets the sensitivity for the specified icon.</doc>
20645         <return-value transfer-ownership="none">
20646           <type name="none" c:type="void"/>
20647         </return-value>
20648         <parameters>
20649           <parameter name="icon_pos" transfer-ownership="none">
20650             <doc xml:whitespace="preserve">Icon position</doc>
20651             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20652           </parameter>
20653           <parameter name="sensitive" transfer-ownership="none">
20654             <doc xml:whitespace="preserve">Specifies whether the icon should appear sensitive or insensitive</doc>
20655             <type name="boolean" c:type="gboolean"/>
20656           </parameter>
20657         </parameters>
20658       </method>
20659       <method name="get_icon_sensitive"
20660               c:identifier="gtk_entry_get_icon_sensitive"
20661               version="2.16">
20662         <doc xml:whitespace="preserve">Returns whether the icon appears sensitive or insensitive.</doc>
20663         <return-value transfer-ownership="none">
20664           <doc xml:whitespace="preserve">%TRUE if the icon is sensitive.</doc>
20665           <type name="boolean" c:type="gboolean"/>
20666         </return-value>
20667         <parameters>
20668           <parameter name="icon_pos" transfer-ownership="none">
20669             <doc xml:whitespace="preserve">Icon position</doc>
20670             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20671           </parameter>
20672         </parameters>
20673       </method>
20674       <method name="get_icon_at_pos"
20675               c:identifier="gtk_entry_get_icon_at_pos"
20676               version="2.16">
20677         <doc xml:whitespace="preserve">Finds the icon at the given position and return its index.
20678 If @x, @y doesn't lie inside an icon, -1 is returned.
20679 This function is intended for use in a #GtkWidget::query-tooltip
20680 signal handler.</doc>
20681         <return-value transfer-ownership="none">
20682           <doc xml:whitespace="preserve">the index of the icon at the given position, or -1</doc>
20683           <type name="int" c:type="gint"/>
20684         </return-value>
20685         <parameters>
20686           <parameter name="x" transfer-ownership="none">
20687             <doc xml:whitespace="preserve">the x coordinate of the position to find</doc>
20688             <type name="int" c:type="gint"/>
20689           </parameter>
20690           <parameter name="y" transfer-ownership="none">
20691             <doc xml:whitespace="preserve">the y coordinate of the position to find</doc>
20692             <type name="int" c:type="gint"/>
20693           </parameter>
20694         </parameters>
20695       </method>
20696       <method name="set_icon_tooltip_text"
20697               c:identifier="gtk_entry_set_icon_tooltip_text"
20698               version="2.16">
20699         <doc xml:whitespace="preserve">Sets @tooltip as the contents of the tooltip for the icon
20700 at the specified position.
20701 Use %NULL for @tooltip to remove an existing tooltip.
20702 See also gtk_widget_set_tooltip_text() and 
20703 gtk_entry_set_icon_tooltip_markup().</doc>
20704         <return-value transfer-ownership="none">
20705           <type name="none" c:type="void"/>
20706         </return-value>
20707         <parameters>
20708           <parameter name="icon_pos" transfer-ownership="none">
20709             <doc xml:whitespace="preserve">the icon position</doc>
20710             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20711           </parameter>
20712           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
20713             <doc xml:whitespace="preserve">the contents of the tooltip for the icon, or %NULL</doc>
20714             <type name="utf8" c:type="gchar*"/>
20715           </parameter>
20716         </parameters>
20717       </method>
20718       <method name="get_icon_tooltip_text"
20719               c:identifier="gtk_entry_get_icon_tooltip_text"
20720               version="2.16">
20721         <doc xml:whitespace="preserve">Gets the contents of the tooltip on the icon at the specified 
20722 position in @entry.
20723 with g_free() when done.</doc>
20724         <return-value transfer-ownership="full">
20725           <doc xml:whitespace="preserve">the tooltip text, or %NULL. Free the returned string</doc>
20726           <type name="utf8" c:type="gchar*"/>
20727         </return-value>
20728         <parameters>
20729           <parameter name="icon_pos" transfer-ownership="none">
20730             <doc xml:whitespace="preserve">the icon position</doc>
20731             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20732           </parameter>
20733         </parameters>
20734       </method>
20735       <method name="set_icon_tooltip_markup"
20736               c:identifier="gtk_entry_set_icon_tooltip_markup"
20737               version="2.16">
20738         <doc xml:whitespace="preserve">Sets @tooltip as the contents of the tooltip for the icon at
20739 the specified position. @tooltip is assumed to be marked up with
20740 the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
20741 Use %NULL for @tooltip to remove an existing tooltip.
20742 See also gtk_widget_set_tooltip_markup() and 
20743 gtk_enty_set_icon_tooltip_text().</doc>
20744         <return-value transfer-ownership="none">
20745           <type name="none" c:type="void"/>
20746         </return-value>
20747         <parameters>
20748           <parameter name="icon_pos" transfer-ownership="none">
20749             <doc xml:whitespace="preserve">the icon position</doc>
20750             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20751           </parameter>
20752           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
20753             <doc xml:whitespace="preserve">the contents of the tooltip for the icon, or %NULL</doc>
20754             <type name="utf8" c:type="gchar*"/>
20755           </parameter>
20756         </parameters>
20757       </method>
20758       <method name="get_icon_tooltip_markup"
20759               c:identifier="gtk_entry_get_icon_tooltip_markup"
20760               version="2.16">
20761         <doc xml:whitespace="preserve">Gets the contents of the tooltip on the icon at the specified 
20762 position in @entry.
20763 with g_free() when done.</doc>
20764         <return-value transfer-ownership="full">
20765           <doc xml:whitespace="preserve">the tooltip text, or %NULL. Free the returned string</doc>
20766           <type name="utf8" c:type="gchar*"/>
20767         </return-value>
20768         <parameters>
20769           <parameter name="icon_pos" transfer-ownership="none">
20770             <doc xml:whitespace="preserve">the icon position</doc>
20771             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20772           </parameter>
20773         </parameters>
20774       </method>
20775       <method name="set_icon_drag_source"
20776               c:identifier="gtk_entry_set_icon_drag_source"
20777               version="2.16">
20778         <doc xml:whitespace="preserve">Sets up the icon at the given position so that GTK+ will start a drag
20779 operation when the user clicks and drags the icon.
20780 To handle the drag operation, you need to connect to the usual
20781 #GtkWidget::drag-data-get (or possibly #GtkWidget::drag-data-delete)
20782 signal, and use gtk_entry_get_current_icon_drag_source() in
20783 your signal handler to find out if the drag was started from
20784 an icon.
20785 By default, GTK+ uses the icon as the drag icon. You can use the 
20786 #GtkWidget::drag-begin signal to set a different icon. Note that you 
20787 have to use g_signal_connect_after() to ensure that your signal handler
20788 gets executed after the default handler.</doc>
20789         <return-value transfer-ownership="none">
20790           <type name="none" c:type="void"/>
20791         </return-value>
20792         <parameters>
20793           <parameter name="icon_pos" transfer-ownership="none">
20794             <doc xml:whitespace="preserve">icon position</doc>
20795             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20796           </parameter>
20797           <parameter name="target_list" transfer-ownership="none">
20798             <doc xml:whitespace="preserve">the targets (data formats) in which the data can be provided</doc>
20799             <type name="TargetList" c:type="GtkTargetList*"/>
20800           </parameter>
20801           <parameter name="actions" transfer-ownership="none">
20802             <doc xml:whitespace="preserve">a bitmask of the allowed drag actions</doc>
20803             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
20804           </parameter>
20805         </parameters>
20806       </method>
20807       <method name="get_current_icon_drag_source"
20808               c:identifier="gtk_entry_get_current_icon_drag_source"
20809               version="2.16">
20810         <doc xml:whitespace="preserve">Returns the index of the icon which is the source of the current
20811 DND operation, or -1.
20812 This function is meant to be used in a #GtkWidget::drag-data-get
20813 callback.
20814 DND operation, or -1.</doc>
20815         <return-value transfer-ownership="none">
20816           <doc xml:whitespace="preserve">index of the icon which is the source of the current</doc>
20817           <type name="int" c:type="gint"/>
20818         </return-value>
20819       </method>
20820       <method name="get_icon_window"
20821               c:identifier="gtk_entry_get_icon_window"
20822               version="2.20">
20823         <doc xml:whitespace="preserve">Returns the #GdkWindow which contains the entry's icon at
20824 entry in an expose-event callback because it enables the callback
20825 to distinguish between the text window and entry's icon windows.
20826 See also gtk_entry_get_text_window().</doc>
20827         <return-value transfer-ownership="full">
20828           <doc xml:whitespace="preserve">the entry's icon window at @icon_pos.</doc>
20829           <type name="Gdk.Window" c:type="GdkWindow*"/>
20830         </return-value>
20831         <parameters>
20832           <parameter name="icon_pos" transfer-ownership="none">
20833             <doc xml:whitespace="preserve">Icon position</doc>
20834             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
20835           </parameter>
20836         </parameters>
20837       </method>
20838       <method name="im_context_filter_keypress"
20839               c:identifier="gtk_entry_im_context_filter_keypress"
20840               version="2.22">
20841         <doc xml:whitespace="preserve">Allow the #GtkEntry input method to internally handle key press
20842 and release events. If this function returns %TRUE, then no further
20843 processing should be done for this key event. See
20844 gtk_im_context_filter_keypress().
20845 Note that you are expected to call this function from your handler
20846 when overriding key event handling. This is needed in the case when
20847 you need to insert your own key handling between the input method
20848 and the default key event handling of the #GtkEntry.
20849 See gtk_text_view_reset_im_context() for an example of use.</doc>
20850         <return-value transfer-ownership="none">
20851           <doc xml:whitespace="preserve">%TRUE if the input method handled the key event.</doc>
20852           <type name="boolean" c:type="gboolean"/>
20853         </return-value>
20854         <parameters>
20855           <parameter name="event" transfer-ownership="none">
20856             <doc xml:whitespace="preserve">the key event</doc>
20857             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
20858           </parameter>
20859         </parameters>
20860       </method>
20861       <method name="reset_im_context"
20862               c:identifier="gtk_entry_reset_im_context"
20863               version="2.22">
20864         <doc xml:whitespace="preserve">Reset the input method context of the entry if needed.
20865 This can be necessary in the case where modifying the buffer
20866 would confuse on-going input method behavior.</doc>
20867         <return-value transfer-ownership="none">
20868           <type name="none" c:type="void"/>
20869         </return-value>
20870       </method>
20871       <method name="append_text"
20872               c:identifier="gtk_entry_append_text"
20873               deprecated="Use gtk_editable_insert_text() instead."
20874               deprecated-version="2.0">
20875         <doc xml:whitespace="preserve">Appends the given text to the contents of the widget.</doc>
20876         <return-value transfer-ownership="none">
20877           <type name="none" c:type="void"/>
20878         </return-value>
20879         <parameters>
20880           <parameter name="text" transfer-ownership="none">
20881             <doc xml:whitespace="preserve">the text to append</doc>
20882             <type name="utf8" c:type="gchar*"/>
20883           </parameter>
20884         </parameters>
20885       </method>
20886       <method name="prepend_text"
20887               c:identifier="gtk_entry_prepend_text"
20888               deprecated="Use gtk_editable_insert_text() instead."
20889               deprecated-version="2.0">
20890         <doc xml:whitespace="preserve">Prepends the given text to the contents of the widget.</doc>
20891         <return-value transfer-ownership="none">
20892           <type name="none" c:type="void"/>
20893         </return-value>
20894         <parameters>
20895           <parameter name="text" transfer-ownership="none">
20896             <doc xml:whitespace="preserve">the text to prepend</doc>
20897             <type name="utf8" c:type="gchar*"/>
20898           </parameter>
20899         </parameters>
20900       </method>
20901       <method name="set_position"
20902               c:identifier="gtk_entry_set_position"
20903               deprecated="Use gtk_editable_set_position() instead."
20904               deprecated-version="2.0">
20905         <doc xml:whitespace="preserve">Sets the cursor position in an entry to the given value.</doc>
20906         <return-value transfer-ownership="none">
20907           <type name="none" c:type="void"/>
20908         </return-value>
20909         <parameters>
20910           <parameter name="position" transfer-ownership="none">
20911             <doc xml:whitespace="preserve">the position of the cursor. The cursor is displayed before the character with the given (base 0) index in the widget. The value must be less than or equal to the number of characters in the widget. A value of -1 indicates that the position should be set after the last character in the entry. Note that this position is in characters, not in bytes.</doc>
20912             <type name="int" c:type="gint"/>
20913           </parameter>
20914         </parameters>
20915       </method>
20916       <method name="select_region"
20917               c:identifier="gtk_entry_select_region"
20918               deprecated="Use gtk_editable_select_region() instead."
20919               deprecated-version="2.0">
20920         <doc xml:whitespace="preserve">Selects a region of text. The characters that are selected are 
20921 those characters at positions from @start_pos up to, but not 
20922 including @end_pos. If @end_pos is negative, then the the characters 
20923 selected will be those characters from @start_pos to the end of 
20924 the text.</doc>
20925         <return-value transfer-ownership="none">
20926           <type name="none" c:type="void"/>
20927         </return-value>
20928         <parameters>
20929           <parameter name="start" transfer-ownership="none">
20930             <doc xml:whitespace="preserve">the starting position</doc>
20931             <type name="int" c:type="gint"/>
20932           </parameter>
20933           <parameter name="end" transfer-ownership="none">
20934             <doc xml:whitespace="preserve">the end position</doc>
20935             <type name="int" c:type="gint"/>
20936           </parameter>
20937         </parameters>
20938       </method>
20939       <method name="set_editable"
20940               c:identifier="gtk_entry_set_editable"
20941               deprecated="Use gtk_editable_set_editable() instead."
20942               deprecated-version="2.0">
20943         <doc xml:whitespace="preserve">Determines if the user can edit the text in the editable
20944 widget or not.</doc>
20945         <return-value transfer-ownership="none">
20946           <type name="none" c:type="void"/>
20947         </return-value>
20948         <parameters>
20949           <parameter name="editable" transfer-ownership="none">
20950             <doc xml:whitespace="preserve">%TRUE if the user is allowed to edit the text in the widget</doc>
20951             <type name="boolean" c:type="gboolean"/>
20952           </parameter>
20953         </parameters>
20954       </method>
20955       <property name="activates-default"
20956                 writable="1"
20957                 transfer-ownership="none">
20958         <type name="boolean" c:type="gboolean"/>
20959       </property>
20960       <property name="buffer"
20961                 writable="1"
20962                 construct="1"
20963                 transfer-ownership="none">
20964         <type name="EntryBuffer" c:type="GtkEntryBuffer"/>
20965       </property>
20966       <property name="caps-lock-warning"
20967                 writable="1"
20968                 transfer-ownership="none">
20969         <type name="boolean" c:type="gboolean"/>
20970       </property>
20971       <property name="cursor-position" transfer-ownership="none">
20972         <type name="int" c:type="gint"/>
20973       </property>
20974       <property name="editable" writable="1" transfer-ownership="none">
20975         <type name="boolean" c:type="gboolean"/>
20976       </property>
20977       <property name="has-frame" writable="1" transfer-ownership="none">
20978         <type name="boolean" c:type="gboolean"/>
20979       </property>
20980       <property name="im-module"
20981                 version="2.16"
20982                 writable="1"
20983                 transfer-ownership="none">
20984         <doc xml:whitespace="preserve">Which IM (input method) module should be used for this entry. 
20985 See #GtkIMContext.
20986 Setting this to a non-%NULL value overrides the
20987 system-wide IM module setting. See the GtkSettings 
20988 #GtkSettings:gtk-im-module property.</doc>
20989         <type name="utf8" c:type="gchararray"/>
20990       </property>
20991       <property name="inner-border"
20992                 version="2.10"
20993                 writable="1"
20994                 transfer-ownership="none">
20995         <doc xml:whitespace="preserve">Sets the text area's border between the text and the frame.</doc>
20996         <type name="Border" c:type="GtkBorder"/>
20997       </property>
20998       <property name="invisible-char"
20999                 version="2.18"
21000                 writable="1"
21001                 transfer-ownership="none">
21002         <doc xml:whitespace="preserve">The invisible character is used when masking entry contents (in
21003 \"password mode\")"). When it is not explicitly set with the
21004 #GtkEntry::invisible-char property, GTK+ determines the character
21005 to use from a list of possible candidates, depending on availability
21006 in the current font.
21007 This style property allows the theme to prepend a character
21008 to the list of candidates.</doc>
21009         <type name="uint" c:type="guint"/>
21010       </property>
21011       <property name="invisible-char-set"
21012                 version="2.16"
21013                 writable="1"
21014                 transfer-ownership="none">
21015         <doc xml:whitespace="preserve">Whether the invisible char has been set for the #GtkEntry.</doc>
21016         <type name="boolean" c:type="gboolean"/>
21017       </property>
21018       <property name="max-length" writable="1" transfer-ownership="none">
21019         <type name="int" c:type="gint"/>
21020       </property>
21021       <property name="overwrite-mode"
21022                 version="2.14"
21023                 writable="1"
21024                 transfer-ownership="none">
21025         <doc xml:whitespace="preserve">If text is overwritten when typing in the #GtkEntry.</doc>
21026         <type name="boolean" c:type="gboolean"/>
21027       </property>
21028       <property name="primary-icon-activatable"
21029                 version="2.16"
21030                 writable="1"
21031                 transfer-ownership="none">
21032         <doc xml:whitespace="preserve">Whether the primary icon is activatable.
21033 GTK+ emits the #GtkEntry::icon-press and #GtkEntry::icon-release 
21034 signals only on sensitive, activatable icons. 
21035 Sensitive, but non-activatable icons can be used for purely 
21036 informational purposes.</doc>
21037         <type name="boolean" c:type="gboolean"/>
21038       </property>
21039       <property name="primary-icon-gicon"
21040                 version="2.16"
21041                 writable="1"
21042                 transfer-ownership="none">
21043         <doc xml:whitespace="preserve">The #GIcon to use for the primary icon for the entry.</doc>
21044         <type name="Gio.Icon" c:type="GIcon"/>
21045       </property>
21046       <property name="primary-icon-name"
21047                 version="2.16"
21048                 writable="1"
21049                 transfer-ownership="none">
21050         <doc xml:whitespace="preserve">The icon name to use for the primary icon for the entry.</doc>
21051         <type name="utf8" c:type="gchararray"/>
21052       </property>
21053       <property name="primary-icon-pixbuf"
21054                 version="2.16"
21055                 writable="1"
21056                 transfer-ownership="none">
21057         <doc xml:whitespace="preserve">A pixbuf to use as the primary icon for the entry.</doc>
21058         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf"/>
21059       </property>
21060       <property name="primary-icon-sensitive"
21061                 version="2.16"
21062                 writable="1"
21063                 transfer-ownership="none">
21064         <doc xml:whitespace="preserve">Whether the primary icon is sensitive.
21065 An insensitive icon appears grayed out. GTK+ does not emit the 
21066 #GtkEntry::icon-press and #GtkEntry::icon-release signals and 
21067 does not allow DND from insensitive icons.
21068 An icon should be set insensitive if the action that would trigger
21069 when clicked is currently not available.</doc>
21070         <type name="boolean" c:type="gboolean"/>
21071       </property>
21072       <property name="primary-icon-stock"
21073                 version="2.16"
21074                 writable="1"
21075                 transfer-ownership="none">
21076         <doc xml:whitespace="preserve">The stock id to use for the primary icon for the entry.</doc>
21077         <type name="utf8" c:type="gchararray"/>
21078       </property>
21079       <property name="primary-icon-storage-type"
21080                 version="2.16"
21081                 transfer-ownership="none">
21082         <doc xml:whitespace="preserve">The representation which is used for the primary icon of the entry.</doc>
21083         <type name="ImageType" c:type="GtkImageType"/>
21084       </property>
21085       <property name="primary-icon-tooltip-markup"
21086                 version="2.16"
21087                 writable="1"
21088                 transfer-ownership="none">
21089         <doc xml:whitespace="preserve">The contents of the tooltip on the primary icon, which is marked up
21090 with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup 
21091 language&lt;/link&gt;.
21092 Also see gtk_entry_set_icon_tooltip_markup().</doc>
21093         <type name="utf8" c:type="gchararray"/>
21094       </property>
21095       <property name="primary-icon-tooltip-text"
21096                 version="2.16"
21097                 writable="1"
21098                 transfer-ownership="none">
21099         <doc xml:whitespace="preserve">The contents of the tooltip on the primary icon.
21100 Also see gtk_entry_set_icon_tooltip_text().</doc>
21101         <type name="utf8" c:type="gchararray"/>
21102       </property>
21103       <property name="progress-fraction"
21104                 version="2.16"
21105                 writable="1"
21106                 transfer-ownership="none">
21107         <doc xml:whitespace="preserve">The current fraction of the task that's been completed.</doc>
21108         <type name="double" c:type="gdouble"/>
21109       </property>
21110       <property name="progress-pulse-step"
21111                 version="2.16"
21112                 writable="1"
21113                 transfer-ownership="none">
21114         <doc xml:whitespace="preserve">The fraction of total entry width to move the progress
21115 bouncing block for each call to gtk_entry_progress_pulse().</doc>
21116         <type name="double" c:type="gdouble"/>
21117       </property>
21118       <property name="scroll-offset" transfer-ownership="none">
21119         <type name="int" c:type="gint"/>
21120       </property>
21121       <property name="secondary-icon-activatable"
21122                 version="2.16"
21123                 writable="1"
21124                 transfer-ownership="none">
21125         <doc xml:whitespace="preserve">Whether the secondary icon is activatable.
21126 GTK+ emits the #GtkEntry::icon-press and #GtkEntry::icon-release 
21127 signals only on sensitive, activatable icons.
21128 Sensitive, but non-activatable icons can be used for purely 
21129 informational purposes.</doc>
21130         <type name="boolean" c:type="gboolean"/>
21131       </property>
21132       <property name="secondary-icon-gicon"
21133                 version="2.16"
21134                 writable="1"
21135                 transfer-ownership="none">
21136         <doc xml:whitespace="preserve">The #GIcon to use for the secondary icon for the entry.</doc>
21137         <type name="Gio.Icon" c:type="GIcon"/>
21138       </property>
21139       <property name="secondary-icon-name"
21140                 version="2.16"
21141                 writable="1"
21142                 transfer-ownership="none">
21143         <doc xml:whitespace="preserve">The icon name to use for the secondary icon for the entry.</doc>
21144         <type name="utf8" c:type="gchararray"/>
21145       </property>
21146       <property name="secondary-icon-pixbuf"
21147                 version="2.16"
21148                 writable="1"
21149                 transfer-ownership="none">
21150         <doc xml:whitespace="preserve">An pixbuf to use as the secondary icon for the entry.</doc>
21151         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf"/>
21152       </property>
21153       <property name="secondary-icon-sensitive"
21154                 version="2.16"
21155                 writable="1"
21156                 transfer-ownership="none">
21157         <doc xml:whitespace="preserve">Whether the secondary icon is sensitive.
21158 An insensitive icon appears grayed out. GTK+ does not emit the 
21159 #GtkEntry::icon-press and #GtkEntry::icon-release signals and 
21160 does not allow DND from insensitive icons.
21161 An icon should be set insensitive if the action that would trigger
21162 when clicked is currently not available.</doc>
21163         <type name="boolean" c:type="gboolean"/>
21164       </property>
21165       <property name="secondary-icon-stock"
21166                 version="2.16"
21167                 writable="1"
21168                 transfer-ownership="none">
21169         <doc xml:whitespace="preserve">The stock id to use for the secondary icon for the entry.</doc>
21170         <type name="utf8" c:type="gchararray"/>
21171       </property>
21172       <property name="secondary-icon-storage-type"
21173                 version="2.16"
21174                 transfer-ownership="none">
21175         <doc xml:whitespace="preserve">The representation which is used for the secondary icon of the entry.</doc>
21176         <type name="ImageType" c:type="GtkImageType"/>
21177       </property>
21178       <property name="secondary-icon-tooltip-markup"
21179                 version="2.16"
21180                 writable="1"
21181                 transfer-ownership="none">
21182         <doc xml:whitespace="preserve">The contents of the tooltip on the secondary icon, which is marked up
21183 with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup 
21184 language&lt;/link&gt;.
21185 Also see gtk_entry_set_icon_tooltip_markup().</doc>
21186         <type name="utf8" c:type="gchararray"/>
21187       </property>
21188       <property name="secondary-icon-tooltip-text"
21189                 version="2.16"
21190                 writable="1"
21191                 transfer-ownership="none">
21192         <doc xml:whitespace="preserve">The contents of the tooltip on the secondary icon.
21193 Also see gtk_entry_set_icon_tooltip_text().</doc>
21194         <type name="utf8" c:type="gchararray"/>
21195       </property>
21196       <property name="selection-bound" transfer-ownership="none">
21197         <type name="int" c:type="gint"/>
21198       </property>
21199       <property name="shadow-type"
21200                 version="2.12"
21201                 writable="1"
21202                 transfer-ownership="none">
21203         <doc xml:whitespace="preserve">Which kind of shadow to draw around the entry when 
21204 #GtkEntry:has-frame is set to %TRUE.</doc>
21205         <type name="ShadowType" c:type="GtkShadowType"/>
21206       </property>
21207       <property name="text" writable="1" transfer-ownership="none">
21208         <type name="utf8" c:type="gchararray"/>
21209       </property>
21210       <property name="text-length" version="2.14" transfer-ownership="none">
21211         <doc xml:whitespace="preserve">The length of the text in the #GtkEntry.</doc>
21212         <type name="uint" c:type="guint"/>
21213       </property>
21214       <property name="truncate-multiline"
21215                 version="2.10"
21216                 writable="1"
21217                 transfer-ownership="none">
21218         <doc xml:whitespace="preserve">When %TRUE, pasted multi-line text is truncated to the first line.</doc>
21219         <type name="boolean" c:type="gboolean"/>
21220       </property>
21221       <property name="visibility" writable="1" transfer-ownership="none">
21222         <type name="boolean" c:type="gboolean"/>
21223       </property>
21224       <property name="width-chars" writable="1" transfer-ownership="none">
21225         <type name="int" c:type="gint"/>
21226       </property>
21227       <property name="xalign"
21228                 version="2.4"
21229                 writable="1"
21230                 transfer-ownership="none">
21231         <doc xml:whitespace="preserve">The horizontal alignment, from 0 (left) to 1 (right). 
21232 Reversed for RTL layouts.</doc>
21233         <type name="float" c:type="gfloat"/>
21234       </property>
21235       <field name="widget">
21236         <type name="Widget" c:type="GtkWidget"/>
21237       </field>
21238       <field name="text">
21239         <type name="utf8" c:type="gchar*"/>
21240       </field>
21241       <field name="editable" bits="1">
21242         <type name="uint" c:type="guint"/>
21243       </field>
21244       <field name="visible" bits="1">
21245         <type name="uint" c:type="guint"/>
21246       </field>
21247       <field name="overwrite_mode" bits="1">
21248         <type name="uint" c:type="guint"/>
21249       </field>
21250       <field name="in_drag" bits="1">
21251         <type name="uint" c:type="guint"/>
21252       </field>
21253       <field name="text_length">
21254         <type name="uint16" c:type="guint16"/>
21255       </field>
21256       <field name="text_max_length">
21257         <type name="uint16" c:type="guint16"/>
21258       </field>
21259       <field name="text_area">
21260         <type name="Gdk.Window" c:type="GdkWindow*"/>
21261       </field>
21262       <field name="im_context">
21263         <type name="IMContext" c:type="GtkIMContext*"/>
21264       </field>
21265       <field name="popup_menu">
21266         <type name="Widget" c:type="GtkWidget*"/>
21267       </field>
21268       <field name="current_pos">
21269         <type name="int" c:type="gint"/>
21270       </field>
21271       <field name="selection_bound">
21272         <type name="int" c:type="gint"/>
21273       </field>
21274       <field name="cached_layout">
21275         <type name="Pango.Layout" c:type="PangoLayout*"/>
21276       </field>
21277       <field name="cache_includes_preedit" bits="1">
21278         <type name="uint" c:type="guint"/>
21279       </field>
21280       <field name="need_im_reset" bits="1">
21281         <type name="uint" c:type="guint"/>
21282       </field>
21283       <field name="has_frame" bits="1">
21284         <type name="uint" c:type="guint"/>
21285       </field>
21286       <field name="activates_default" bits="1">
21287         <type name="uint" c:type="guint"/>
21288       </field>
21289       <field name="cursor_visible" bits="1">
21290         <type name="uint" c:type="guint"/>
21291       </field>
21292       <field name="in_click" bits="1">
21293         <type name="uint" c:type="guint"/>
21294       </field>
21295       <field name="is_cell_renderer" bits="1">
21296         <type name="uint" c:type="guint"/>
21297       </field>
21298       <field name="editing_canceled" bits="1">
21299         <type name="uint" c:type="guint"/>
21300       </field>
21301       <field name="mouse_cursor_obscured" bits="1">
21302         <type name="uint" c:type="guint"/>
21303       </field>
21304       <field name="select_words" bits="1">
21305         <type name="uint" c:type="guint"/>
21306       </field>
21307       <field name="select_lines" bits="1">
21308         <type name="uint" c:type="guint"/>
21309       </field>
21310       <field name="resolved_dir" bits="4">
21311         <type name="uint" c:type="guint"/>
21312       </field>
21313       <field name="truncate_multiline" bits="1">
21314         <type name="uint" c:type="guint"/>
21315       </field>
21316       <field name="button">
21317         <type name="uint" c:type="guint"/>
21318       </field>
21319       <field name="blink_timeout">
21320         <type name="uint" c:type="guint"/>
21321       </field>
21322       <field name="recompute_idle">
21323         <type name="uint" c:type="guint"/>
21324       </field>
21325       <field name="scroll_offset">
21326         <type name="int" c:type="gint"/>
21327       </field>
21328       <field name="ascent">
21329         <type name="int" c:type="gint"/>
21330       </field>
21331       <field name="descent">
21332         <type name="int" c:type="gint"/>
21333       </field>
21334       <field name="x_text_size">
21335         <type name="uint16" c:type="guint16"/>
21336       </field>
21337       <field name="x_n_bytes">
21338         <type name="uint16" c:type="guint16"/>
21339       </field>
21340       <field name="preedit_length">
21341         <type name="uint16" c:type="guint16"/>
21342       </field>
21343       <field name="preedit_cursor">
21344         <type name="uint16" c:type="guint16"/>
21345       </field>
21346       <field name="dnd_position">
21347         <type name="int" c:type="gint"/>
21348       </field>
21349       <field name="drag_start_x">
21350         <type name="int" c:type="gint"/>
21351       </field>
21352       <field name="drag_start_y">
21353         <type name="int" c:type="gint"/>
21354       </field>
21355       <field name="invisible_char">
21356         <type name="GLib.unichar" c:type="gunichar"/>
21357       </field>
21358       <field name="width_chars">
21359         <type name="int" c:type="gint"/>
21360       </field>
21361       <glib:signal name="activate">
21362         <doc xml:whitespace="preserve">A  &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
21363 which gets emitted when the user activates the entry.
21364 Applications should not connect to it, but may emit it with
21365 g_signal_emit_by_name() if they need to control activation 
21366 programmatically.
21367 The default bindings for this signal are all forms of the Enter key.</doc>
21368         <return-value transfer-ownership="full">
21369           <type name="none" c:type="void"/>
21370         </return-value>
21371       </glib:signal>
21372       <glib:signal name="backspace">
21373         <doc xml:whitespace="preserve">The ::backspace signal is a
21374 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
21375 which gets emitted when the user asks for it.
21376 The default bindings for this signal are
21377 Backspace and Shift-Backspace.</doc>
21378         <return-value transfer-ownership="full">
21379           <type name="none" c:type="void"/>
21380         </return-value>
21381       </glib:signal>
21382       <glib:signal name="copy-clipboard">
21383         <doc xml:whitespace="preserve">The ::copy-clipboard signal is a
21384 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
21385 which gets emitted to copy the selection to the clipboard.
21386 The default bindings for this signal are
21387 Ctrl-c and Ctrl-Insert.</doc>
21388         <return-value transfer-ownership="full">
21389           <type name="none" c:type="void"/>
21390         </return-value>
21391       </glib:signal>
21392       <glib:signal name="cut-clipboard">
21393         <doc xml:whitespace="preserve">The ::cut-clipboard signal is a
21394 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
21395 which gets emitted to cut the selection to the clipboard.
21396 The default bindings for this signal are
21397 Ctrl-x and Shift-Delete.</doc>
21398         <return-value transfer-ownership="full">
21399           <type name="none" c:type="void"/>
21400         </return-value>
21401       </glib:signal>
21402       <glib:signal name="delete-from-cursor">
21403         <doc xml:whitespace="preserve">The ::delete-from-cursor signal is a
21404 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
21405 which gets emitted when the user initiates a text deletion.
21406 If the @type is %GTK_DELETE_CHARS, GTK+ deletes the selection
21407 if there is one, otherwise it deletes the requested number
21408 of characters.
21409 The default bindings for this signal are
21410 Delete for deleting a character and Ctrl-Delete for
21411 deleting a word.</doc>
21412         <return-value transfer-ownership="full">
21413           <type name="none" c:type="void"/>
21414         </return-value>
21415         <parameters>
21416           <parameter name="type" transfer-ownership="none">
21417             <doc xml:whitespace="preserve">the granularity of the deletion, as a #GtkDeleteType</doc>
21418             <type name="DeleteType" c:type="GtkDeleteType"/>
21419           </parameter>
21420           <parameter name="count" transfer-ownership="none">
21421             <doc xml:whitespace="preserve">the number of @type units to delete</doc>
21422             <type name="int" c:type="gint"/>
21423           </parameter>
21424         </parameters>
21425       </glib:signal>
21426       <glib:signal name="icon-press" version="2.16">
21427         <doc xml:whitespace="preserve">The ::icon-press signal is emitted when an activatable icon
21428 is clicked.</doc>
21429         <return-value transfer-ownership="full">
21430           <type name="none" c:type="void"/>
21431         </return-value>
21432         <parameters>
21433           <parameter name="icon_pos" transfer-ownership="none">
21434             <doc xml:whitespace="preserve">The position of the clicked icon</doc>
21435             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
21436           </parameter>
21437           <parameter name="event" transfer-ownership="none">
21438             <doc xml:whitespace="preserve">the button press event</doc>
21439             <type name="Gdk.Event" c:type="GdkEvent"/>
21440           </parameter>
21441         </parameters>
21442       </glib:signal>
21443       <glib:signal name="icon-release" version="2.16">
21444         <doc xml:whitespace="preserve">The ::icon-release signal is emitted on the button release from a
21445 mouse click over an activatable icon.</doc>
21446         <return-value transfer-ownership="full">
21447           <type name="none" c:type="void"/>
21448         </return-value>
21449         <parameters>
21450           <parameter name="icon_pos" transfer-ownership="none">
21451             <doc xml:whitespace="preserve">The position of the clicked icon</doc>
21452             <type name="EntryIconPosition" c:type="GtkEntryIconPosition"/>
21453           </parameter>
21454           <parameter name="event" transfer-ownership="none">
21455             <doc xml:whitespace="preserve">the button release event</doc>
21456             <type name="Gdk.Event" c:type="GdkEvent"/>
21457           </parameter>
21458         </parameters>
21459       </glib:signal>
21460       <glib:signal name="insert-at-cursor">
21461         <doc xml:whitespace="preserve">The ::insert-at-cursor signal is a
21462 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
21463 which gets emitted when the user initiates the insertion of a
21464 fixed string at the cursor.
21465 This signal has no default bindings.</doc>
21466         <return-value transfer-ownership="full">
21467           <type name="none" c:type="void"/>
21468         </return-value>
21469         <parameters>
21470           <parameter name="string" transfer-ownership="none">
21471             <doc xml:whitespace="preserve">the string to insert</doc>
21472             <type name="utf8" c:type="gchararray"/>
21473           </parameter>
21474         </parameters>
21475       </glib:signal>
21476       <glib:signal name="move-cursor">
21477         <doc xml:whitespace="preserve">The ::move-cursor signal is a
21478 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
21479 which gets emitted when the user initiates a cursor movement.
21480 If the cursor is not visible in @entry, this signal causes
21481 the viewport to be moved instead.
21482 Applications should not connect to it, but may emit it with
21483 g_signal_emit_by_name() if they need to control the cursor
21484 programmatically.
21485 The default bindings for this signal come in two variants,
21486 the variant with the Shift modifier extends the selection,
21487 the variant without the Shift modifer does not.
21488 There are too many key combinations to list them all here.
21489 &lt;itemizedlist&gt;
21490 &lt;listitem&gt;Arrow keys move by individual characters/lines&lt;/listitem&gt;
21491 &lt;listitem&gt;Ctrl-arrow key combinations move by words/paragraphs&lt;/listitem&gt;
21492 &lt;listitem&gt;Home/End keys move to the ends of the buffer&lt;/listitem&gt;
21493 &lt;/itemizedlist&gt;</doc>
21494         <return-value transfer-ownership="full">
21495           <type name="none" c:type="void"/>
21496         </return-value>
21497         <parameters>
21498           <parameter name="step" transfer-ownership="none">
21499             <doc xml:whitespace="preserve">the granularity of the move, as a #GtkMovementStep</doc>
21500             <type name="MovementStep" c:type="GtkMovementStep"/>
21501           </parameter>
21502           <parameter name="count" transfer-ownership="none">
21503             <doc xml:whitespace="preserve">the number of @step units to move</doc>
21504             <type name="int" c:type="gint"/>
21505           </parameter>
21506           <parameter name="extend_selection" transfer-ownership="none">
21507             <doc xml:whitespace="preserve">%TRUE if the move should extend the selection</doc>
21508             <type name="boolean" c:type="gboolean"/>
21509           </parameter>
21510         </parameters>
21511       </glib:signal>
21512       <glib:signal name="paste-clipboard">
21513         <doc xml:whitespace="preserve">The ::paste-clipboard signal is a
21514 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
21515 which gets emitted to paste the contents of the clipboard
21516 into the text view.
21517 The default bindings for this signal are
21518 Ctrl-v and Shift-Insert.</doc>
21519         <return-value transfer-ownership="full">
21520           <type name="none" c:type="void"/>
21521         </return-value>
21522       </glib:signal>
21523       <glib:signal name="populate-popup">
21524         <doc xml:whitespace="preserve">The ::populate-popup signal gets emitted before showing the 
21525 context menu of the entry. 
21526 If you need to add items to the context menu, connect
21527 to this signal and append your menuitems to the @menu.</doc>
21528         <return-value transfer-ownership="full">
21529           <type name="none" c:type="void"/>
21530         </return-value>
21531         <parameters>
21532           <parameter name="menu" transfer-ownership="none">
21533             <doc xml:whitespace="preserve">the menu that is being populated</doc>
21534             <type name="Menu" c:type="GtkMenu"/>
21535           </parameter>
21536         </parameters>
21537       </glib:signal>
21538       <glib:signal name="preedit-changed" version="2.20">
21539         <doc xml:whitespace="preserve">If an input method is used, the typed text will not immediately
21540 be committed to the buffer. So if you are interested in the text,
21541 connect to this signal.</doc>
21542         <return-value transfer-ownership="full">
21543           <type name="none" c:type="void"/>
21544         </return-value>
21545         <parameters>
21546           <parameter name="preedit" transfer-ownership="none">
21547             <doc xml:whitespace="preserve">the current preedit string</doc>
21548             <type name="utf8" c:type="gchararray"/>
21549           </parameter>
21550         </parameters>
21551       </glib:signal>
21552       <glib:signal name="toggle-overwrite">
21553         <doc xml:whitespace="preserve">The ::toggle-overwrite signal is a
21554 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
21555 which gets emitted to toggle the overwrite mode of the entry.
21556 The default bindings for this signal is Insert.</doc>
21557         <return-value transfer-ownership="full">
21558           <type name="none" c:type="void"/>
21559         </return-value>
21560       </glib:signal>
21561     </class>
21562     <class name="EntryBuffer"
21563            c:type="GtkEntryBuffer"
21564            parent="GObject.Object"
21565            glib:type-name="GtkEntryBuffer"
21566            glib:get-type="gtk_entry_buffer_get_type"
21567            glib:type-struct="EntryBufferClass">
21568       <constructor name="new"
21569                    c:identifier="gtk_entry_buffer_new"
21570                    version="2.18">
21571         <doc xml:whitespace="preserve">Create a new GtkEntryBuffer object.
21572 Optionally, specify initial text to set in the buffer.</doc>
21573         <return-value transfer-ownership="full">
21574           <doc xml:whitespace="preserve">A new GtkEntryBuffer object.</doc>
21575           <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
21576         </return-value>
21577         <parameters>
21578           <parameter name="initial_chars"
21579                      transfer-ownership="none"
21580                      allow-none="1">
21581             <doc xml:whitespace="preserve">initial buffer text, or %NULL</doc>
21582             <type name="utf8" c:type="gchar*"/>
21583           </parameter>
21584           <parameter name="n_initial_chars" transfer-ownership="none">
21585             <doc xml:whitespace="preserve">number of characters in @initial_chars, or -1</doc>
21586             <type name="int" c:type="gint"/>
21587           </parameter>
21588         </parameters>
21589       </constructor>
21590       <virtual-method name="get_text">
21591         <return-value transfer-ownership="none">
21592           <type name="utf8" c:type="gchar*"/>
21593         </return-value>
21594         <parameters>
21595           <parameter name="n_bytes"
21596                      direction="out"
21597                      caller-allocates="0"
21598                      transfer-ownership="full">
21599             <type name="gsize" c:type="gsize*"/>
21600           </parameter>
21601         </parameters>
21602       </virtual-method>
21603       <virtual-method name="get_length" invoker="get_length" version="2.18">
21604         <doc xml:whitespace="preserve">Retrieves the length in characters of the buffer.</doc>
21605         <return-value transfer-ownership="none">
21606           <doc xml:whitespace="preserve">The number of characters in the buffer.</doc>
21607           <type name="uint" c:type="guint"/>
21608         </return-value>
21609       </virtual-method>
21610       <virtual-method name="insert_text" invoker="insert_text" version="2.18">
21611         <doc xml:whitespace="preserve">Inserts @n_chars characters of @chars into the contents of the
21612 buffer, at position @position.
21613 If @n_chars is negative, then characters from chars will be inserted
21614 until a null-terminator is found. If @position or @n_chars are out of
21615 bounds, or the maximum buffer text length is exceeded, then they are
21616 coerced to sane values.
21617 Note that the position and length are in characters, not in bytes.</doc>
21618         <return-value transfer-ownership="none">
21619           <doc xml:whitespace="preserve">The number of characters actually inserted.</doc>
21620           <type name="uint" c:type="guint"/>
21621         </return-value>
21622         <parameters>
21623           <parameter name="position" transfer-ownership="none">
21624             <doc xml:whitespace="preserve">the position at which to insert text.</doc>
21625             <type name="uint" c:type="guint"/>
21626           </parameter>
21627           <parameter name="chars" transfer-ownership="none">
21628             <doc xml:whitespace="preserve">the text to insert into the buffer.</doc>
21629             <type name="utf8" c:type="gchar*"/>
21630           </parameter>
21631           <parameter name="n_chars" transfer-ownership="none">
21632             <doc xml:whitespace="preserve">the length of the text in characters, or -1</doc>
21633             <type name="uint" c:type="guint"/>
21634           </parameter>
21635         </parameters>
21636       </virtual-method>
21637       <virtual-method name="delete_text" invoker="delete_text" version="2.18">
21638         <doc xml:whitespace="preserve">Deletes a sequence of characters from the buffer. @n_chars characters are
21639 deleted starting at @position. If @n_chars is negative, then all characters
21640 until the end of the text are deleted.
21641 If @position or @n_chars are out of bounds, then they are coerced to sane
21642 values.
21643 Note that the positions are specified in characters, not bytes.</doc>
21644         <return-value transfer-ownership="none">
21645           <doc xml:whitespace="preserve">The number of characters deleted.</doc>
21646           <type name="uint" c:type="guint"/>
21647         </return-value>
21648         <parameters>
21649           <parameter name="position" transfer-ownership="none">
21650             <doc xml:whitespace="preserve">position at which to delete text</doc>
21651             <type name="uint" c:type="guint"/>
21652           </parameter>
21653           <parameter name="n_chars" transfer-ownership="none">
21654             <doc xml:whitespace="preserve">number of characters to delete</doc>
21655             <type name="uint" c:type="guint"/>
21656           </parameter>
21657         </parameters>
21658       </virtual-method>
21659       <method name="get_bytes"
21660               c:identifier="gtk_entry_buffer_get_bytes"
21661               version="2.18">
21662         <doc xml:whitespace="preserve">Retrieves the length in bytes of the buffer.
21663 See gtk_entry_buffer_get_length().</doc>
21664         <return-value transfer-ownership="none">
21665           <doc xml:whitespace="preserve">The byte length of the buffer.</doc>
21666           <type name="gsize" c:type="gsize"/>
21667         </return-value>
21668       </method>
21669       <method name="get_length"
21670               c:identifier="gtk_entry_buffer_get_length"
21671               version="2.18">
21672         <doc xml:whitespace="preserve">Retrieves the length in characters of the buffer.</doc>
21673         <return-value transfer-ownership="none">
21674           <doc xml:whitespace="preserve">The number of characters in the buffer.</doc>
21675           <type name="uint" c:type="guint"/>
21676         </return-value>
21677       </method>
21678       <method name="get_text"
21679               c:identifier="gtk_entry_buffer_get_text"
21680               version="2.18">
21681         <doc xml:whitespace="preserve">Retrieves the contents of the buffer.
21682 The memory pointer returned by this call will not change
21683 unless this object emits a signal, or is finalized.
21684 string. This string points to internally allocated
21685 storage in the buffer and must not be freed, modified or
21686 stored.</doc>
21687         <return-value transfer-ownership="none">
21688           <doc xml:whitespace="preserve">a pointer to the contents of the widget as a</doc>
21689           <type name="utf8" c:type="gchar*"/>
21690         </return-value>
21691       </method>
21692       <method name="set_text"
21693               c:identifier="gtk_entry_buffer_set_text"
21694               version="2.18">
21695         <doc xml:whitespace="preserve">Sets the text in the buffer.
21696 This is roughly equivalent to calling gtk_entry_buffer_delete_text()
21697 and gtk_entry_buffer_insert_text().
21698 Note that @n_chars is in characters, not in bytes.</doc>
21699         <return-value transfer-ownership="none">
21700           <type name="none" c:type="void"/>
21701         </return-value>
21702         <parameters>
21703           <parameter name="chars" transfer-ownership="none">
21704             <doc xml:whitespace="preserve">the new text</doc>
21705             <type name="utf8" c:type="gchar*"/>
21706           </parameter>
21707           <parameter name="n_chars" transfer-ownership="none">
21708             <doc xml:whitespace="preserve">the number of characters in @text, or -1</doc>
21709             <type name="int" c:type="gint"/>
21710           </parameter>
21711         </parameters>
21712       </method>
21713       <method name="set_max_length"
21714               c:identifier="gtk_entry_buffer_set_max_length"
21715               version="2.18">
21716         <doc xml:whitespace="preserve">Sets the maximum allowed length of the contents of the buffer. If
21717 the current contents are longer than the given length, then they
21718 will be truncated to fit.</doc>
21719         <return-value transfer-ownership="none">
21720           <type name="none" c:type="void"/>
21721         </return-value>
21722         <parameters>
21723           <parameter name="max_length" transfer-ownership="none">
21724             <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>
21725             <type name="int" c:type="gint"/>
21726           </parameter>
21727         </parameters>
21728       </method>
21729       <method name="get_max_length"
21730               c:identifier="gtk_entry_buffer_get_max_length"
21731               version="2.18">
21732         <doc xml:whitespace="preserve">Retrieves the maximum allowed length of the text in
21733 in #GtkEntryBuffer, or 0 if there is no maximum.</doc>
21734         <return-value transfer-ownership="none">
21735           <doc xml:whitespace="preserve">the maximum allowed number of characters</doc>
21736           <type name="int" c:type="gint"/>
21737         </return-value>
21738       </method>
21739       <method name="insert_text"
21740               c:identifier="gtk_entry_buffer_insert_text"
21741               version="2.18">
21742         <doc xml:whitespace="preserve">Inserts @n_chars characters of @chars into the contents of the
21743 buffer, at position @position.
21744 If @n_chars is negative, then characters from chars will be inserted
21745 until a null-terminator is found. If @position or @n_chars are out of
21746 bounds, or the maximum buffer text length is exceeded, then they are
21747 coerced to sane values.
21748 Note that the position and length are in characters, not in bytes.</doc>
21749         <return-value transfer-ownership="none">
21750           <doc xml:whitespace="preserve">The number of characters actually inserted.</doc>
21751           <type name="uint" c:type="guint"/>
21752         </return-value>
21753         <parameters>
21754           <parameter name="position" transfer-ownership="none">
21755             <doc xml:whitespace="preserve">the position at which to insert text.</doc>
21756             <type name="uint" c:type="guint"/>
21757           </parameter>
21758           <parameter name="chars" transfer-ownership="none">
21759             <doc xml:whitespace="preserve">the text to insert into the buffer.</doc>
21760             <type name="utf8" c:type="gchar*"/>
21761           </parameter>
21762           <parameter name="n_chars" transfer-ownership="none">
21763             <doc xml:whitespace="preserve">the length of the text in characters, or -1</doc>
21764             <type name="int" c:type="gint"/>
21765           </parameter>
21766         </parameters>
21767       </method>
21768       <method name="delete_text"
21769               c:identifier="gtk_entry_buffer_delete_text"
21770               version="2.18">
21771         <doc xml:whitespace="preserve">Deletes a sequence of characters from the buffer. @n_chars characters are
21772 deleted starting at @position. If @n_chars is negative, then all characters
21773 until the end of the text are deleted.
21774 If @position or @n_chars are out of bounds, then they are coerced to sane
21775 values.
21776 Note that the positions are specified in characters, not bytes.</doc>
21777         <return-value transfer-ownership="none">
21778           <doc xml:whitespace="preserve">The number of characters deleted.</doc>
21779           <type name="uint" c:type="guint"/>
21780         </return-value>
21781         <parameters>
21782           <parameter name="position" transfer-ownership="none">
21783             <doc xml:whitespace="preserve">position at which to delete text</doc>
21784             <type name="uint" c:type="guint"/>
21785           </parameter>
21786           <parameter name="n_chars" transfer-ownership="none">
21787             <doc xml:whitespace="preserve">number of characters to delete</doc>
21788             <type name="int" c:type="gint"/>
21789           </parameter>
21790         </parameters>
21791       </method>
21792       <method name="emit_inserted_text"
21793               c:identifier="gtk_entry_buffer_emit_inserted_text"
21794               version="2.18">
21795         <doc xml:whitespace="preserve">Used when subclassing #GtkEntryBuffer</doc>
21796         <return-value transfer-ownership="none">
21797           <type name="none" c:type="void"/>
21798         </return-value>
21799         <parameters>
21800           <parameter name="position" transfer-ownership="none">
21801             <doc xml:whitespace="preserve">position at which text was inserted</doc>
21802             <type name="uint" c:type="guint"/>
21803           </parameter>
21804           <parameter name="chars" transfer-ownership="none">
21805             <doc xml:whitespace="preserve">text that was inserted</doc>
21806             <type name="utf8" c:type="gchar*"/>
21807           </parameter>
21808           <parameter name="n_chars" transfer-ownership="none">
21809             <doc xml:whitespace="preserve">number of characters inserted</doc>
21810             <type name="uint" c:type="guint"/>
21811           </parameter>
21812         </parameters>
21813       </method>
21814       <method name="emit_deleted_text"
21815               c:identifier="gtk_entry_buffer_emit_deleted_text"
21816               version="2.18">
21817         <doc xml:whitespace="preserve">Used when subclassing #GtkEntryBuffer</doc>
21818         <return-value transfer-ownership="none">
21819           <type name="none" c:type="void"/>
21820         </return-value>
21821         <parameters>
21822           <parameter name="position" transfer-ownership="none">
21823             <doc xml:whitespace="preserve">position at which text was deleted</doc>
21824             <type name="uint" c:type="guint"/>
21825           </parameter>
21826           <parameter name="n_chars" transfer-ownership="none">
21827             <doc xml:whitespace="preserve">number of characters deleted</doc>
21828             <type name="uint" c:type="guint"/>
21829           </parameter>
21830         </parameters>
21831       </method>
21832       <property name="length" version="2.18" transfer-ownership="none">
21833         <doc xml:whitespace="preserve">The length (in characters) of the text in buffer.</doc>
21834         <type name="uint" c:type="guint"/>
21835       </property>
21836       <property name="max-length"
21837                 version="2.18"
21838                 writable="1"
21839                 transfer-ownership="none">
21840         <doc xml:whitespace="preserve">The maximum length (in characters) of the text in the buffer.</doc>
21841         <type name="int" c:type="gint"/>
21842       </property>
21843       <property name="text"
21844                 version="2.18"
21845                 writable="1"
21846                 transfer-ownership="none">
21847         <doc xml:whitespace="preserve">The contents of the buffer.</doc>
21848         <type name="utf8" c:type="gchararray"/>
21849       </property>
21850       <field name="parent_instance">
21851         <type name="GObject.Object" c:type="GObject"/>
21852       </field>
21853       <field name="priv">
21854         <type name="EntryBufferPrivate" c:type="GtkEntryBufferPrivate*"/>
21855       </field>
21856       <glib:signal name="deleted-text">
21857         <return-value transfer-ownership="full">
21858           <type name="none" c:type="void"/>
21859         </return-value>
21860         <parameters>
21861           <parameter name="object" transfer-ownership="none">
21862             <type name="uint" c:type="guint"/>
21863           </parameter>
21864           <parameter name="p0" transfer-ownership="none">
21865             <type name="uint" c:type="guint"/>
21866           </parameter>
21867         </parameters>
21868       </glib:signal>
21869       <glib:signal name="inserted-text">
21870         <return-value transfer-ownership="full">
21871           <type name="none" c:type="void"/>
21872         </return-value>
21873         <parameters>
21874           <parameter name="object" transfer-ownership="none">
21875             <type name="uint" c:type="guint"/>
21876           </parameter>
21877           <parameter name="p0" transfer-ownership="none">
21878             <type name="utf8" c:type="gchararray"/>
21879           </parameter>
21880           <parameter name="p1" transfer-ownership="none">
21881             <type name="uint" c:type="guint"/>
21882           </parameter>
21883         </parameters>
21884       </glib:signal>
21885     </class>
21886     <record name="EntryBufferClass"
21887             c:type="GtkEntryBufferClass"
21888             glib:is-gtype-struct-for="EntryBuffer">
21889       <field name="parent_class">
21890         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
21891       </field>
21892       <field name="inserted_text">
21893         <callback name="inserted_text" c:type="inserted_text">
21894           <return-value transfer-ownership="none">
21895             <type name="none" c:type="void"/>
21896           </return-value>
21897           <parameters>
21898             <parameter name="buffer" transfer-ownership="none">
21899               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
21900             </parameter>
21901             <parameter name="position" transfer-ownership="none">
21902               <type name="uint" c:type="guint"/>
21903             </parameter>
21904             <parameter name="chars" transfer-ownership="none">
21905               <type name="utf8" c:type="gchar*"/>
21906             </parameter>
21907             <parameter name="n_chars" transfer-ownership="none">
21908               <type name="uint" c:type="guint"/>
21909             </parameter>
21910           </parameters>
21911         </callback>
21912       </field>
21913       <field name="deleted_text">
21914         <callback name="deleted_text" c:type="deleted_text">
21915           <return-value transfer-ownership="none">
21916             <type name="none" c:type="void"/>
21917           </return-value>
21918           <parameters>
21919             <parameter name="buffer" transfer-ownership="none">
21920               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
21921             </parameter>
21922             <parameter name="position" transfer-ownership="none">
21923               <type name="uint" c:type="guint"/>
21924             </parameter>
21925             <parameter name="n_chars" transfer-ownership="none">
21926               <type name="uint" c:type="guint"/>
21927             </parameter>
21928           </parameters>
21929         </callback>
21930       </field>
21931       <field name="get_text">
21932         <callback name="get_text" c:type="get_text">
21933           <return-value transfer-ownership="none">
21934             <type name="utf8" c:type="gchar*"/>
21935           </return-value>
21936           <parameters>
21937             <parameter name="buffer" transfer-ownership="none">
21938               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
21939             </parameter>
21940             <parameter name="n_bytes"
21941                        direction="out"
21942                        caller-allocates="0"
21943                        transfer-ownership="full">
21944               <type name="gsize" c:type="gsize*"/>
21945             </parameter>
21946           </parameters>
21947         </callback>
21948       </field>
21949       <field name="get_length">
21950         <callback name="get_length" c:type="get_length">
21951           <return-value transfer-ownership="none">
21952             <doc xml:whitespace="preserve">The number of characters in the buffer.</doc>
21953             <type name="uint" c:type="guint"/>
21954           </return-value>
21955           <parameters>
21956             <parameter name="buffer" transfer-ownership="none">
21957               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
21958             </parameter>
21959           </parameters>
21960         </callback>
21961       </field>
21962       <field name="insert_text">
21963         <callback name="insert_text" c:type="insert_text">
21964           <return-value transfer-ownership="none">
21965             <doc xml:whitespace="preserve">The number of characters actually inserted.</doc>
21966             <type name="uint" c:type="guint"/>
21967           </return-value>
21968           <parameters>
21969             <parameter name="buffer" transfer-ownership="none">
21970               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
21971             </parameter>
21972             <parameter name="position" transfer-ownership="none">
21973               <doc xml:whitespace="preserve">the position at which to insert text.</doc>
21974               <type name="uint" c:type="guint"/>
21975             </parameter>
21976             <parameter name="chars" transfer-ownership="none">
21977               <doc xml:whitespace="preserve">the text to insert into the buffer.</doc>
21978               <type name="utf8" c:type="gchar*"/>
21979             </parameter>
21980             <parameter name="n_chars" transfer-ownership="none">
21981               <doc xml:whitespace="preserve">the length of the text in characters, or -1</doc>
21982               <type name="uint" c:type="guint"/>
21983             </parameter>
21984           </parameters>
21985         </callback>
21986       </field>
21987       <field name="delete_text">
21988         <callback name="delete_text" c:type="delete_text">
21989           <return-value transfer-ownership="none">
21990             <doc xml:whitespace="preserve">The number of characters deleted.</doc>
21991             <type name="uint" c:type="guint"/>
21992           </return-value>
21993           <parameters>
21994             <parameter name="buffer" transfer-ownership="none">
21995               <type name="EntryBuffer" c:type="GtkEntryBuffer*"/>
21996             </parameter>
21997             <parameter name="position" transfer-ownership="none">
21998               <doc xml:whitespace="preserve">position at which to delete text</doc>
21999               <type name="uint" c:type="guint"/>
22000             </parameter>
22001             <parameter name="n_chars" transfer-ownership="none">
22002               <doc xml:whitespace="preserve">number of characters to delete</doc>
22003               <type name="uint" c:type="guint"/>
22004             </parameter>
22005           </parameters>
22006         </callback>
22007       </field>
22008       <field name="gtk_reserved0">
22009         <callback name="gtk_reserved0" c:type="_gtk_reserved0">
22010           <return-value transfer-ownership="none">
22011             <type name="none" c:type="void"/>
22012           </return-value>
22013         </callback>
22014       </field>
22015       <field name="gtk_reserved1">
22016         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
22017           <return-value transfer-ownership="none">
22018             <type name="none" c:type="void"/>
22019           </return-value>
22020         </callback>
22021       </field>
22022       <field name="gtk_reserved2">
22023         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
22024           <return-value transfer-ownership="none">
22025             <type name="none" c:type="void"/>
22026           </return-value>
22027         </callback>
22028       </field>
22029       <field name="gtk_reserved3">
22030         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
22031           <return-value transfer-ownership="none">
22032             <type name="none" c:type="void"/>
22033           </return-value>
22034         </callback>
22035       </field>
22036       <field name="gtk_reserved4">
22037         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
22038           <return-value transfer-ownership="none">
22039             <type name="none" c:type="void"/>
22040           </return-value>
22041         </callback>
22042       </field>
22043       <field name="gtk_reserved5">
22044         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
22045           <return-value transfer-ownership="none">
22046             <type name="none" c:type="void"/>
22047           </return-value>
22048         </callback>
22049       </field>
22050     </record>
22051     <record name="EntryBufferPrivate" c:type="GtkEntryBufferPrivate">
22052     </record>
22053     <record name="EntryClass"
22054             c:type="GtkEntryClass"
22055             glib:is-gtype-struct-for="Entry">
22056       <field name="parent_class">
22057         <type name="WidgetClass" c:type="GtkWidgetClass"/>
22058       </field>
22059       <field name="populate_popup">
22060         <callback name="populate_popup" c:type="populate_popup">
22061           <return-value transfer-ownership="none">
22062             <type name="none" c:type="void"/>
22063           </return-value>
22064           <parameters>
22065             <parameter name="entry" transfer-ownership="none">
22066               <type name="Entry" c:type="GtkEntry*"/>
22067             </parameter>
22068             <parameter name="menu" transfer-ownership="none">
22069               <type name="Menu" c:type="GtkMenu*"/>
22070             </parameter>
22071           </parameters>
22072         </callback>
22073       </field>
22074       <field name="activate">
22075         <callback name="activate" c:type="activate">
22076           <return-value transfer-ownership="none">
22077             <type name="none" c:type="void"/>
22078           </return-value>
22079           <parameters>
22080             <parameter name="entry" transfer-ownership="none">
22081               <type name="Entry" c:type="GtkEntry*"/>
22082             </parameter>
22083           </parameters>
22084         </callback>
22085       </field>
22086       <field name="move_cursor">
22087         <callback name="move_cursor" c:type="move_cursor">
22088           <return-value transfer-ownership="none">
22089             <type name="none" c:type="void"/>
22090           </return-value>
22091           <parameters>
22092             <parameter name="entry" transfer-ownership="none">
22093               <type name="Entry" c:type="GtkEntry*"/>
22094             </parameter>
22095             <parameter name="step" transfer-ownership="none">
22096               <type name="MovementStep" c:type="GtkMovementStep"/>
22097             </parameter>
22098             <parameter name="count" transfer-ownership="none">
22099               <type name="int" c:type="gint"/>
22100             </parameter>
22101             <parameter name="extend_selection" transfer-ownership="none">
22102               <type name="boolean" c:type="gboolean"/>
22103             </parameter>
22104           </parameters>
22105         </callback>
22106       </field>
22107       <field name="insert_at_cursor">
22108         <callback name="insert_at_cursor" c:type="insert_at_cursor">
22109           <return-value transfer-ownership="none">
22110             <type name="none" c:type="void"/>
22111           </return-value>
22112           <parameters>
22113             <parameter name="entry" transfer-ownership="none">
22114               <type name="Entry" c:type="GtkEntry*"/>
22115             </parameter>
22116             <parameter name="str" transfer-ownership="none">
22117               <type name="utf8" c:type="gchar*"/>
22118             </parameter>
22119           </parameters>
22120         </callback>
22121       </field>
22122       <field name="delete_from_cursor">
22123         <callback name="delete_from_cursor" c:type="delete_from_cursor">
22124           <return-value transfer-ownership="none">
22125             <type name="none" c:type="void"/>
22126           </return-value>
22127           <parameters>
22128             <parameter name="entry" transfer-ownership="none">
22129               <type name="Entry" c:type="GtkEntry*"/>
22130             </parameter>
22131             <parameter name="type" transfer-ownership="none">
22132               <type name="DeleteType" c:type="GtkDeleteType"/>
22133             </parameter>
22134             <parameter name="count" transfer-ownership="none">
22135               <type name="int" c:type="gint"/>
22136             </parameter>
22137           </parameters>
22138         </callback>
22139       </field>
22140       <field name="backspace">
22141         <callback name="backspace" c:type="backspace">
22142           <return-value transfer-ownership="none">
22143             <type name="none" c:type="void"/>
22144           </return-value>
22145           <parameters>
22146             <parameter name="entry" transfer-ownership="none">
22147               <type name="Entry" c:type="GtkEntry*"/>
22148             </parameter>
22149           </parameters>
22150         </callback>
22151       </field>
22152       <field name="cut_clipboard">
22153         <callback name="cut_clipboard" c:type="cut_clipboard">
22154           <return-value transfer-ownership="none">
22155             <type name="none" c:type="void"/>
22156           </return-value>
22157           <parameters>
22158             <parameter name="entry" transfer-ownership="none">
22159               <type name="Entry" c:type="GtkEntry*"/>
22160             </parameter>
22161           </parameters>
22162         </callback>
22163       </field>
22164       <field name="copy_clipboard">
22165         <callback name="copy_clipboard" c:type="copy_clipboard">
22166           <return-value transfer-ownership="none">
22167             <type name="none" c:type="void"/>
22168           </return-value>
22169           <parameters>
22170             <parameter name="entry" transfer-ownership="none">
22171               <type name="Entry" c:type="GtkEntry*"/>
22172             </parameter>
22173           </parameters>
22174         </callback>
22175       </field>
22176       <field name="paste_clipboard">
22177         <callback name="paste_clipboard" c:type="paste_clipboard">
22178           <return-value transfer-ownership="none">
22179             <type name="none" c:type="void"/>
22180           </return-value>
22181           <parameters>
22182             <parameter name="entry" transfer-ownership="none">
22183               <type name="Entry" c:type="GtkEntry*"/>
22184             </parameter>
22185           </parameters>
22186         </callback>
22187       </field>
22188       <field name="toggle_overwrite">
22189         <callback name="toggle_overwrite" c:type="toggle_overwrite">
22190           <return-value transfer-ownership="none">
22191             <type name="none" c:type="void"/>
22192           </return-value>
22193           <parameters>
22194             <parameter name="entry" transfer-ownership="none">
22195               <type name="Entry" c:type="GtkEntry*"/>
22196             </parameter>
22197           </parameters>
22198         </callback>
22199       </field>
22200       <field name="get_text_area_size">
22201         <callback name="get_text_area_size" c:type="get_text_area_size">
22202           <return-value transfer-ownership="none">
22203             <type name="none" c:type="void"/>
22204           </return-value>
22205           <parameters>
22206             <parameter name="entry" transfer-ownership="none">
22207               <type name="Entry" c:type="GtkEntry*"/>
22208             </parameter>
22209             <parameter name="x"
22210                        direction="out"
22211                        caller-allocates="0"
22212                        transfer-ownership="full">
22213               <type name="int" c:type="gint*"/>
22214             </parameter>
22215             <parameter name="y"
22216                        direction="out"
22217                        caller-allocates="0"
22218                        transfer-ownership="full">
22219               <type name="int" c:type="gint*"/>
22220             </parameter>
22221             <parameter name="width"
22222                        direction="out"
22223                        caller-allocates="0"
22224                        transfer-ownership="full">
22225               <type name="int" c:type="gint*"/>
22226             </parameter>
22227             <parameter name="height"
22228                        direction="out"
22229                        caller-allocates="0"
22230                        transfer-ownership="full">
22231               <type name="int" c:type="gint*"/>
22232             </parameter>
22233           </parameters>
22234         </callback>
22235       </field>
22236       <field name="gtk_reserved1">
22237         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
22238           <return-value transfer-ownership="none">
22239             <type name="none" c:type="void"/>
22240           </return-value>
22241         </callback>
22242       </field>
22243       <field name="gtk_reserved2">
22244         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
22245           <return-value transfer-ownership="none">
22246             <type name="none" c:type="void"/>
22247           </return-value>
22248         </callback>
22249       </field>
22250     </record>
22251     <class name="EntryCompletion"
22252            c:type="GtkEntryCompletion"
22253            parent="GObject.Object"
22254            glib:type-name="GtkEntryCompletion"
22255            glib:get-type="gtk_entry_completion_get_type"
22256            glib:type-struct="EntryCompletionClass">
22257       <implements name="Buildable"/>
22258       <implements name="CellLayout"/>
22259       <constructor name="new"
22260                    c:identifier="gtk_entry_completion_new"
22261                    version="2.4">
22262         <doc xml:whitespace="preserve">Creates a new #GtkEntryCompletion object.</doc>
22263         <return-value transfer-ownership="full">
22264           <doc xml:whitespace="preserve">A newly created #GtkEntryCompletion object.</doc>
22265           <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
22266         </return-value>
22267       </constructor>
22268       <method name="get_entry"
22269               c:identifier="gtk_entry_completion_get_entry"
22270               version="2.4">
22271         <doc xml:whitespace="preserve">Gets the entry @completion has been attached to.</doc>
22272         <return-value transfer-ownership="full">
22273           <doc xml:whitespace="preserve">The entry @completion has been attached to.</doc>
22274           <type name="Widget" c:type="GtkWidget*"/>
22275         </return-value>
22276       </method>
22277       <method name="set_model"
22278               c:identifier="gtk_entry_completion_set_model"
22279               version="2.4">
22280         <doc xml:whitespace="preserve">Sets the model for a #GtkEntryCompletion. If @completion already has
22281 a model set, it will remove it before setting the new model.
22282 If model is %NULL, then it will unset the model.</doc>
22283         <return-value transfer-ownership="none">
22284           <type name="none" c:type="void"/>
22285         </return-value>
22286         <parameters>
22287           <parameter name="model" transfer-ownership="none" allow-none="1">
22288             <doc xml:whitespace="preserve">The #GtkTreeModel.</doc>
22289             <type name="TreeModel" c:type="GtkTreeModel*"/>
22290           </parameter>
22291         </parameters>
22292       </method>
22293       <method name="get_model"
22294               c:identifier="gtk_entry_completion_get_model"
22295               version="2.4">
22296         <doc xml:whitespace="preserve">Returns the model the #GtkEntryCompletion is using as data source.
22297 Returns %NULL if the model is unset.</doc>
22298         <return-value transfer-ownership="full">
22299           <doc xml:whitespace="preserve">A #GtkTreeModel, or %NULL if none is currently being used.</doc>
22300           <type name="TreeModel" c:type="GtkTreeModel*"/>
22301         </return-value>
22302       </method>
22303       <method name="set_match_func"
22304               c:identifier="gtk_entry_completion_set_match_func"
22305               version="2.4">
22306         <doc xml:whitespace="preserve">Sets the match function for @completion to be @func. The match function
22307 is used to determine if a row should or should not be in the completion
22308 list.</doc>
22309         <return-value transfer-ownership="none">
22310           <type name="none" c:type="void"/>
22311         </return-value>
22312         <parameters>
22313           <parameter name="func"
22314                      transfer-ownership="none"
22315                      scope="notified"
22316                      closure="2"
22317                      destroy="3">
22318             <doc xml:whitespace="preserve">The #GtkEntryCompletionMatchFunc to use.</doc>
22319             <type name="EntryCompletionMatchFunc"
22320                   c:type="GtkEntryCompletionMatchFunc"/>
22321           </parameter>
22322           <parameter name="func_data" transfer-ownership="none">
22323             <doc xml:whitespace="preserve">The user data for @func.</doc>
22324             <type name="any" c:type="gpointer"/>
22325           </parameter>
22326           <parameter name="func_notify" transfer-ownership="none" scope="call">
22327             <doc xml:whitespace="preserve">Destroy notifier for @func_data.</doc>
22328             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
22329           </parameter>
22330         </parameters>
22331       </method>
22332       <method name="set_minimum_key_length"
22333               c:identifier="gtk_entry_completion_set_minimum_key_length"
22334               version="2.4">
22335         <doc xml:whitespace="preserve">Requires the length of the search key for @completion to be at least
22336 key takes a lot of time and will come up with meaningless results anyway
22337 (ie, a too large dataset).</doc>
22338         <return-value transfer-ownership="none">
22339           <type name="none" c:type="void"/>
22340         </return-value>
22341         <parameters>
22342           <parameter name="length" transfer-ownership="none">
22343             <doc xml:whitespace="preserve">The minimum length of the key in order to start completing.</doc>
22344             <type name="int" c:type="gint"/>
22345           </parameter>
22346         </parameters>
22347       </method>
22348       <method name="get_minimum_key_length"
22349               c:identifier="gtk_entry_completion_get_minimum_key_length"
22350               version="2.4">
22351         <doc xml:whitespace="preserve">Returns the minimum key length as set for @completion.</doc>
22352         <return-value transfer-ownership="none">
22353           <doc xml:whitespace="preserve">The currently used minimum key length.</doc>
22354           <type name="int" c:type="gint"/>
22355         </return-value>
22356       </method>
22357       <method name="complete"
22358               c:identifier="gtk_entry_completion_complete"
22359               version="2.4">
22360         <doc xml:whitespace="preserve">Requests a completion operation, or in other words a refiltering of the
22361 current list with completions, using the current key. The completion list
22362 view will be updated accordingly.</doc>
22363         <return-value transfer-ownership="none">
22364           <type name="none" c:type="void"/>
22365         </return-value>
22366       </method>
22367       <method name="insert_prefix"
22368               c:identifier="gtk_entry_completion_insert_prefix"
22369               version="2.6">
22370         <doc xml:whitespace="preserve">Requests a prefix insertion.</doc>
22371         <return-value transfer-ownership="none">
22372           <type name="none" c:type="void"/>
22373         </return-value>
22374       </method>
22375       <method name="insert_action_text"
22376               c:identifier="gtk_entry_completion_insert_action_text"
22377               version="2.4">
22378         <doc xml:whitespace="preserve">Inserts an action in @completion's action item list at position @index_
22379 with text @text. If you want the action item to have markup, use
22380 gtk_entry_completion_insert_action_markup().</doc>
22381         <return-value transfer-ownership="none">
22382           <type name="none" c:type="void"/>
22383         </return-value>
22384         <parameters>
22385           <parameter name="index_" transfer-ownership="none">
22386             <doc xml:whitespace="preserve">The index of the item to insert.</doc>
22387             <type name="int" c:type="gint"/>
22388           </parameter>
22389           <parameter name="text" transfer-ownership="none">
22390             <doc xml:whitespace="preserve">Text of the item to insert.</doc>
22391             <type name="utf8" c:type="gchar*"/>
22392           </parameter>
22393         </parameters>
22394       </method>
22395       <method name="insert_action_markup"
22396               c:identifier="gtk_entry_completion_insert_action_markup"
22397               version="2.4">
22398         <doc xml:whitespace="preserve">Inserts an action in @completion's action item list at position @index_
22399 with markup @markup.</doc>
22400         <return-value transfer-ownership="none">
22401           <type name="none" c:type="void"/>
22402         </return-value>
22403         <parameters>
22404           <parameter name="index_" transfer-ownership="none">
22405             <doc xml:whitespace="preserve">The index of the item to insert.</doc>
22406             <type name="int" c:type="gint"/>
22407           </parameter>
22408           <parameter name="markup" transfer-ownership="none">
22409             <doc xml:whitespace="preserve">Markup of the item to insert.</doc>
22410             <type name="utf8" c:type="gchar*"/>
22411           </parameter>
22412         </parameters>
22413       </method>
22414       <method name="delete_action"
22415               c:identifier="gtk_entry_completion_delete_action"
22416               version="2.4">
22417         <doc xml:whitespace="preserve">Deletes the action at @index_ from @completion's action list.</doc>
22418         <return-value transfer-ownership="none">
22419           <type name="none" c:type="void"/>
22420         </return-value>
22421         <parameters>
22422           <parameter name="index_" transfer-ownership="none">
22423             <doc xml:whitespace="preserve">The index of the item to Delete.</doc>
22424             <type name="int" c:type="gint"/>
22425           </parameter>
22426         </parameters>
22427       </method>
22428       <method name="set_inline_completion"
22429               c:identifier="gtk_entry_completion_set_inline_completion"
22430               version="2.6">
22431         <doc xml:whitespace="preserve">Sets whether the common prefix of the possible completions should
22432 be automatically inserted in the entry.</doc>
22433         <return-value transfer-ownership="none">
22434           <type name="none" c:type="void"/>
22435         </return-value>
22436         <parameters>
22437           <parameter name="inline_completion" transfer-ownership="none">
22438             <doc xml:whitespace="preserve">%TRUE to do inline completion</doc>
22439             <type name="boolean" c:type="gboolean"/>
22440           </parameter>
22441         </parameters>
22442       </method>
22443       <method name="get_inline_completion"
22444               c:identifier="gtk_entry_completion_get_inline_completion"
22445               version="2.6">
22446         <doc xml:whitespace="preserve">Returns whether the common prefix of the possible completions should
22447 be automatically inserted in the entry.</doc>
22448         <return-value transfer-ownership="none">
22449           <doc xml:whitespace="preserve">%TRUE if inline completion is turned on</doc>
22450           <type name="boolean" c:type="gboolean"/>
22451         </return-value>
22452       </method>
22453       <method name="set_inline_selection"
22454               c:identifier="gtk_entry_completion_set_inline_selection"
22455               version="2.12">
22456         <doc xml:whitespace="preserve">Sets whether it is possible to cycle through the possible completions
22457 inside the entry.</doc>
22458         <return-value transfer-ownership="none">
22459           <type name="none" c:type="void"/>
22460         </return-value>
22461         <parameters>
22462           <parameter name="inline_selection" transfer-ownership="none">
22463             <doc xml:whitespace="preserve">%TRUE to do inline selection</doc>
22464             <type name="boolean" c:type="gboolean"/>
22465           </parameter>
22466         </parameters>
22467       </method>
22468       <method name="get_inline_selection"
22469               c:identifier="gtk_entry_completion_get_inline_selection"
22470               version="2.12">
22471         <doc xml:whitespace="preserve">Returns %TRUE if inline-selection mode is turned on.</doc>
22472         <return-value transfer-ownership="none">
22473           <doc xml:whitespace="preserve">%TRUE if inline-selection mode is on</doc>
22474           <type name="boolean" c:type="gboolean"/>
22475         </return-value>
22476       </method>
22477       <method name="set_popup_completion"
22478               c:identifier="gtk_entry_completion_set_popup_completion"
22479               version="2.6">
22480         <doc xml:whitespace="preserve">Sets whether the completions should be presented in a popup window.</doc>
22481         <return-value transfer-ownership="none">
22482           <type name="none" c:type="void"/>
22483         </return-value>
22484         <parameters>
22485           <parameter name="popup_completion" transfer-ownership="none">
22486             <doc xml:whitespace="preserve">%TRUE to do popup completion</doc>
22487             <type name="boolean" c:type="gboolean"/>
22488           </parameter>
22489         </parameters>
22490       </method>
22491       <method name="get_popup_completion"
22492               c:identifier="gtk_entry_completion_get_popup_completion"
22493               version="2.6">
22494         <doc xml:whitespace="preserve">Returns whether the completions should be presented in a popup window.</doc>
22495         <return-value transfer-ownership="none">
22496           <doc xml:whitespace="preserve">%TRUE if popup completion is turned on</doc>
22497           <type name="boolean" c:type="gboolean"/>
22498         </return-value>
22499       </method>
22500       <method name="set_popup_set_width"
22501               c:identifier="gtk_entry_completion_set_popup_set_width"
22502               version="2.8">
22503         <doc xml:whitespace="preserve">Sets whether the completion popup window will be resized to be the same
22504 width as the entry.</doc>
22505         <return-value transfer-ownership="none">
22506           <type name="none" c:type="void"/>
22507         </return-value>
22508         <parameters>
22509           <parameter name="popup_set_width" transfer-ownership="none">
22510             <doc xml:whitespace="preserve">%TRUE to make the width of the popup the same as the entry</doc>
22511             <type name="boolean" c:type="gboolean"/>
22512           </parameter>
22513         </parameters>
22514       </method>
22515       <method name="get_popup_set_width"
22516               c:identifier="gtk_entry_completion_get_popup_set_width"
22517               version="2.8">
22518         <doc xml:whitespace="preserve">Returns whether the  completion popup window will be resized to the 
22519 width of the entry.
22520 the entry</doc>
22521         <return-value transfer-ownership="none">
22522           <doc xml:whitespace="preserve">%TRUE if the popup window will be resized to the width of</doc>
22523           <type name="boolean" c:type="gboolean"/>
22524         </return-value>
22525       </method>
22526       <method name="set_popup_single_match"
22527               c:identifier="gtk_entry_completion_set_popup_single_match"
22528               version="2.8">
22529         <doc xml:whitespace="preserve">Sets whether the completion popup window will appear even if there is
22530 only a single match. You may want to set this to %FALSE if you
22531 are using &lt;link linkend="GtkEntryCompletion--inline-completion"&gt;inline
22532 completion&lt;/link&gt;.</doc>
22533         <return-value transfer-ownership="none">
22534           <type name="none" c:type="void"/>
22535         </return-value>
22536         <parameters>
22537           <parameter name="popup_single_match" transfer-ownership="none">
22538             <doc xml:whitespace="preserve">%TRUE if the popup should appear even for a single match</doc>
22539             <type name="boolean" c:type="gboolean"/>
22540           </parameter>
22541         </parameters>
22542       </method>
22543       <method name="get_popup_single_match"
22544               c:identifier="gtk_entry_completion_get_popup_single_match"
22545               version="2.8">
22546         <doc xml:whitespace="preserve">Returns whether the completion popup window will appear even if there is
22547 only a single match. 
22548 number of matches.</doc>
22549         <return-value transfer-ownership="none">
22550           <doc xml:whitespace="preserve">%TRUE if the popup window will appear regardless of the</doc>
22551           <type name="boolean" c:type="gboolean"/>
22552         </return-value>
22553       </method>
22554       <method name="get_completion_prefix"
22555               c:identifier="gtk_entry_completion_get_completion_prefix"
22556               version="2.12">
22557         <doc xml:whitespace="preserve">Get the original text entered by the user that triggered
22558 the completion or %NULL if there's no completion ongoing.</doc>
22559         <return-value transfer-ownership="none">
22560           <doc xml:whitespace="preserve">the prefix for the current completion</doc>
22561           <type name="utf8" c:type="gchar*"/>
22562         </return-value>
22563       </method>
22564       <method name="set_text_column"
22565               c:identifier="gtk_entry_completion_set_text_column"
22566               version="2.4">
22567         <doc xml:whitespace="preserve">completion list with just strings. This function will set up @completion
22568 to have a list displaying all (and just) strings in the completion list,
22569 and to get those strings from @column in the model of @completion.
22570 This functions creates and adds a #GtkCellRendererText for the selected 
22571 column. If you need to set the text column, but don't want the cell 
22572 renderer, use g_object_set() to set the ::text_column property directly.</doc>
22573         <return-value transfer-ownership="none">
22574           <type name="none" c:type="void"/>
22575         </return-value>
22576         <parameters>
22577           <parameter name="column" transfer-ownership="none">
22578             <doc xml:whitespace="preserve">The column in the model of @completion to get strings from.</doc>
22579             <type name="int" c:type="gint"/>
22580           </parameter>
22581         </parameters>
22582       </method>
22583       <method name="get_text_column"
22584               c:identifier="gtk_entry_completion_get_text_column"
22585               version="2.6">
22586         <doc xml:whitespace="preserve">Returns the column in the model of @completion to get strings from.</doc>
22587         <return-value transfer-ownership="none">
22588           <doc xml:whitespace="preserve">the column containing the strings</doc>
22589           <type name="int" c:type="gint"/>
22590         </return-value>
22591       </method>
22592       <property name="inline-completion"
22593                 version="2.6"
22594                 writable="1"
22595                 transfer-ownership="none">
22596         <doc xml:whitespace="preserve">Determines whether the common prefix of the possible completions 
22597 should be inserted automatically in the entry. Note that this
22598 requires text-column to be set, even if you are using a custom
22599 match function.</doc>
22600         <type name="boolean" c:type="gboolean"/>
22601       </property>
22602       <property name="inline-selection"
22603                 version="2.12"
22604                 writable="1"
22605                 transfer-ownership="none">
22606         <doc xml:whitespace="preserve">Determines whether the possible completions on the popup
22607 will appear in the entry as you navigate through them.</doc>
22608         <type name="boolean" c:type="gboolean"/>
22609       </property>
22610       <property name="minimum-key-length"
22611                 writable="1"
22612                 transfer-ownership="none">
22613         <type name="int" c:type="gint"/>
22614       </property>
22615       <property name="model" writable="1" transfer-ownership="none">
22616         <type name="TreeModel" c:type="GtkTreeModel"/>
22617       </property>
22618       <property name="popup-completion"
22619                 version="2.6"
22620                 writable="1"
22621                 transfer-ownership="none">
22622         <doc xml:whitespace="preserve">Determines whether the possible completions should be 
22623 shown in a popup window.</doc>
22624         <type name="boolean" c:type="gboolean"/>
22625       </property>
22626       <property name="popup-set-width"
22627                 version="2.8"
22628                 writable="1"
22629                 transfer-ownership="none">
22630         <doc xml:whitespace="preserve">Determines whether the completions popup window will be
22631 resized to the width of the entry.</doc>
22632         <type name="boolean" c:type="gboolean"/>
22633       </property>
22634       <property name="popup-single-match"
22635                 version="2.8"
22636                 writable="1"
22637                 transfer-ownership="none">
22638         <doc xml:whitespace="preserve">Determines whether the completions popup window will shown
22639 for a single possible completion. You probably want to set
22640 this to %FALSE if you are using 
22641 &lt;link linkend="GtkEntryCompletion--inline-completion"&gt;inline 
22642 completion&lt;/link&gt;.</doc>
22643         <type name="boolean" c:type="gboolean"/>
22644       </property>
22645       <property name="text-column"
22646                 version="2.6"
22647                 writable="1"
22648                 transfer-ownership="none">
22649         <doc xml:whitespace="preserve">The column of the model containing the strings.
22650 Note that the strings must be UTF-8.</doc>
22651         <type name="int" c:type="gint"/>
22652       </property>
22653       <field name="parent_instance">
22654         <type name="GObject.Object" c:type="GObject"/>
22655       </field>
22656       <field name="priv">
22657         <type name="EntryCompletionPrivate"
22658               c:type="GtkEntryCompletionPrivate*"/>
22659       </field>
22660       <glib:signal name="action-activated" version="2.4">
22661         <doc xml:whitespace="preserve">Gets emitted when an action is activated.</doc>
22662         <return-value transfer-ownership="full">
22663           <type name="none" c:type="void"/>
22664         </return-value>
22665         <parameters>
22666           <parameter name="index" transfer-ownership="none">
22667             <doc xml:whitespace="preserve">the index of the activated action</doc>
22668             <type name="int" c:type="gint"/>
22669           </parameter>
22670         </parameters>
22671       </glib:signal>
22672       <glib:signal name="cursor-on-match" version="2.12">
22673         <doc xml:whitespace="preserve">Gets emitted when a match from the cursor is on a match
22674 of the list.The default behaviour is to replace the contents
22675 of the entry with the contents of the text column in the row 
22676 pointed to by @iter.</doc>
22677         <return-value transfer-ownership="full">
22678           <doc xml:whitespace="preserve">%TRUE if the signal has been handled</doc>
22679           <type name="boolean" c:type="gboolean"/>
22680         </return-value>
22681         <parameters>
22682           <parameter name="model" transfer-ownership="none">
22683             <doc xml:whitespace="preserve">the #GtkTreeModel containing the matches</doc>
22684             <type name="TreeModel" c:type="GtkTreeModel"/>
22685           </parameter>
22686           <parameter name="iter" transfer-ownership="none">
22687             <doc xml:whitespace="preserve">a #GtkTreeIter positioned at the selected match</doc>
22688             <type name="TreeIter" c:type="GtkTreeIter"/>
22689           </parameter>
22690         </parameters>
22691       </glib:signal>
22692       <glib:signal name="insert-prefix" version="2.6">
22693         <doc xml:whitespace="preserve">Gets emitted when the inline autocompletion is triggered. 
22694 The default behaviour is to make the entry display the 
22695 whole prefix and select the newly inserted part.
22696 Applications may connect to this signal in order to insert only a
22697 smaller part of the @prefix into the entry - e.g. the entry used in
22698 the #GtkFileChooser inserts only the part of the prefix up to the 
22699 next '/'.</doc>
22700         <return-value transfer-ownership="full">
22701           <doc xml:whitespace="preserve">%TRUE if the signal has been handled</doc>
22702           <type name="boolean" c:type="gboolean"/>
22703         </return-value>
22704         <parameters>
22705           <parameter name="prefix" transfer-ownership="none">
22706             <doc xml:whitespace="preserve">the common prefix of all possible completions</doc>
22707             <type name="utf8" c:type="gchararray"/>
22708           </parameter>
22709         </parameters>
22710       </glib:signal>
22711       <glib:signal name="match-selected" version="2.4">
22712         <doc xml:whitespace="preserve">Gets emitted when a match from the list is selected. 
22713 The default behaviour is to replace the contents of the 
22714 entry with the contents of the text column in the row 
22715 pointed to by @iter.</doc>
22716         <return-value transfer-ownership="full">
22717           <doc xml:whitespace="preserve">%TRUE if the signal has been handled</doc>
22718           <type name="boolean" c:type="gboolean"/>
22719         </return-value>
22720         <parameters>
22721           <parameter name="model" transfer-ownership="none">
22722             <doc xml:whitespace="preserve">the #GtkTreeModel containing the matches</doc>
22723             <type name="TreeModel" c:type="GtkTreeModel"/>
22724           </parameter>
22725           <parameter name="iter" transfer-ownership="none">
22726             <doc xml:whitespace="preserve">a #GtkTreeIter positioned at the selected match</doc>
22727             <type name="TreeIter" c:type="GtkTreeIter"/>
22728           </parameter>
22729         </parameters>
22730       </glib:signal>
22731     </class>
22732     <record name="EntryCompletionClass"
22733             c:type="GtkEntryCompletionClass"
22734             glib:is-gtype-struct-for="EntryCompletion">
22735       <field name="parent_class">
22736         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
22737       </field>
22738       <field name="match_selected">
22739         <callback name="match_selected" c:type="match_selected">
22740           <return-value transfer-ownership="none">
22741             <type name="boolean" c:type="gboolean"/>
22742           </return-value>
22743           <parameters>
22744             <parameter name="completion" transfer-ownership="none">
22745               <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
22746             </parameter>
22747             <parameter name="model" transfer-ownership="none">
22748               <type name="TreeModel" c:type="GtkTreeModel*"/>
22749             </parameter>
22750             <parameter name="iter" transfer-ownership="none">
22751               <type name="TreeIter" c:type="GtkTreeIter*"/>
22752             </parameter>
22753           </parameters>
22754         </callback>
22755       </field>
22756       <field name="action_activated">
22757         <callback name="action_activated" c:type="action_activated">
22758           <return-value transfer-ownership="none">
22759             <type name="none" c:type="void"/>
22760           </return-value>
22761           <parameters>
22762             <parameter name="completion" transfer-ownership="none">
22763               <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
22764             </parameter>
22765             <parameter name="index_" transfer-ownership="none">
22766               <type name="int" c:type="gint"/>
22767             </parameter>
22768           </parameters>
22769         </callback>
22770       </field>
22771       <field name="insert_prefix">
22772         <callback name="insert_prefix" c:type="insert_prefix">
22773           <return-value transfer-ownership="none">
22774             <type name="boolean" c:type="gboolean"/>
22775           </return-value>
22776           <parameters>
22777             <parameter name="completion" transfer-ownership="none">
22778               <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
22779             </parameter>
22780             <parameter name="prefix" transfer-ownership="none">
22781               <type name="utf8" c:type="gchar*"/>
22782             </parameter>
22783           </parameters>
22784         </callback>
22785       </field>
22786       <field name="cursor_on_match">
22787         <callback name="cursor_on_match" c:type="cursor_on_match">
22788           <return-value transfer-ownership="none">
22789             <type name="boolean" c:type="gboolean"/>
22790           </return-value>
22791           <parameters>
22792             <parameter name="completion" transfer-ownership="none">
22793               <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
22794             </parameter>
22795             <parameter name="model" transfer-ownership="none">
22796               <type name="TreeModel" c:type="GtkTreeModel*"/>
22797             </parameter>
22798             <parameter name="iter" transfer-ownership="none">
22799               <type name="TreeIter" c:type="GtkTreeIter*"/>
22800             </parameter>
22801           </parameters>
22802         </callback>
22803       </field>
22804       <field name="gtk_reserved0">
22805         <callback name="gtk_reserved0" c:type="_gtk_reserved0">
22806           <return-value transfer-ownership="none">
22807             <type name="none" c:type="void"/>
22808           </return-value>
22809         </callback>
22810       </field>
22811       <field name="gtk_reserved1">
22812         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
22813           <return-value transfer-ownership="none">
22814             <type name="none" c:type="void"/>
22815           </return-value>
22816         </callback>
22817       </field>
22818     </record>
22819     <callback name="EntryCompletionMatchFunc"
22820               c:type="GtkEntryCompletionMatchFunc">
22821       <return-value transfer-ownership="none">
22822         <type name="boolean" c:type="gboolean"/>
22823       </return-value>
22824       <parameters>
22825         <parameter name="completion" transfer-ownership="none">
22826           <type name="EntryCompletion" c:type="GtkEntryCompletion*"/>
22827         </parameter>
22828         <parameter name="key" transfer-ownership="none">
22829           <type name="utf8" c:type="gchar*"/>
22830         </parameter>
22831         <parameter name="iter" transfer-ownership="none">
22832           <type name="TreeIter" c:type="GtkTreeIter*"/>
22833         </parameter>
22834         <parameter name="user_data" transfer-ownership="none" closure="3">
22835           <type name="any" c:type="gpointer"/>
22836         </parameter>
22837       </parameters>
22838     </callback>
22839     <record name="EntryCompletionPrivate" c:type="GtkEntryCompletionPrivate">
22840     </record>
22841     <enumeration name="EntryIconPosition"
22842                  glib:type-name="GtkEntryIconPosition"
22843                  glib:get-type="gtk_entry_icon_position_get_type"
22844                  c:type="GtkEntryIconPosition">
22845       <member name="primary"
22846               value="0"
22847               c:identifier="GTK_ENTRY_ICON_PRIMARY"
22848               glib:nick="primary"/>
22849       <member name="secondary"
22850               value="1"
22851               c:identifier="GTK_ENTRY_ICON_SECONDARY"
22852               glib:nick="secondary"/>
22853     </enumeration>
22854     <class name="EventBox"
22855            c:type="GtkEventBox"
22856            parent="Bin"
22857            glib:type-name="GtkEventBox"
22858            glib:get-type="gtk_event_box_get_type"
22859            glib:type-struct="EventBoxClass">
22860       <implements name="Atk.ImplementorIface"/>
22861       <implements name="Buildable"/>
22862       <constructor name="new" c:identifier="gtk_event_box_new">
22863         <return-value transfer-ownership="full">
22864           <type name="EventBox" c:type="GtkWidget*"/>
22865         </return-value>
22866       </constructor>
22867       <method name="get_visible_window"
22868               c:identifier="gtk_event_box_get_visible_window"
22869               version="2.4">
22870         <doc xml:whitespace="preserve">Returns whether the event box has a visible window.
22871 See gtk_event_box_set_visible_window() for details.</doc>
22872         <return-value transfer-ownership="none">
22873           <doc xml:whitespace="preserve">%TRUE if the event box window is visible</doc>
22874           <type name="boolean" c:type="gboolean"/>
22875         </return-value>
22876       </method>
22877       <method name="set_visible_window"
22878               c:identifier="gtk_event_box_set_visible_window"
22879               version="2.4">
22880         <doc xml:whitespace="preserve">Set whether the event box uses a visible or invisible child
22881 window. The default is to use visible windows.
22882 In an invisible window event box, the window that the
22883 event box creates is a %GDK_INPUT_ONLY window, which 
22884 means that it is invisible and only serves to receive
22885 events.
22886 A visible window event box creates a visible (%GDK_INPUT_OUTPUT)
22887 window that acts as the parent window for all the widgets  
22888 contained in the event box.
22889 You should generally make your event box invisible if
22890 you just want to trap events. Creating a visible window
22891 may cause artifacts that are visible to the user, especially
22892 if the user is using a theme with gradients or pixmaps.
22893 The main reason to create a non input-only event box is if
22894 you want to set the background to a different color or
22895 draw on it.
22896 &lt;note&gt;&lt;para&gt;
22897 There is one unexpected issue for an invisible event box that has its
22898 window below the child. (See gtk_event_box_set_above_child().)
22899 Since the input-only window is not an ancestor window of any windows
22900 that descendent widgets of the event box create, events on these 
22901 windows aren't propagated up by the windowing system, but only by GTK+.
22902 The practical effect of this is if an event isn't in the event
22903 mask for the descendant window (see gtk_widget_add_events()),  
22904 it won't be received by the event box. 
22905 &lt;/para&gt;&lt;para&gt;
22906 This problem doesn't occur for visible event boxes, because in
22907 that case, the event box window is actually the ancestor of the
22908 descendant windows, not just at the same place on the screen.
22909 &lt;/para&gt;&lt;/note&gt;</doc>
22910         <return-value transfer-ownership="none">
22911           <type name="none" c:type="void"/>
22912         </return-value>
22913         <parameters>
22914           <parameter name="visible_window" transfer-ownership="none">
22915             <doc xml:whitespace="preserve">boolean value</doc>
22916             <type name="boolean" c:type="gboolean"/>
22917           </parameter>
22918         </parameters>
22919       </method>
22920       <method name="get_above_child"
22921               c:identifier="gtk_event_box_get_above_child"
22922               version="2.4">
22923         <doc xml:whitespace="preserve">Returns whether the event box window is above or below the
22924 windows of its child. See gtk_event_box_set_above_child() for
22925 details.
22926 of its child.</doc>
22927         <return-value transfer-ownership="none">
22928           <doc xml:whitespace="preserve">%TRUE if the event box window is above the window</doc>
22929           <type name="boolean" c:type="gboolean"/>
22930         </return-value>
22931       </method>
22932       <method name="set_above_child"
22933               c:identifier="gtk_event_box_set_above_child"
22934               version="2.4">
22935         <doc xml:whitespace="preserve">Set whether the event box window is positioned above the windows of its child,
22936 as opposed to below it. If the window is above, all events inside the
22937 event box will go to the event box. If the window is below, events
22938 in windows of child widgets will first got to that widget, and then
22939 to its parents.
22940 The default is to keep the window below the child.</doc>
22941         <return-value transfer-ownership="none">
22942           <type name="none" c:type="void"/>
22943         </return-value>
22944         <parameters>
22945           <parameter name="above_child" transfer-ownership="none">
22946             <doc xml:whitespace="preserve">%TRUE if the event box window is above the windows of its child</doc>
22947             <type name="boolean" c:type="gboolean"/>
22948           </parameter>
22949         </parameters>
22950       </method>
22951       <property name="above-child" writable="1" transfer-ownership="none">
22952         <type name="boolean" c:type="gboolean"/>
22953       </property>
22954       <property name="visible-window" writable="1" transfer-ownership="none">
22955         <type name="boolean" c:type="gboolean"/>
22956       </property>
22957       <field name="bin">
22958         <type name="Bin" c:type="GtkBin"/>
22959       </field>
22960     </class>
22961     <record name="EventBoxClass"
22962             c:type="GtkEventBoxClass"
22963             glib:is-gtype-struct-for="EventBox">
22964       <field name="parent_class">
22965         <type name="BinClass" c:type="GtkBinClass"/>
22966       </field>
22967     </record>
22968     <class name="Expander"
22969            c:type="GtkExpander"
22970            parent="Bin"
22971            glib:type-name="GtkExpander"
22972            glib:get-type="gtk_expander_get_type"
22973            glib:type-struct="ExpanderClass">
22974       <implements name="Atk.ImplementorIface"/>
22975       <implements name="Buildable"/>
22976       <constructor name="new" c:identifier="gtk_expander_new" version="2.4">
22977         <doc xml:whitespace="preserve">Creates a new expander using @label as the text of the label.</doc>
22978         <return-value transfer-ownership="full">
22979           <doc xml:whitespace="preserve">a new #GtkExpander widget.</doc>
22980           <type name="Expander" c:type="GtkWidget*"/>
22981         </return-value>
22982         <parameters>
22983           <parameter name="label" transfer-ownership="none">
22984             <doc xml:whitespace="preserve">the text of the label</doc>
22985             <type name="utf8" c:type="gchar*"/>
22986           </parameter>
22987         </parameters>
22988       </constructor>
22989       <constructor name="new_with_mnemonic"
22990                    c:identifier="gtk_expander_new_with_mnemonic"
22991                    version="2.4">
22992         <doc xml:whitespace="preserve">Creates a new expander using @label as the text of the label.
22993 If characters in @label are preceded by an underscore, they are underlined.
22994 If you need a literal underscore character in a label, use '__' (two 
22995 underscores). The first underlined character represents a keyboard 
22996 accelerator called a mnemonic.
22997 Pressing Alt and that key activates the button.</doc>
22998         <return-value transfer-ownership="full">
22999           <doc xml:whitespace="preserve">a new #GtkExpander widget.</doc>
23000           <type name="Expander" c:type="GtkWidget*"/>
23001         </return-value>
23002         <parameters>
23003           <parameter name="label" transfer-ownership="none" allow-none="1">
23004             <doc xml:whitespace="preserve">the text of the label with an underscore in front of the mnemonic character</doc>
23005             <type name="utf8" c:type="gchar*"/>
23006           </parameter>
23007         </parameters>
23008       </constructor>
23009       <method name="set_expanded"
23010               c:identifier="gtk_expander_set_expanded"
23011               version="2.4">
23012         <doc xml:whitespace="preserve">Sets the state of the expander. Set to %TRUE, if you want
23013 the child widget to be revealed, and %FALSE if you want the
23014 child widget to be hidden.</doc>
23015         <return-value transfer-ownership="none">
23016           <type name="none" c:type="void"/>
23017         </return-value>
23018         <parameters>
23019           <parameter name="expanded" transfer-ownership="none">
23020             <doc xml:whitespace="preserve">whether the child widget is revealed</doc>
23021             <type name="boolean" c:type="gboolean"/>
23022           </parameter>
23023         </parameters>
23024       </method>
23025       <method name="get_expanded"
23026               c:identifier="gtk_expander_get_expanded"
23027               version="2.4">
23028         <doc xml:whitespace="preserve">Queries a #GtkExpander and returns its current state. Returns %TRUE
23029 if the child widget is revealed.
23030 See gtk_expander_set_expanded().</doc>
23031         <return-value transfer-ownership="none">
23032           <doc xml:whitespace="preserve">the current state of the expander.</doc>
23033           <type name="boolean" c:type="gboolean"/>
23034         </return-value>
23035       </method>
23036       <method name="set_spacing"
23037               c:identifier="gtk_expander_set_spacing"
23038               version="2.4">
23039         <doc xml:whitespace="preserve">Sets the spacing field of @expander, which is the number of pixels to
23040 place between expander and the child.</doc>
23041         <return-value transfer-ownership="none">
23042           <type name="none" c:type="void"/>
23043         </return-value>
23044         <parameters>
23045           <parameter name="spacing" transfer-ownership="none">
23046             <doc xml:whitespace="preserve">distance between the expander and child in pixels.</doc>
23047             <type name="int" c:type="gint"/>
23048           </parameter>
23049         </parameters>
23050       </method>
23051       <method name="get_spacing"
23052               c:identifier="gtk_expander_get_spacing"
23053               version="2.4">
23054         <doc xml:whitespace="preserve">Gets the value set by gtk_expander_set_spacing().</doc>
23055         <return-value transfer-ownership="none">
23056           <doc xml:whitespace="preserve">spacing between the expander and child.</doc>
23057           <type name="int" c:type="gint"/>
23058         </return-value>
23059       </method>
23060       <method name="set_label"
23061               c:identifier="gtk_expander_set_label"
23062               version="2.4">
23063         <doc xml:whitespace="preserve">Sets the text of the label of the expander to @label.
23064 This will also clear any previously set labels.</doc>
23065         <return-value transfer-ownership="none">
23066           <type name="none" c:type="void"/>
23067         </return-value>
23068         <parameters>
23069           <parameter name="label" transfer-ownership="none" allow-none="1">
23070             <doc xml:whitespace="preserve">a string</doc>
23071             <type name="utf8" c:type="gchar*"/>
23072           </parameter>
23073         </parameters>
23074       </method>
23075       <method name="get_label"
23076               c:identifier="gtk_expander_get_label"
23077               version="2.4">
23078         <doc xml:whitespace="preserve">Fetches the text from a label widget including any embedded
23079 underlines indicating mnemonics and Pango markup, as set by
23080 gtk_expander_set_label(). If the label text has not been set the
23081 return value will be %NULL. This will be the case if you create an
23082 empty button with gtk_button_new() to use as a container.
23083 Note that this function behaved differently in versions prior to
23084 2.14 and used to return the label text stripped of embedded
23085 underlines indicating mnemonics and Pango markup. This problem can
23086 be avoided by fetching the label text directly from the label
23087 widget.
23088 by the widget and must not be modified or freed.</doc>
23089         <return-value transfer-ownership="none">
23090           <doc xml:whitespace="preserve">The text of the label widget. This string is owned</doc>
23091           <type name="utf8" c:type="gchar*"/>
23092         </return-value>
23093       </method>
23094       <method name="set_use_underline"
23095               c:identifier="gtk_expander_set_use_underline"
23096               version="2.4">
23097         <doc xml:whitespace="preserve">If true, an underline in the text of the expander label indicates
23098 the next character should be used for the mnemonic accelerator key.</doc>
23099         <return-value transfer-ownership="none">
23100           <type name="none" c:type="void"/>
23101         </return-value>
23102         <parameters>
23103           <parameter name="use_underline" transfer-ownership="none">
23104             <doc xml:whitespace="preserve">%TRUE if underlines in the text indicate mnemonics</doc>
23105             <type name="boolean" c:type="gboolean"/>
23106           </parameter>
23107         </parameters>
23108       </method>
23109       <method name="get_use_underline"
23110               c:identifier="gtk_expander_get_use_underline"
23111               version="2.4">
23112         <doc xml:whitespace="preserve">Returns whether an embedded underline in the expander label indicates a
23113 mnemonic. See gtk_expander_set_use_underline().
23114 indicates the mnemonic accelerator keys.</doc>
23115         <return-value transfer-ownership="none">
23116           <doc xml:whitespace="preserve">%TRUE if an embedded underline in the expander label</doc>
23117           <type name="boolean" c:type="gboolean"/>
23118         </return-value>
23119       </method>
23120       <method name="set_use_markup"
23121               c:identifier="gtk_expander_set_use_markup"
23122               version="2.4">
23123         <doc xml:whitespace="preserve">Sets whether the text of the label contains markup in &lt;link
23124 linkend="PangoMarkupFormat"&gt;Pango's text markup
23125 language&lt;/link&gt;. See gtk_label_set_markup().</doc>
23126         <return-value transfer-ownership="none">
23127           <type name="none" c:type="void"/>
23128         </return-value>
23129         <parameters>
23130           <parameter name="use_markup" transfer-ownership="none">
23131             <doc xml:whitespace="preserve">%TRUE if the label's text should be parsed for markup</doc>
23132             <type name="boolean" c:type="gboolean"/>
23133           </parameter>
23134         </parameters>
23135       </method>
23136       <method name="get_use_markup"
23137               c:identifier="gtk_expander_get_use_markup"
23138               version="2.4">
23139         <doc xml:whitespace="preserve">Returns whether the label's text is interpreted as marked up with
23140 the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup
23141 language&lt;/link&gt;. See gtk_expander_set_use_markup ().</doc>
23142         <return-value transfer-ownership="none">
23143           <doc xml:whitespace="preserve">%TRUE if the label's text will be parsed for markup</doc>
23144           <type name="boolean" c:type="gboolean"/>
23145         </return-value>
23146       </method>
23147       <method name="set_label_widget"
23148               c:identifier="gtk_expander_set_label_widget"
23149               version="2.4">
23150         <doc xml:whitespace="preserve">Set the label widget for the expander. This is the widget
23151 that will appear embedded alongside the expander arrow.</doc>
23152         <return-value transfer-ownership="none">
23153           <type name="none" c:type="void"/>
23154         </return-value>
23155         <parameters>
23156           <parameter name="label_widget"
23157                      transfer-ownership="none"
23158                      allow-none="1">
23159             <doc xml:whitespace="preserve">the new label widget</doc>
23160             <type name="Widget" c:type="GtkWidget*"/>
23161           </parameter>
23162         </parameters>
23163       </method>
23164       <method name="get_label_widget"
23165               c:identifier="gtk_expander_get_label_widget"
23166               version="2.4">
23167         <doc xml:whitespace="preserve">Retrieves the label widget for the frame. See
23168 gtk_expander_set_label_widget().</doc>
23169         <return-value transfer-ownership="full">
23170           <doc xml:whitespace="preserve">the label widget, or %NULL if there is none.</doc>
23171           <type name="Widget" c:type="GtkWidget*"/>
23172         </return-value>
23173       </method>
23174       <property name="expanded"
23175                 writable="1"
23176                 construct="1"
23177                 transfer-ownership="none">
23178         <type name="boolean" c:type="gboolean"/>
23179       </property>
23180       <property name="label"
23181                 writable="1"
23182                 construct="1"
23183                 transfer-ownership="none">
23184         <type name="utf8" c:type="gchararray"/>
23185       </property>
23186       <property name="label-widget" writable="1" transfer-ownership="none">
23187         <type name="Widget" c:type="GtkWidget"/>
23188       </property>
23189       <property name="spacing" writable="1" transfer-ownership="none">
23190         <type name="int" c:type="gint"/>
23191       </property>
23192       <property name="use-markup"
23193                 writable="1"
23194                 construct="1"
23195                 transfer-ownership="none">
23196         <type name="boolean" c:type="gboolean"/>
23197       </property>
23198       <property name="use-underline"
23199                 writable="1"
23200                 construct="1"
23201                 transfer-ownership="none">
23202         <type name="boolean" c:type="gboolean"/>
23203       </property>
23204       <field name="bin">
23205         <type name="Bin" c:type="GtkBin"/>
23206       </field>
23207       <field name="priv">
23208         <type name="ExpanderPrivate" c:type="GtkExpanderPrivate*"/>
23209       </field>
23210       <glib:signal name="activate">
23211         <return-value transfer-ownership="full">
23212           <type name="none" c:type="void"/>
23213         </return-value>
23214       </glib:signal>
23215     </class>
23216     <record name="ExpanderClass"
23217             c:type="GtkExpanderClass"
23218             glib:is-gtype-struct-for="Expander">
23219       <field name="parent_class">
23220         <type name="BinClass" c:type="GtkBinClass"/>
23221       </field>
23222       <field name="activate">
23223         <callback name="activate" c:type="activate">
23224           <return-value transfer-ownership="none">
23225             <type name="none" c:type="void"/>
23226           </return-value>
23227           <parameters>
23228             <parameter name="expander" transfer-ownership="none">
23229               <type name="Expander" c:type="GtkExpander*"/>
23230             </parameter>
23231           </parameters>
23232         </callback>
23233       </field>
23234     </record>
23235     <record name="ExpanderPrivate" c:type="GtkExpanderPrivate">
23236     </record>
23237     <enumeration name="ExpanderStyle"
23238                  glib:type-name="GtkExpanderStyle"
23239                  glib:get-type="gtk_expander_style_get_type"
23240                  c:type="GtkExpanderStyle">
23241       <member name="collapsed"
23242               value="0"
23243               c:identifier="GTK_EXPANDER_COLLAPSED"
23244               glib:nick="collapsed"/>
23245       <member name="semi_collapsed"
23246               value="1"
23247               c:identifier="GTK_EXPANDER_SEMI_COLLAPSED"
23248               glib:nick="semi-collapsed"/>
23249       <member name="semi_expanded"
23250               value="2"
23251               c:identifier="GTK_EXPANDER_SEMI_EXPANDED"
23252               glib:nick="semi-expanded"/>
23253       <member name="expanded"
23254               value="3"
23255               c:identifier="GTK_EXPANDER_EXPANDED"
23256               glib:nick="expanded"/>
23257     </enumeration>
23258     <interface name="FileChooser"
23259                c:type="GtkFileChooser"
23260                glib:type-name="GtkFileChooser"
23261                glib:get-type="gtk_file_chooser_get_type">
23262       <prerequisite name="Widget"/>
23263       <method name="set_action"
23264               c:identifier="gtk_file_chooser_set_action"
23265               version="2.4">
23266         <doc xml:whitespace="preserve">Sets the type of operation that the chooser is performing; the
23267 user interface is adapted to suit the selected action. For example,
23268 an option to create a new folder might be shown if the action is
23269 %GTK_FILE_CHOOSER_ACTION_SAVE but not if the action is
23270 %GTK_FILE_CHOOSER_ACTION_OPEN.</doc>
23271         <return-value transfer-ownership="none">
23272           <type name="none" c:type="void"/>
23273         </return-value>
23274         <parameters>
23275           <parameter name="action" transfer-ownership="none">
23276             <doc xml:whitespace="preserve">the action that the file selector is performing</doc>
23277             <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
23278           </parameter>
23279         </parameters>
23280       </method>
23281       <method name="get_action"
23282               c:identifier="gtk_file_chooser_get_action"
23283               version="2.4">
23284         <doc xml:whitespace="preserve">Gets the type of operation that the file chooser is performing; see
23285 gtk_file_chooser_set_action().</doc>
23286         <return-value transfer-ownership="full">
23287           <doc xml:whitespace="preserve">the action that the file selector is performing</doc>
23288           <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
23289         </return-value>
23290       </method>
23291       <method name="set_local_only"
23292               c:identifier="gtk_file_chooser_set_local_only"
23293               version="2.4">
23294         <doc xml:whitespace="preserve">Sets whether only local files can be selected in the
23295 file selector. If @local_only is %TRUE (the default),
23296 then the selected file are files are guaranteed to be
23297 accessible through the operating systems native file
23298 file system and therefore the application only
23299 needs to worry about the filename functions in
23300 #GtkFileChooser, like gtk_file_chooser_get_filename(),
23301 rather than the URI functions like
23302 gtk_file_chooser_get_uri(),</doc>
23303         <return-value transfer-ownership="none">
23304           <type name="none" c:type="void"/>
23305         </return-value>
23306         <parameters>
23307           <parameter name="local_only" transfer-ownership="none">
23308             <doc xml:whitespace="preserve">%TRUE if only local files can be selected</doc>
23309             <type name="boolean" c:type="gboolean"/>
23310           </parameter>
23311         </parameters>
23312       </method>
23313       <method name="get_local_only"
23314               c:identifier="gtk_file_chooser_get_local_only"
23315               version="2.4">
23316         <doc xml:whitespace="preserve">Gets whether only local files can be selected in the
23317 file selector. See gtk_file_chooser_set_local_only()</doc>
23318         <return-value transfer-ownership="none">
23319           <doc xml:whitespace="preserve">%TRUE if only local files can be selected.</doc>
23320           <type name="boolean" c:type="gboolean"/>
23321         </return-value>
23322       </method>
23323       <method name="set_select_multiple"
23324               c:identifier="gtk_file_chooser_set_select_multiple"
23325               version="2.4">
23326         <doc xml:whitespace="preserve">Sets whether multiple files can be selected in the file selector.  This is
23327 only relevant if the action is set to be %GTK_FILE_CHOOSER_ACTION_OPEN or
23328 %GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER.</doc>
23329         <return-value transfer-ownership="none">
23330           <type name="none" c:type="void"/>
23331         </return-value>
23332         <parameters>
23333           <parameter name="select_multiple" transfer-ownership="none">
23334             <doc xml:whitespace="preserve">%TRUE if multiple files can be selected.</doc>
23335             <type name="boolean" c:type="gboolean"/>
23336           </parameter>
23337         </parameters>
23338       </method>
23339       <method name="get_select_multiple"
23340               c:identifier="gtk_file_chooser_get_select_multiple"
23341               version="2.4">
23342         <doc xml:whitespace="preserve">Gets whether multiple files can be selected in the file
23343 selector. See gtk_file_chooser_set_select_multiple().</doc>
23344         <return-value transfer-ownership="none">
23345           <doc xml:whitespace="preserve">%TRUE if multiple files can be selected.</doc>
23346           <type name="boolean" c:type="gboolean"/>
23347         </return-value>
23348       </method>
23349       <method name="set_show_hidden"
23350               c:identifier="gtk_file_chooser_set_show_hidden"
23351               version="2.6">
23352         <doc xml:whitespace="preserve">Sets whether hidden files and folders are displayed in the file selector.</doc>
23353         <return-value transfer-ownership="none">
23354           <type name="none" c:type="void"/>
23355         </return-value>
23356         <parameters>
23357           <parameter name="show_hidden" transfer-ownership="none">
23358             <doc xml:whitespace="preserve">%TRUE if hidden files and folders should be displayed.</doc>
23359             <type name="boolean" c:type="gboolean"/>
23360           </parameter>
23361         </parameters>
23362       </method>
23363       <method name="get_show_hidden"
23364               c:identifier="gtk_file_chooser_get_show_hidden"
23365               version="2.6">
23366         <doc xml:whitespace="preserve">Gets whether hidden files and folders are displayed in the file selector.   
23367 See gtk_file_chooser_set_show_hidden().</doc>
23368         <return-value transfer-ownership="none">
23369           <doc xml:whitespace="preserve">%TRUE if hidden files and folders are displayed.</doc>
23370           <type name="boolean" c:type="gboolean"/>
23371         </return-value>
23372       </method>
23373       <method name="set_do_overwrite_confirmation"
23374               c:identifier="gtk_file_chooser_set_do_overwrite_confirmation"
23375               version="2.8">
23376         <doc xml:whitespace="preserve">Sets whether a file chooser in %GTK_FILE_CHOOSER_ACTION_SAVE mode will present
23377 a confirmation dialog if the user types a file name that already exists.  This
23378 is %FALSE by default.
23379 Regardless of this setting, the @chooser will emit the
23380 #GtkFileChooser::confirm-overwrite signal when appropriate.
23381 If all you need is the stock confirmation dialog, set this property to %TRUE.
23382 You can override the way confirmation is done by actually handling the
23383 #GtkFileChooser::confirm-overwrite signal; please refer to its documentation
23384 for the details.</doc>
23385         <return-value transfer-ownership="none">
23386           <type name="none" c:type="void"/>
23387         </return-value>
23388         <parameters>
23389           <parameter name="do_overwrite_confirmation"
23390                      transfer-ownership="none">
23391             <doc xml:whitespace="preserve">whether to confirm overwriting in save mode</doc>
23392             <type name="boolean" c:type="gboolean"/>
23393           </parameter>
23394         </parameters>
23395       </method>
23396       <method name="get_do_overwrite_confirmation"
23397               c:identifier="gtk_file_chooser_get_do_overwrite_confirmation"
23398               version="2.8">
23399         <doc xml:whitespace="preserve">Queries whether a file chooser is set to confirm for overwriting when the user
23400 types a file name that already exists.
23401 %FALSE otherwise.</doc>
23402         <return-value transfer-ownership="none">
23403           <doc xml:whitespace="preserve">%TRUE if the file chooser will present a confirmation dialog;</doc>
23404           <type name="boolean" c:type="gboolean"/>
23405         </return-value>
23406       </method>
23407       <method name="set_create_folders"
23408               c:identifier="gtk_file_chooser_set_create_folders"
23409               version="2.18">
23410         <doc xml:whitespace="preserve">Sets whether file choser will offer to create new folders.
23411 This is only relevant if the action is not set to be 
23412 %GTK_FILE_CHOOSER_ACTION_OPEN.</doc>
23413         <return-value transfer-ownership="none">
23414           <type name="none" c:type="void"/>
23415         </return-value>
23416         <parameters>
23417           <parameter name="create_folders" transfer-ownership="none">
23418             <doc xml:whitespace="preserve">%TRUE if the New Folder button should be displayed</doc>
23419             <type name="boolean" c:type="gboolean"/>
23420           </parameter>
23421         </parameters>
23422       </method>
23423       <method name="get_create_folders"
23424               c:identifier="gtk_file_chooser_get_create_folders"
23425               version="2.18">
23426         <doc xml:whitespace="preserve">Gets whether file choser will offer to create new folders.
23427 See gtk_file_chooser_set_create_folders().</doc>
23428         <return-value transfer-ownership="none">
23429           <doc xml:whitespace="preserve">%TRUE if the New Folder button should be displayed.</doc>
23430           <type name="boolean" c:type="gboolean"/>
23431         </return-value>
23432       </method>
23433       <method name="set_current_name"
23434               c:identifier="gtk_file_chooser_set_current_name"
23435               version="2.4">
23436         <doc xml:whitespace="preserve">Sets the current name in the file selector, as if entered
23437 by the user. Note that the name passed in here is a UTF-8
23438 string rather than a filename. This function is meant for
23439 such uses as a suggested name in a "Save As..." dialog.
23440 If you want to preselect a particular existing file, you should use
23441 gtk_file_chooser_set_filename() or gtk_file_chooser_set_uri() instead.
23442 Please see the documentation for those functions for an example of using
23443 gtk_file_chooser_set_current_name() as well.</doc>
23444         <return-value transfer-ownership="none">
23445           <type name="none" c:type="void"/>
23446         </return-value>
23447         <parameters>
23448           <parameter name="name" transfer-ownership="none">
23449             <doc xml:whitespace="preserve">the filename to use, as a UTF-8 string</doc>
23450             <type name="utf8" c:type="gchar*"/>
23451           </parameter>
23452         </parameters>
23453       </method>
23454       <method name="get_filename"
23455               c:identifier="gtk_file_chooser_get_filename"
23456               version="2.4">
23457         <doc xml:whitespace="preserve">Gets the filename for the currently selected file in
23458 the file selector. If multiple files are selected,
23459 one of the filenames will be returned at random.
23460 If the file chooser is in folder mode, this function returns the selected
23461 folder.
23462 if no file is selected, or the selected file can't
23463 be represented with a local filename. Free with g_free().</doc>
23464         <return-value transfer-ownership="full">
23465           <doc xml:whitespace="preserve">The currently selected filename, or %NULL</doc>
23466           <type name="utf8" c:type="gchar*"/>
23467         </return-value>
23468       </method>
23469       <method name="set_filename"
23470               c:identifier="gtk_file_chooser_set_filename"
23471               version="2.4">
23472         <doc xml:whitespace="preserve">Sets @filename as the current filename for the file chooser, by changing
23473 to the file's parent folder and actually selecting the file in list.  If
23474 the @chooser is in %GTK_FILE_CHOOSER_ACTION_SAVE mode, the file's base name
23475 will also appear in the dialog's file name entry.
23476 If the file name isn't in the current folder of @chooser, then the current
23477 folder of @chooser will be changed to the folder containing @filename. This
23478 is equivalent to a sequence of gtk_file_chooser_unselect_all() followed by
23479 gtk_file_chooser_select_filename().
23480 Note that the file must exist, or nothing will be done except
23481 for the directory change.
23482 If you are implementing a &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; dialog,
23483 you should use this function if you already have a file name to which the 
23484 user may save; for example, when the user opens an existing file and then 
23485 does &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; on it.  If you don't have 
23486 a file name already &amp;mdash; for example, if the user just created a new 
23487 file and is saving it for the first time, do not call this function.  
23488 Instead, use something similar to this:
23489 |[
23490 if (document_is_new)
23491 {
23492 /&amp;ast; the user just created a new document &amp;ast;/
23493 gtk_file_chooser_set_current_folder (chooser, default_folder_for_saving);
23494 gtk_file_chooser_set_current_name (chooser, "Untitled document");
23495 }
23496 else
23497 {
23498 /&amp;ast; the user edited an existing document &amp;ast;/ 
23499 gtk_file_chooser_set_filename (chooser, existing_filename);
23500 }
23501 ]|
23502 selected successfully, %FALSE otherwise.</doc>
23503         <return-value transfer-ownership="none">
23504           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the file was</doc>
23505           <type name="boolean" c:type="gboolean"/>
23506         </return-value>
23507         <parameters>
23508           <parameter name="filename" transfer-ownership="none">
23509             <doc xml:whitespace="preserve">the filename to set as current</doc>
23510             <type name="utf8" c:type="char*"/>
23511           </parameter>
23512         </parameters>
23513       </method>
23514       <method name="select_filename"
23515               c:identifier="gtk_file_chooser_select_filename"
23516               version="2.4">
23517         <doc xml:whitespace="preserve">Selects a filename. If the file name isn't in the current
23518 folder of @chooser, then the current folder of @chooser will
23519 be changed to the folder containing @filename.
23520 selected successfully, %FALSE otherwise.</doc>
23521         <return-value transfer-ownership="none">
23522           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the file was</doc>
23523           <type name="boolean" c:type="gboolean"/>
23524         </return-value>
23525         <parameters>
23526           <parameter name="filename" transfer-ownership="none">
23527             <doc xml:whitespace="preserve">the filename to select</doc>
23528             <type name="utf8" c:type="char*"/>
23529           </parameter>
23530         </parameters>
23531       </method>
23532       <method name="unselect_filename"
23533               c:identifier="gtk_file_chooser_unselect_filename"
23534               version="2.4">
23535         <doc xml:whitespace="preserve">Unselects a currently selected filename. If the filename
23536 is not in the current directory, does not exist, or
23537 is otherwise not currently selected, does nothing.</doc>
23538         <return-value transfer-ownership="none">
23539           <type name="none" c:type="void"/>
23540         </return-value>
23541         <parameters>
23542           <parameter name="filename" transfer-ownership="none">
23543             <doc xml:whitespace="preserve">the filename to unselect</doc>
23544             <type name="utf8" c:type="char*"/>
23545           </parameter>
23546         </parameters>
23547       </method>
23548       <method name="select_all"
23549               c:identifier="gtk_file_chooser_select_all"
23550               version="2.4">
23551         <doc xml:whitespace="preserve">Selects all the files in the current folder of a file chooser.</doc>
23552         <return-value transfer-ownership="none">
23553           <type name="none" c:type="void"/>
23554         </return-value>
23555       </method>
23556       <method name="unselect_all"
23557               c:identifier="gtk_file_chooser_unselect_all"
23558               version="2.4">
23559         <doc xml:whitespace="preserve">Unselects all the files in the current folder of a file chooser.</doc>
23560         <return-value transfer-ownership="none">
23561           <type name="none" c:type="void"/>
23562         </return-value>
23563       </method>
23564       <method name="get_filenames"
23565               c:identifier="gtk_file_chooser_get_filenames"
23566               version="2.4">
23567         <doc xml:whitespace="preserve">Lists all the selected files and subfolders in the current folder of
23568 folder cannot be represented as local filenames they will be ignored. (See
23569 gtk_file_chooser_get_uris())
23570 files and subfolders in the current folder. Free the returned list
23571 with g_slist_free(), and the filenames with g_free().</doc>
23572         <return-value transfer-ownership="full">
23573           <doc xml:whitespace="preserve">a #GSList containing the filenames of all selected</doc>
23574           <type name="GLib.SList" c:type="GSList*">
23575             <type name="utf8"/>
23576           </type>
23577         </return-value>
23578       </method>
23579       <method name="set_current_folder"
23580               c:identifier="gtk_file_chooser_set_current_folder"
23581               version="2.4">
23582         <doc xml:whitespace="preserve">Sets the current folder for @chooser from a local filename.
23583 The user will be shown the full contents of the current folder,
23584 plus user interface elements for navigating to other folders.
23585 otherwise.</doc>
23586         <return-value transfer-ownership="none">
23587           <doc xml:whitespace="preserve">%TRUE if the folder could be changed successfully, %FALSE</doc>
23588           <type name="boolean" c:type="gboolean"/>
23589         </return-value>
23590         <parameters>
23591           <parameter name="filename" transfer-ownership="none">
23592             <doc xml:whitespace="preserve">the full path of the new current folder</doc>
23593             <type name="utf8" c:type="gchar*"/>
23594           </parameter>
23595         </parameters>
23596       </method>
23597       <method name="get_current_folder"
23598               c:identifier="gtk_file_chooser_get_current_folder"
23599               version="2.4">
23600         <doc xml:whitespace="preserve">Gets the current folder of @chooser as a local filename.
23601 See gtk_file_chooser_set_current_folder().
23602 Note that this is the folder that the file chooser is currently displaying
23603 (e.g. "/home/username/Documents"), which is &lt;emphasis&gt;not the same&lt;/emphasis&gt;
23604 as the currently-selected folder if the chooser is in
23605 %GTK_FILE_CHOOSER_SELECT_FOLDER mode
23606 (e.g. "/home/username/Documents/selected-folder/".  To get the
23607 currently-selected folder in that mode, use gtk_file_chooser_get_uri() as the
23608 usual way to get the selection.
23609 path cannot be represented as a local filename.  Free with g_free().  This
23610 function will also return %NULL if the file chooser was unable to load the
23611 last folder that was requested from it; for example, as would be for calling
23612 gtk_file_chooser_set_current_folder() on a nonexistent folder.</doc>
23613         <return-value transfer-ownership="full">
23614           <doc xml:whitespace="preserve">the full path of the current folder, or %NULL if the current</doc>
23615           <type name="utf8" c:type="gchar*"/>
23616         </return-value>
23617       </method>
23618       <method name="get_uri"
23619               c:identifier="gtk_file_chooser_get_uri"
23620               version="2.4">
23621         <doc xml:whitespace="preserve">Gets the URI for the currently selected file in
23622 the file selector. If multiple files are selected,
23623 one of the filenames will be returned at random.
23624 If the file chooser is in folder mode, this function returns the selected
23625 folder.
23626 if no file is selected. Free with g_free()</doc>
23627         <return-value transfer-ownership="full">
23628           <doc xml:whitespace="preserve">The currently selected URI, or %NULL</doc>
23629           <type name="utf8" c:type="gchar*"/>
23630         </return-value>
23631       </method>
23632       <method name="set_uri"
23633               c:identifier="gtk_file_chooser_set_uri"
23634               version="2.4">
23635         <doc xml:whitespace="preserve">Sets the file referred to by @uri as the current file for the file chooser,
23636 by changing to the URI's parent folder and actually selecting the URI in the
23637 list.  If the @chooser is %GTK_FILE_CHOOSER_ACTION_SAVE mode, the URI's base
23638 name will also appear in the dialog's file name entry.
23639 If the URI isn't in the current folder of @chooser, then the current folder
23640 of @chooser will be changed to the folder containing @uri. This is equivalent
23641 to a sequence of gtk_file_chooser_unselect_all() followed by
23642 gtk_file_chooser_select_uri().
23643 Note that the URI must exist, or nothing will be done except for the 
23644 directory change.
23645 If you are implementing a &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; dialog,
23646 you should use this function if you already have a file name to which the 
23647 user may save; for example, when the user opens an existing file and then 
23648 does &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; on it.  If you don't have 
23649 a file name already &amp;mdash; for example, if the user just created a new 
23650 file and is saving it for the first time, do not call this function.  
23651 Instead, use something similar to this:
23652 |[
23653 if (document_is_new)
23654 {
23655 /&amp;ast; the user just created a new document &amp;ast;/
23656 gtk_file_chooser_set_current_folder_uri (chooser, default_folder_for_saving);
23657 gtk_file_chooser_set_current_name (chooser, "Untitled document");
23658 }
23659 else
23660 {
23661 /&amp;ast; the user edited an existing document &amp;ast;/ 
23662 gtk_file_chooser_set_uri (chooser, existing_uri);
23663 }
23664 ]|
23665 selected successfully, %FALSE otherwise.</doc>
23666         <return-value transfer-ownership="none">
23667           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the URI was</doc>
23668           <type name="boolean" c:type="gboolean"/>
23669         </return-value>
23670         <parameters>
23671           <parameter name="uri" transfer-ownership="none">
23672             <doc xml:whitespace="preserve">the URI to set as current</doc>
23673             <type name="utf8" c:type="char*"/>
23674           </parameter>
23675         </parameters>
23676       </method>
23677       <method name="select_uri"
23678               c:identifier="gtk_file_chooser_select_uri"
23679               version="2.4">
23680         <doc xml:whitespace="preserve">Selects the file to by @uri. If the URI doesn't refer to a
23681 file in the current folder of @chooser, then the current folder of
23682 selected successfully, %FALSE otherwise.</doc>
23683         <return-value transfer-ownership="none">
23684           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the URI was</doc>
23685           <type name="boolean" c:type="gboolean"/>
23686         </return-value>
23687         <parameters>
23688           <parameter name="uri" transfer-ownership="none">
23689             <doc xml:whitespace="preserve">the URI to select</doc>
23690             <type name="utf8" c:type="char*"/>
23691           </parameter>
23692         </parameters>
23693       </method>
23694       <method name="unselect_uri"
23695               c:identifier="gtk_file_chooser_unselect_uri"
23696               version="2.4">
23697         <doc xml:whitespace="preserve">Unselects the file referred to by @uri. If the file
23698 is not in the current directory, does not exist, or
23699 is otherwise not currently selected, does nothing.</doc>
23700         <return-value transfer-ownership="none">
23701           <type name="none" c:type="void"/>
23702         </return-value>
23703         <parameters>
23704           <parameter name="uri" transfer-ownership="none">
23705             <doc xml:whitespace="preserve">the URI to unselect</doc>
23706             <type name="utf8" c:type="char*"/>
23707           </parameter>
23708         </parameters>
23709       </method>
23710       <method name="get_uris"
23711               c:identifier="gtk_file_chooser_get_uris"
23712               version="2.4">
23713         <doc xml:whitespace="preserve">Lists all the selected files and subfolders in the current folder of
23714 files and subfolders in the current folder. Free the returned list
23715 with g_slist_free(), and the filenames with g_free().</doc>
23716         <return-value transfer-ownership="full">
23717           <doc xml:whitespace="preserve">a #GSList containing the URIs of all selected</doc>
23718           <type name="GLib.SList" c:type="GSList*">
23719             <type name="utf8"/>
23720           </type>
23721         </return-value>
23722       </method>
23723       <method name="set_current_folder_uri"
23724               c:identifier="gtk_file_chooser_set_current_folder_uri"
23725               version="2.4">
23726         <doc xml:whitespace="preserve">Sets the current folder for @chooser from an URI.
23727 The user will be shown the full contents of the current folder,
23728 plus user interface elements for navigating to other folders.
23729 otherwise.</doc>
23730         <return-value transfer-ownership="none">
23731           <doc xml:whitespace="preserve">%TRUE if the folder could be changed successfully, %FALSE</doc>
23732           <type name="boolean" c:type="gboolean"/>
23733         </return-value>
23734         <parameters>
23735           <parameter name="uri" transfer-ownership="none">
23736             <doc xml:whitespace="preserve">the URI for the new current folder</doc>
23737             <type name="utf8" c:type="gchar*"/>
23738           </parameter>
23739         </parameters>
23740       </method>
23741       <method name="get_current_folder_uri"
23742               c:identifier="gtk_file_chooser_get_current_folder_uri"
23743               version="2.4">
23744         <doc xml:whitespace="preserve">Gets the current folder of @chooser as an URI.
23745 See gtk_file_chooser_set_current_folder_uri().
23746 Note that this is the folder that the file chooser is currently displaying
23747 (e.g. "file:///home/username/Documents"), which is &lt;emphasis&gt;not the same&lt;/emphasis&gt;
23748 as the currently-selected folder if the chooser is in
23749 %GTK_FILE_CHOOSER_SELECT_FOLDER mode
23750 (e.g. "file:///home/username/Documents/selected-folder/".  To get the
23751 currently-selected folder in that mode, use gtk_file_chooser_get_uri() as the
23752 usual way to get the selection.
23753 function will also return %NULL if the file chooser was unable to load the
23754 last folder that was requested from it; for example, as would be for calling
23755 gtk_file_chooser_set_current_folder_uri() on a nonexistent folder.</doc>
23756         <return-value transfer-ownership="full">
23757           <doc xml:whitespace="preserve">the URI for the current folder.  Free with g_free().  This</doc>
23758           <type name="utf8" c:type="gchar*"/>
23759         </return-value>
23760       </method>
23761       <method name="get_file"
23762               c:identifier="gtk_file_chooser_get_file"
23763               version="2.14">
23764         <doc xml:whitespace="preserve">Gets the #GFile for the currently selected file in
23765 the file selector. If multiple files are selected,
23766 one of the files will be returned at random.
23767 If the file chooser is in folder mode, this function returns the selected
23768 folder.
23769 g_object_unref() to release it.</doc>
23770         <return-value transfer-ownership="full">
23771           <doc xml:whitespace="preserve">a selected #GFile. You own the returned file; use</doc>
23772           <type name="Gio.File" c:type="GFile*"/>
23773         </return-value>
23774       </method>
23775       <method name="set_file"
23776               c:identifier="gtk_file_chooser_set_file"
23777               version="2.14"
23778               throws="1">
23779         <doc xml:whitespace="preserve">Sets @file as the current filename for the file chooser, by changing
23780 to the file's parent folder and actually selecting the file in list.  If
23781 the @chooser is in %GTK_FILE_CHOOSER_ACTION_SAVE mode, the file's base name
23782 will also appear in the dialog's file name entry.
23783 If the file name isn't in the current folder of @chooser, then the current
23784 folder of @chooser will be changed to the folder containing @filename. This
23785 is equivalent to a sequence of gtk_file_chooser_unselect_all() followed by
23786 gtk_file_chooser_select_filename().
23787 Note that the file must exist, or nothing will be done except
23788 for the directory change.
23789 If you are implementing a &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; dialog,
23790 you should use this function if you already have a file name to which the
23791 user may save; for example, when the user opens an existing file and then
23792 does &lt;guimenuitem&gt;File/Save As...&lt;/guimenuitem&gt; on it.  If you don't have
23793 a file name already &amp;mdash; for example, if the user just created a new
23794 file and is saving it for the first time, do not call this function.
23795 Instead, use something similar to this:
23796 |[
23797 if (document_is_new)
23798 {
23799 /&amp;ast; the user just created a new document &amp;ast;/
23800 gtk_file_chooser_set_current_folder_file (chooser, default_file_for_saving);
23801 gtk_file_chooser_set_current_name (chooser, "Untitled document");
23802 }
23803 else
23804 {
23805 /&amp;ast; the user edited an existing document &amp;ast;/
23806 gtk_file_chooser_set_file (chooser, existing_file);
23807 }
23808 ]|
23809 selected successfully, %FALSE otherwise.</doc>
23810         <return-value transfer-ownership="none">
23811           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the file was</doc>
23812           <type name="boolean" c:type="gboolean"/>
23813         </return-value>
23814         <parameters>
23815           <parameter name="file" transfer-ownership="none">
23816             <doc xml:whitespace="preserve">the #GFile to set as current</doc>
23817             <type name="Gio.File" c:type="GFile*"/>
23818           </parameter>
23819         </parameters>
23820       </method>
23821       <method name="select_file"
23822               c:identifier="gtk_file_chooser_select_file"
23823               version="2.14"
23824               throws="1">
23825         <doc xml:whitespace="preserve">Selects the file referred to by @file. An internal function. See
23826 _gtk_file_chooser_select_uri().
23827 selected successfully, %FALSE otherwise.</doc>
23828         <return-value transfer-ownership="none">
23829           <doc xml:whitespace="preserve">%TRUE if both the folder could be changed and the path was</doc>
23830           <type name="boolean" c:type="gboolean"/>
23831         </return-value>
23832         <parameters>
23833           <parameter name="file" transfer-ownership="none">
23834             <doc xml:whitespace="preserve">the file to select</doc>
23835             <type name="Gio.File" c:type="GFile*"/>
23836           </parameter>
23837         </parameters>
23838       </method>
23839       <method name="unselect_file"
23840               c:identifier="gtk_file_chooser_unselect_file"
23841               version="2.14">
23842         <doc xml:whitespace="preserve">Unselects the file referred to by @file. If the file is not in the current
23843 directory, does not exist, or is otherwise not currently selected, does nothing.</doc>
23844         <return-value transfer-ownership="none">
23845           <type name="none" c:type="void"/>
23846         </return-value>
23847         <parameters>
23848           <parameter name="file" transfer-ownership="none">
23849             <doc xml:whitespace="preserve">a #GFile</doc>
23850             <type name="Gio.File" c:type="GFile*"/>
23851           </parameter>
23852         </parameters>
23853       </method>
23854       <method name="get_files"
23855               c:identifier="gtk_file_chooser_get_files"
23856               version="2.14">
23857         <doc xml:whitespace="preserve">Lists all the selected files and subfolders in the current folder of @chooser
23858 as #GFile. An internal function, see gtk_file_chooser_get_uris().
23859 file and subfolder in the current folder.  Free the returned list
23860 with g_slist_free(), and the files with g_object_unref().</doc>
23861         <return-value transfer-ownership="full">
23862           <doc xml:whitespace="preserve">a #GSList containing a #GFile for each selected</doc>
23863           <type name="GLib.SList" c:type="GSList*">
23864             <type name="utf8"/>
23865           </type>
23866         </return-value>
23867       </method>
23868       <method name="set_current_folder_file"
23869               c:identifier="gtk_file_chooser_set_current_folder_file"
23870               version="2.14"
23871               throws="1">
23872         <doc xml:whitespace="preserve">Sets the current folder for @chooser from a #GFile.
23873 Internal function, see gtk_file_chooser_set_current_folder_uri().
23874 otherwise.</doc>
23875         <return-value transfer-ownership="none">
23876           <doc xml:whitespace="preserve">%TRUE if the folder could be changed successfully, %FALSE</doc>
23877           <type name="boolean" c:type="gboolean"/>
23878         </return-value>
23879         <parameters>
23880           <parameter name="file" transfer-ownership="none">
23881             <doc xml:whitespace="preserve">the #GFile for the new folder</doc>
23882             <type name="Gio.File" c:type="GFile*"/>
23883           </parameter>
23884         </parameters>
23885       </method>
23886       <method name="get_current_folder_file"
23887               c:identifier="gtk_file_chooser_get_current_folder_file"
23888               version="2.14">
23889         <doc xml:whitespace="preserve">Gets the current folder of @chooser as #GFile.
23890 See gtk_file_chooser_get_current_folder_uri().</doc>
23891         <return-value transfer-ownership="full">
23892           <doc xml:whitespace="preserve">the #GFile for the current folder.</doc>
23893           <type name="Gio.File" c:type="GFile*"/>
23894         </return-value>
23895       </method>
23896       <method name="set_preview_widget"
23897               c:identifier="gtk_file_chooser_set_preview_widget"
23898               version="2.4">
23899         <doc xml:whitespace="preserve">Sets an application-supplied widget to use to display a custom preview
23900 of the currently selected file. To implement a preview, after setting the
23901 preview widget, you connect to the #GtkFileChooser::update-preview
23902 signal, and call gtk_file_chooser_get_preview_filename() or
23903 gtk_file_chooser_get_preview_uri() on each change. If you can
23904 display a preview of the new file, update your widget and
23905 set the preview active using gtk_file_chooser_set_preview_widget_active().
23906 Otherwise, set the preview inactive.
23907 When there is no application-supplied preview widget, or the
23908 application-supplied preview widget is not active, the file chooser
23909 may display an internally generated preview of the current file or
23910 it may display no preview at all.</doc>
23911         <return-value transfer-ownership="none">
23912           <type name="none" c:type="void"/>
23913         </return-value>
23914         <parameters>
23915           <parameter name="preview_widget" transfer-ownership="none">
23916             <doc xml:whitespace="preserve">widget for displaying preview.</doc>
23917             <type name="Widget" c:type="GtkWidget*"/>
23918           </parameter>
23919         </parameters>
23920       </method>
23921       <method name="get_preview_widget"
23922               c:identifier="gtk_file_chooser_get_preview_widget"
23923               version="2.4">
23924         <doc xml:whitespace="preserve">Gets the current preview widget; see
23925 gtk_file_chooser_set_preview_widget().</doc>
23926         <return-value transfer-ownership="full">
23927           <doc xml:whitespace="preserve">the current preview widget, or %NULL</doc>
23928           <type name="Widget" c:type="GtkWidget*"/>
23929         </return-value>
23930       </method>
23931       <method name="set_preview_widget_active"
23932               c:identifier="gtk_file_chooser_set_preview_widget_active"
23933               version="2.4">
23934         <doc xml:whitespace="preserve">Sets whether the preview widget set by
23935 gtk_file_chooser_set_preview_widget() should be shown for the
23936 current filename. When @active is set to false, the file chooser
23937 may display an internally generated preview of the current file
23938 or it may display no preview at all. See
23939 gtk_file_chooser_set_preview_widget() for more details.</doc>
23940         <return-value transfer-ownership="none">
23941           <type name="none" c:type="void"/>
23942         </return-value>
23943         <parameters>
23944           <parameter name="active" transfer-ownership="none">
23945             <doc xml:whitespace="preserve">whether to display the user-specified preview widget</doc>
23946             <type name="boolean" c:type="gboolean"/>
23947           </parameter>
23948         </parameters>
23949       </method>
23950       <method name="get_preview_widget_active"
23951               c:identifier="gtk_file_chooser_get_preview_widget_active"
23952               version="2.4">
23953         <doc xml:whitespace="preserve">Gets whether the preview widget set by gtk_file_chooser_set_preview_widget()
23954 should be shown for the current filename. See
23955 gtk_file_chooser_set_preview_widget_active().</doc>
23956         <return-value transfer-ownership="none">
23957           <doc xml:whitespace="preserve">%TRUE if the preview widget is active for the current filename.</doc>
23958           <type name="boolean" c:type="gboolean"/>
23959         </return-value>
23960       </method>
23961       <method name="set_use_preview_label"
23962               c:identifier="gtk_file_chooser_set_use_preview_label"
23963               version="2.4">
23964         <doc xml:whitespace="preserve">Sets whether the file chooser should display a stock label with the name of
23965 the file that is being previewed; the default is %TRUE.  Applications that
23966 want to draw the whole preview area themselves should set this to %FALSE and
23967 display the name themselves in their preview widget.</doc>
23968         <return-value transfer-ownership="none">
23969           <type name="none" c:type="void"/>
23970         </return-value>
23971         <parameters>
23972           <parameter name="use_label" transfer-ownership="none">
23973             <doc xml:whitespace="preserve">whether to display a stock label with the name of the previewed file</doc>
23974             <type name="boolean" c:type="gboolean"/>
23975           </parameter>
23976         </parameters>
23977       </method>
23978       <method name="get_use_preview_label"
23979               c:identifier="gtk_file_chooser_get_use_preview_label">
23980         <doc xml:whitespace="preserve">Gets whether a stock label should be drawn with the name of the previewed
23981 file.  See gtk_file_chooser_set_use_preview_label().
23982 name of the previewed file, %FALSE otherwise.</doc>
23983         <return-value transfer-ownership="none">
23984           <doc xml:whitespace="preserve">%TRUE if the file chooser is set to display a label with the</doc>
23985           <type name="boolean" c:type="gboolean"/>
23986         </return-value>
23987       </method>
23988       <method name="get_preview_filename"
23989               c:identifier="gtk_file_chooser_get_preview_filename"
23990               version="2.4">
23991         <doc xml:whitespace="preserve">Gets the filename that should be previewed in a custom preview
23992 widget. See gtk_file_chooser_set_preview_widget().
23993 is selected, or if the selected file cannot be represented
23994 as a local filename. Free with g_free()</doc>
23995         <return-value transfer-ownership="full">
23996           <doc xml:whitespace="preserve">the filename to preview, or %NULL if no file</doc>
23997           <type name="utf8" c:type="char*"/>
23998         </return-value>
23999       </method>
24000       <method name="get_preview_uri"
24001               c:identifier="gtk_file_chooser_get_preview_uri"
24002               version="2.4">
24003         <doc xml:whitespace="preserve">Gets the URI that should be previewed in a custom preview
24004 widget. See gtk_file_chooser_set_preview_widget().
24005 selected. Free with g_free().</doc>
24006         <return-value transfer-ownership="full">
24007           <doc xml:whitespace="preserve">the URI for the file to preview, or %NULL if no file is</doc>
24008           <type name="utf8" c:type="char*"/>
24009         </return-value>
24010       </method>
24011       <method name="get_preview_file"
24012               c:identifier="gtk_file_chooser_get_preview_file"
24013               version="2.14">
24014         <doc xml:whitespace="preserve">Gets the #GFile that should be previewed in a custom preview
24015 Internal function, see gtk_file_chooser_get_preview_uri().
24016 is selected. Free with g_object_unref().</doc>
24017         <return-value transfer-ownership="full">
24018           <doc xml:whitespace="preserve">the #GFile for the file to preview, or %NULL if no file</doc>
24019           <type name="Gio.File" c:type="GFile*"/>
24020         </return-value>
24021       </method>
24022       <method name="set_extra_widget"
24023               c:identifier="gtk_file_chooser_set_extra_widget"
24024               version="2.4">
24025         <doc xml:whitespace="preserve">Sets an application-supplied widget to provide extra options to the user.</doc>
24026         <return-value transfer-ownership="none">
24027           <type name="none" c:type="void"/>
24028         </return-value>
24029         <parameters>
24030           <parameter name="extra_widget" transfer-ownership="none">
24031             <doc xml:whitespace="preserve">widget for extra options</doc>
24032             <type name="Widget" c:type="GtkWidget*"/>
24033           </parameter>
24034         </parameters>
24035       </method>
24036       <method name="get_extra_widget"
24037               c:identifier="gtk_file_chooser_get_extra_widget"
24038               version="2.4">
24039         <doc xml:whitespace="preserve">Gets the current preview widget; see
24040 gtk_file_chooser_set_extra_widget().</doc>
24041         <return-value transfer-ownership="full">
24042           <doc xml:whitespace="preserve">the current extra widget, or %NULL</doc>
24043           <type name="Widget" c:type="GtkWidget*"/>
24044         </return-value>
24045       </method>
24046       <method name="add_filter"
24047               c:identifier="gtk_file_chooser_add_filter"
24048               version="2.4">
24049         <doc xml:whitespace="preserve">Adds @filter to the list of filters that the user can select between.
24050 When a filter is selected, only files that are passed by that
24051 filter are displayed. 
24052 Note that the @chooser takes ownership of the filter, so you have to 
24053 ref and sink it if you want to keep a reference.</doc>
24054         <return-value transfer-ownership="none">
24055           <type name="none" c:type="void"/>
24056         </return-value>
24057         <parameters>
24058           <parameter name="filter" transfer-ownership="none">
24059             <doc xml:whitespace="preserve">a #GtkFileFilter</doc>
24060             <type name="FileFilter" c:type="GtkFileFilter*"/>
24061           </parameter>
24062         </parameters>
24063       </method>
24064       <method name="remove_filter"
24065               c:identifier="gtk_file_chooser_remove_filter"
24066               version="2.4">
24067         <doc xml:whitespace="preserve">Removes @filter from the list of filters that the user can select between.</doc>
24068         <return-value transfer-ownership="none">
24069           <type name="none" c:type="void"/>
24070         </return-value>
24071         <parameters>
24072           <parameter name="filter" transfer-ownership="none">
24073             <doc xml:whitespace="preserve">a #GtkFileFilter</doc>
24074             <type name="FileFilter" c:type="GtkFileFilter*"/>
24075           </parameter>
24076         </parameters>
24077       </method>
24078       <method name="list_filters"
24079               c:identifier="gtk_file_chooser_list_filters"
24080               version="2.4">
24081         <doc xml:whitespace="preserve">Lists the current set of user-selectable filters; see
24082 gtk_file_chooser_add_filter(), gtk_file_chooser_remove_filter().
24083 user selectable filters. The contents of the list are
24084 owned by GTK+, but you must free the list itself with
24085 g_slist_free() when you are done with it.</doc>
24086         <return-value transfer-ownership="container">
24087           <doc xml:whitespace="preserve">a #GSList containing the current set of</doc>
24088           <type name="GLib.SList" c:type="GSList*">
24089             <type name="utf8"/>
24090           </type>
24091         </return-value>
24092       </method>
24093       <method name="set_filter"
24094               c:identifier="gtk_file_chooser_set_filter"
24095               version="2.4">
24096         <doc xml:whitespace="preserve">Sets the current filter; only the files that pass the
24097 filter will be displayed. If the user-selectable list of filters
24098 is non-empty, then the filter should be one of the filters
24099 in that list. Setting the current filter when the list of
24100 filters is empty is useful if you want to restrict the displayed
24101 set of files without letting the user change it.</doc>
24102         <return-value transfer-ownership="none">
24103           <type name="none" c:type="void"/>
24104         </return-value>
24105         <parameters>
24106           <parameter name="filter" transfer-ownership="none">
24107             <doc xml:whitespace="preserve">a #GtkFileFilter</doc>
24108             <type name="FileFilter" c:type="GtkFileFilter*"/>
24109           </parameter>
24110         </parameters>
24111       </method>
24112       <method name="get_filter"
24113               c:identifier="gtk_file_chooser_get_filter"
24114               version="2.4">
24115         <doc xml:whitespace="preserve">Gets the current filter; see gtk_file_chooser_set_filter().</doc>
24116         <return-value transfer-ownership="full">
24117           <doc xml:whitespace="preserve">the current filter, or %NULL</doc>
24118           <type name="FileFilter" c:type="GtkFileFilter*"/>
24119         </return-value>
24120       </method>
24121       <method name="add_shortcut_folder"
24122               c:identifier="gtk_file_chooser_add_shortcut_folder"
24123               version="2.4"
24124               throws="1">
24125         <doc xml:whitespace="preserve">Adds a folder to be displayed with the shortcut folders in a file chooser.
24126 Note that shortcut folders do not get saved, as they are provided by the
24127 application.  For example, you can use this to add a
24128 "/usr/share/mydrawprogram/Clipart" folder to the volume list.
24129 otherwise.  In the latter case, the @error will be set as appropriate.</doc>
24130         <return-value transfer-ownership="none">
24131           <doc xml:whitespace="preserve">%TRUE if the folder could be added successfully, %FALSE</doc>
24132           <type name="boolean" c:type="gboolean"/>
24133         </return-value>
24134         <parameters>
24135           <parameter name="folder" transfer-ownership="none">
24136             <doc xml:whitespace="preserve">filename of the folder to add</doc>
24137             <type name="utf8" c:type="char*"/>
24138           </parameter>
24139         </parameters>
24140       </method>
24141       <method name="remove_shortcut_folder"
24142               c:identifier="gtk_file_chooser_remove_shortcut_folder"
24143               version="2.4"
24144               throws="1">
24145         <doc xml:whitespace="preserve">Removes a folder from a file chooser's list of shortcut folders.
24146 In the latter case, the @error will be set as appropriate.</doc>
24147         <return-value transfer-ownership="none">
24148           <doc xml:whitespace="preserve">%TRUE if the operation succeeds, %FALSE otherwise.</doc>
24149           <type name="boolean" c:type="gboolean"/>
24150         </return-value>
24151         <parameters>
24152           <parameter name="folder" transfer-ownership="none">
24153             <doc xml:whitespace="preserve">filename of the folder to remove</doc>
24154             <type name="utf8" c:type="char*"/>
24155           </parameter>
24156         </parameters>
24157       </method>
24158       <method name="list_shortcut_folders"
24159               c:identifier="gtk_file_chooser_list_shortcut_folders"
24160               version="2.4">
24161         <doc xml:whitespace="preserve">Queries the list of shortcut folders in the file chooser, as set by
24162 gtk_file_chooser_add_shortcut_folder().
24163 folders.  Free the returned list with g_slist_free(), and the filenames with
24164 g_free().</doc>
24165         <return-value transfer-ownership="full">
24166           <doc xml:whitespace="preserve">A list of folder filenames, or %NULL if there are no shortcut</doc>
24167           <type name="GLib.SList" c:type="GSList*">
24168             <type name="utf8"/>
24169           </type>
24170         </return-value>
24171       </method>
24172       <method name="add_shortcut_folder_uri"
24173               c:identifier="gtk_file_chooser_add_shortcut_folder_uri"
24174               version="2.4"
24175               throws="1">
24176         <doc xml:whitespace="preserve">Adds a folder URI to be displayed with the shortcut folders in a file
24177 chooser.  Note that shortcut folders do not get saved, as they are provided
24178 by the application.  For example, you can use this to add a
24179 "file:///usr/share/mydrawprogram/Clipart" folder to the volume list.
24180 otherwise.  In the latter case, the @error will be set as appropriate.</doc>
24181         <return-value transfer-ownership="none">
24182           <doc xml:whitespace="preserve">%TRUE if the folder could be added successfully, %FALSE</doc>
24183           <type name="boolean" c:type="gboolean"/>
24184         </return-value>
24185         <parameters>
24186           <parameter name="uri" transfer-ownership="none">
24187             <doc xml:whitespace="preserve">URI of the folder to add</doc>
24188             <type name="utf8" c:type="char*"/>
24189           </parameter>
24190         </parameters>
24191       </method>
24192       <method name="remove_shortcut_folder_uri"
24193               c:identifier="gtk_file_chooser_remove_shortcut_folder_uri"
24194               version="2.4"
24195               throws="1">
24196         <doc xml:whitespace="preserve">Removes a folder URI from a file chooser's list of shortcut folders.
24197 In the latter case, the @error will be set as appropriate.</doc>
24198         <return-value transfer-ownership="none">
24199           <doc xml:whitespace="preserve">%TRUE if the operation succeeds, %FALSE otherwise.</doc>
24200           <type name="boolean" c:type="gboolean"/>
24201         </return-value>
24202         <parameters>
24203           <parameter name="uri" transfer-ownership="none">
24204             <doc xml:whitespace="preserve">URI of the folder to remove</doc>
24205             <type name="utf8" c:type="char*"/>
24206           </parameter>
24207         </parameters>
24208       </method>
24209       <method name="list_shortcut_folder_uris"
24210               c:identifier="gtk_file_chooser_list_shortcut_folder_uris"
24211               version="2.4">
24212         <doc xml:whitespace="preserve">Queries the list of shortcut folders in the file chooser, as set by
24213 gtk_file_chooser_add_shortcut_folder_uri().
24214 folders.  Free the returned list with g_slist_free(), and the URIs with
24215 g_free().</doc>
24216         <return-value transfer-ownership="full">
24217           <doc xml:whitespace="preserve">A list of folder URIs, or %NULL if there are no shortcut</doc>
24218           <type name="GLib.SList" c:type="GSList*">
24219             <type name="utf8"/>
24220           </type>
24221         </return-value>
24222       </method>
24223       <property name="action" writable="1" transfer-ownership="none">
24224         <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
24225       </property>
24226       <property name="create-folders"
24227                 version="2.18"
24228                 writable="1"
24229                 transfer-ownership="none">
24230         <doc xml:whitespace="preserve">Whether a file chooser not in %GTK_FILE_CHOOSER_ACTION_OPEN mode
24231 will offer the user to create new folders.</doc>
24232         <type name="boolean" c:type="gboolean"/>
24233       </property>
24234       <property name="do-overwrite-confirmation"
24235                 version="2.8"
24236                 writable="1"
24237                 transfer-ownership="none">
24238         <doc xml:whitespace="preserve">Whether a file chooser in %GTK_FILE_CHOOSER_ACTION_SAVE mode
24239 will present an overwrite confirmation dialog if the user
24240 selects a file name that already exists.</doc>
24241         <type name="boolean" c:type="gboolean"/>
24242       </property>
24243       <property name="extra-widget" writable="1" transfer-ownership="none">
24244         <type name="Widget" c:type="GtkWidget"/>
24245       </property>
24246       <property name="file-system-backend"
24247                 readable="0"
24248                 writable="1"
24249                 construct-only="1"
24250                 transfer-ownership="none">
24251         <type name="utf8" c:type="gchararray"/>
24252       </property>
24253       <property name="filter" writable="1" transfer-ownership="none">
24254         <type name="FileFilter" c:type="GtkFileFilter"/>
24255       </property>
24256       <property name="local-only" writable="1" transfer-ownership="none">
24257         <type name="boolean" c:type="gboolean"/>
24258       </property>
24259       <property name="preview-widget" writable="1" transfer-ownership="none">
24260         <type name="Widget" c:type="GtkWidget"/>
24261       </property>
24262       <property name="preview-widget-active"
24263                 writable="1"
24264                 transfer-ownership="none">
24265         <type name="boolean" c:type="gboolean"/>
24266       </property>
24267       <property name="select-multiple" writable="1" transfer-ownership="none">
24268         <type name="boolean" c:type="gboolean"/>
24269       </property>
24270       <property name="show-hidden" writable="1" transfer-ownership="none">
24271         <type name="boolean" c:type="gboolean"/>
24272       </property>
24273       <property name="use-preview-label"
24274                 writable="1"
24275                 transfer-ownership="none">
24276         <type name="boolean" c:type="gboolean"/>
24277       </property>
24278       <glib:signal name="confirm-overwrite" version="2.8">
24279         <doc xml:whitespace="preserve">This signal gets emitted whenever it is appropriate to present a
24280 confirmation dialog when the user has selected a file name that
24281 already exists.  The signal only gets emitted when the file
24282 chooser is in %GTK_FILE_CHOOSER_ACTION_SAVE mode.
24283 Most applications just need to turn on the
24284 #GtkFileChooser:do-overwrite-confirmation property (or call the
24285 gtk_file_chooser_set_do_overwrite_confirmation() function), and
24286 they will automatically get a stock confirmation dialog.
24287 Applications which need to customize this behavior should do
24288 that, and also connect to the #GtkFileChooser::confirm-overwrite
24289 signal.
24290 A signal handler for this signal must return a
24291 #GtkFileChooserConfirmation value, which indicates the action to
24292 take.  If the handler determines that the user wants to select a
24293 different filename, it should return
24294 %GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN.  If it determines
24295 that the user is satisfied with his choice of file name, it
24296 should return %GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME.
24297 On the other hand, if it determines that the stock confirmation
24298 dialog should be used, it should return
24299 %GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM. The following example
24300 illustrates this.
24301 &lt;example id="gtkfilechooser-confirmation"&gt;
24302 &lt;title&gt;Custom confirmation&lt;/title&gt;
24303 &lt;programlisting&gt;
24304 static GtkFileChooserConfirmation
24305 confirm_overwrite_callback (GtkFileChooser *chooser, gpointer data)
24306 {
24307 char *uri;
24308 uri = gtk_file_chooser_get_uri (chooser);
24309 if (is_uri_read_only (uri))
24310 {
24311 if (user_wants_to_replace_read_only_file (uri))
24312 return GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME;
24313 else
24314 return GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN;
24315 } else
24316 return GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM; // fall back to the default dialog
24317 }
24318 ...
24319 chooser = gtk_file_chooser_dialog_new (...);
24320 gtk_file_chooser_set_do_overwrite_confirmation (GTK_FILE_CHOOSER (dialog), TRUE);
24321 g_signal_connect (chooser, "confirm-overwrite",
24322 G_CALLBACK (confirm_overwrite_callback), NULL);
24323 if (gtk_dialog_run (chooser) == GTK_RESPONSE_ACCEPT)
24324 save_to_file (gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (chooser));
24325 gtk_widget_destroy (chooser);
24326 &lt;/programlisting&gt;
24327 &lt;/example&gt;
24328 action to take after emitting the signal.</doc>
24329         <return-value transfer-ownership="full">
24330           <doc xml:whitespace="preserve">a #GtkFileChooserConfirmation value that indicates which</doc>
24331           <type name="FileChooserConfirmation"
24332                 c:type="GtkFileChooserConfirmation"/>
24333         </return-value>
24334       </glib:signal>
24335       <glib:signal name="current-folder-changed">
24336         <return-value transfer-ownership="full">
24337           <type name="none" c:type="void"/>
24338         </return-value>
24339       </glib:signal>
24340       <glib:signal name="file-activated">
24341         <return-value transfer-ownership="full">
24342           <type name="none" c:type="void"/>
24343         </return-value>
24344       </glib:signal>
24345       <glib:signal name="selection-changed">
24346         <return-value transfer-ownership="full">
24347           <type name="none" c:type="void"/>
24348         </return-value>
24349       </glib:signal>
24350       <glib:signal name="update-preview">
24351         <return-value transfer-ownership="full">
24352           <type name="none" c:type="void"/>
24353         </return-value>
24354       </glib:signal>
24355     </interface>
24356     <enumeration name="FileChooserAction"
24357                  glib:type-name="GtkFileChooserAction"
24358                  glib:get-type="gtk_file_chooser_action_get_type"
24359                  c:type="GtkFileChooserAction">
24360       <doc xml:whitespace="preserve">Describes whether a #GtkFileChooser is being used to open existing files
24361 or to save to a possibly new file.</doc>
24362       <member name="open"
24363               value="0"
24364               c:identifier="GTK_FILE_CHOOSER_ACTION_OPEN"
24365               glib:nick="open"/>
24366       <member name="save"
24367               value="1"
24368               c:identifier="GTK_FILE_CHOOSER_ACTION_SAVE"
24369               glib:nick="save"/>
24370       <member name="select_folder"
24371               value="2"
24372               c:identifier="GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER"
24373               glib:nick="select-folder"/>
24374       <member name="create_folder"
24375               value="3"
24376               c:identifier="GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER"
24377               glib:nick="create-folder"/>
24378     </enumeration>
24379     <class name="FileChooserButton"
24380            c:type="GtkFileChooserButton"
24381            parent="HBox"
24382            glib:type-name="GtkFileChooserButton"
24383            glib:get-type="gtk_file_chooser_button_get_type"
24384            glib:type-struct="FileChooserButtonClass">
24385       <implements name="Atk.ImplementorIface"/>
24386       <implements name="Buildable"/>
24387       <implements name="FileChooser"/>
24388       <implements name="Orientable"/>
24389       <constructor name="new"
24390                    c:identifier="gtk_file_chooser_button_new"
24391                    version="2.6">
24392         <doc xml:whitespace="preserve">Creates a new file-selecting button widget.</doc>
24393         <return-value transfer-ownership="full">
24394           <doc xml:whitespace="preserve">a new button widget.</doc>
24395           <type name="FileChooserButton" c:type="GtkWidget*"/>
24396         </return-value>
24397         <parameters>
24398           <parameter name="title" transfer-ownership="none">
24399             <doc xml:whitespace="preserve">the title of the browse dialog.</doc>
24400             <type name="utf8" c:type="gchar*"/>
24401           </parameter>
24402           <parameter name="action" transfer-ownership="none">
24403             <doc xml:whitespace="preserve">the open mode for the widget.</doc>
24404             <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
24405           </parameter>
24406         </parameters>
24407       </constructor>
24408       <constructor name="new_with_backend"
24409                    c:identifier="gtk_file_chooser_button_new_with_backend"
24410                    version="2.6"
24411                    deprecated="Use gtk_file_chooser_button_new() instead."
24412                    deprecated-version="2.14">
24413         <doc xml:whitespace="preserve">Creates a new file-selecting button widget using @backend.</doc>
24414         <return-value transfer-ownership="full">
24415           <doc xml:whitespace="preserve">a new button widget.</doc>
24416           <type name="FileChooserButton" c:type="GtkWidget*"/>
24417         </return-value>
24418         <parameters>
24419           <parameter name="title" transfer-ownership="none">
24420             <doc xml:whitespace="preserve">the title of the browse dialog.</doc>
24421             <type name="utf8" c:type="gchar*"/>
24422           </parameter>
24423           <parameter name="action" transfer-ownership="none">
24424             <doc xml:whitespace="preserve">the open mode for the widget.</doc>
24425             <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
24426           </parameter>
24427           <parameter name="backend" transfer-ownership="none">
24428             <doc xml:whitespace="preserve">the name of the #GtkFileSystem backend to use.</doc>
24429             <type name="utf8" c:type="gchar*"/>
24430           </parameter>
24431         </parameters>
24432       </constructor>
24433       <constructor name="new_with_dialog"
24434                    c:identifier="gtk_file_chooser_button_new_with_dialog"
24435                    version="2.6">
24436         <doc xml:whitespace="preserve">Creates a #GtkFileChooserButton widget which uses @dialog as its
24437 file-picking window.
24438 Note that @dialog must be a #GtkDialog (or subclass) which
24439 implements the #GtkFileChooser interface and must not have
24440 %GTK_DIALOG_DESTROY_WITH_PARENT set.
24441 Also note that the dialog needs to have its confirmative button
24442 added with response %GTK_RESPONSE_ACCEPT or %GTK_RESPONSE_OK in
24443 order for the button to take over the file selected in the dialog.</doc>
24444         <return-value transfer-ownership="full">
24445           <doc xml:whitespace="preserve">a new button widget.</doc>
24446           <type name="FileChooserButton" c:type="GtkWidget*"/>
24447         </return-value>
24448         <parameters>
24449           <parameter name="dialog" transfer-ownership="none">
24450             <doc xml:whitespace="preserve">the widget to use as dialog</doc>
24451             <type name="Widget" c:type="GtkWidget*"/>
24452           </parameter>
24453         </parameters>
24454       </constructor>
24455       <method name="get_title"
24456               c:identifier="gtk_file_chooser_button_get_title"
24457               version="2.6">
24458         <doc xml:whitespace="preserve">Retrieves the title of the browse dialog used by @button. The returned value
24459 should not be modified or freed.</doc>
24460         <return-value transfer-ownership="none">
24461           <doc xml:whitespace="preserve">a pointer to the browse dialog's title.</doc>
24462           <type name="utf8" c:type="gchar*"/>
24463         </return-value>
24464       </method>
24465       <method name="set_title"
24466               c:identifier="gtk_file_chooser_button_set_title"
24467               version="2.6">
24468         <doc xml:whitespace="preserve">Modifies the @title of the browse dialog used by @button.</doc>
24469         <return-value transfer-ownership="none">
24470           <type name="none" c:type="void"/>
24471         </return-value>
24472         <parameters>
24473           <parameter name="title" transfer-ownership="none">
24474             <doc xml:whitespace="preserve">the new browse dialog title.</doc>
24475             <type name="utf8" c:type="gchar*"/>
24476           </parameter>
24477         </parameters>
24478       </method>
24479       <method name="get_width_chars"
24480               c:identifier="gtk_file_chooser_button_get_width_chars"
24481               version="2.6">
24482         <doc xml:whitespace="preserve">Retrieves the width in characters of the @button widget's entry and/or label.</doc>
24483         <return-value transfer-ownership="none">
24484           <doc xml:whitespace="preserve">an integer width (in characters) that the button will use to size itself.</doc>
24485           <type name="int" c:type="gint"/>
24486         </return-value>
24487       </method>
24488       <method name="set_width_chars"
24489               c:identifier="gtk_file_chooser_button_set_width_chars"
24490               version="2.6">
24491         <doc xml:whitespace="preserve">Sets the width (in characters) that @button will use to @n_chars.</doc>
24492         <return-value transfer-ownership="none">
24493           <type name="none" c:type="void"/>
24494         </return-value>
24495         <parameters>
24496           <parameter name="n_chars" transfer-ownership="none">
24497             <doc xml:whitespace="preserve">the new width, in characters.</doc>
24498             <type name="int" c:type="gint"/>
24499           </parameter>
24500         </parameters>
24501       </method>
24502       <method name="get_focus_on_click"
24503               c:identifier="gtk_file_chooser_button_get_focus_on_click"
24504               version="2.10">
24505         <doc xml:whitespace="preserve">Returns whether the button grabs focus when it is clicked with the mouse.
24506 See gtk_file_chooser_button_set_focus_on_click().
24507 the mouse.</doc>
24508         <return-value transfer-ownership="none">
24509           <doc xml:whitespace="preserve">%TRUE if the button grabs focus when it is clicked with</doc>
24510           <type name="boolean" c:type="gboolean"/>
24511         </return-value>
24512       </method>
24513       <method name="set_focus_on_click"
24514               c:identifier="gtk_file_chooser_button_set_focus_on_click"
24515               version="2.10">
24516         <doc xml:whitespace="preserve">Sets whether the button will grab focus when it is clicked with the mouse.
24517 Making mouse clicks not grab focus is useful in places like toolbars where
24518 you don't want the keyboard focus removed from the main area of the
24519 application.</doc>
24520         <return-value transfer-ownership="none">
24521           <type name="none" c:type="void"/>
24522         </return-value>
24523         <parameters>
24524           <parameter name="focus_on_click" transfer-ownership="none">
24525             <doc xml:whitespace="preserve">whether the button grabs focus when clicked with the mouse</doc>
24526             <type name="boolean" c:type="gboolean"/>
24527           </parameter>
24528         </parameters>
24529       </method>
24530       <property name="dialog"
24531                 version="2.6"
24532                 readable="0"
24533                 writable="1"
24534                 construct-only="1"
24535                 transfer-ownership="none">
24536         <doc xml:whitespace="preserve">Instance of the #GtkFileChooserDialog associated with the button.</doc>
24537         <type name="FileChooser" c:type="GtkFileChooser"/>
24538       </property>
24539       <property name="focus-on-click"
24540                 version="2.10"
24541                 writable="1"
24542                 transfer-ownership="none">
24543         <doc xml:whitespace="preserve">Whether the #GtkFileChooserButton button grabs focus when it is clicked
24544 with the mouse.</doc>
24545         <type name="boolean" c:type="gboolean"/>
24546       </property>
24547       <property name="title"
24548                 version="2.6"
24549                 writable="1"
24550                 transfer-ownership="none">
24551         <doc xml:whitespace="preserve">Title to put on the #GtkFileChooserDialog associated with the button.</doc>
24552         <type name="utf8" c:type="gchararray"/>
24553       </property>
24554       <property name="width-chars"
24555                 version="2.6"
24556                 writable="1"
24557                 transfer-ownership="none">
24558         <doc xml:whitespace="preserve">The width of the entry and label inside the button, in characters.</doc>
24559         <type name="int" c:type="gint"/>
24560       </property>
24561       <field name="parent">
24562         <type name="HBox" c:type="GtkHBox"/>
24563       </field>
24564       <field name="priv">
24565         <type name="FileChooserButtonPrivate"
24566               c:type="GtkFileChooserButtonPrivate*"/>
24567       </field>
24568       <glib:signal name="file-set" version="2.12">
24569         <doc xml:whitespace="preserve">The ::file-set signal is emitted when the user selects a file.
24570 Note that this signal is only emitted when the &lt;emphasis&gt;user&lt;/emphasis&gt;
24571 changes the file.</doc>
24572         <return-value transfer-ownership="full">
24573           <type name="none" c:type="void"/>
24574         </return-value>
24575       </glib:signal>
24576     </class>
24577     <record name="FileChooserButtonClass"
24578             c:type="GtkFileChooserButtonClass"
24579             glib:is-gtype-struct-for="FileChooserButton">
24580       <field name="parent_class">
24581         <type name="HBoxClass" c:type="GtkHBoxClass"/>
24582       </field>
24583       <field name="file_set">
24584         <callback name="file_set" c:type="file_set">
24585           <return-value transfer-ownership="none">
24586             <type name="none" c:type="void"/>
24587           </return-value>
24588           <parameters>
24589             <parameter name="fc" transfer-ownership="none">
24590               <type name="FileChooserButton" c:type="GtkFileChooserButton*"/>
24591             </parameter>
24592           </parameters>
24593         </callback>
24594       </field>
24595       <field name="__gtk_reserved1">
24596         <type name="any" c:type="void*"/>
24597       </field>
24598       <field name="__gtk_reserved2">
24599         <type name="any" c:type="void*"/>
24600       </field>
24601       <field name="__gtk_reserved3">
24602         <type name="any" c:type="void*"/>
24603       </field>
24604       <field name="__gtk_reserved4">
24605         <type name="any" c:type="void*"/>
24606       </field>
24607       <field name="__gtk_reserved5">
24608         <type name="any" c:type="void*"/>
24609       </field>
24610       <field name="__gtk_reserved6">
24611         <type name="any" c:type="void*"/>
24612       </field>
24613       <field name="__gtk_reserved7">
24614         <type name="any" c:type="void*"/>
24615       </field>
24616     </record>
24617     <record name="FileChooserButtonPrivate"
24618             c:type="GtkFileChooserButtonPrivate">
24619     </record>
24620     <enumeration name="FileChooserConfirmation"
24621                  version="2.8"
24622                  glib:type-name="GtkFileChooserConfirmation"
24623                  glib:get-type="gtk_file_chooser_confirmation_get_type"
24624                  c:type="GtkFileChooserConfirmation">
24625       <doc xml:whitespace="preserve">Used as a return value of handlers for the
24626 #GtkFileChooser::confirm-overwrite signal of a #GtkFileChooser. This
24627 value determines whether the file chooser will present the stock
24628 confirmation dialog, accept the user's choice of a filename, or
24629 let the user choose another filename.</doc>
24630       <member name="confirm"
24631               value="0"
24632               c:identifier="GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM"
24633               glib:nick="confirm"/>
24634       <member name="accept_filename"
24635               value="1"
24636               c:identifier="GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME"
24637               glib:nick="accept-filename"/>
24638       <member name="select_again"
24639               value="2"
24640               c:identifier="GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN"
24641               glib:nick="select-again"/>
24642     </enumeration>
24643     <class name="FileChooserDialog"
24644            c:type="GtkFileChooserDialog"
24645            parent="Dialog"
24646            glib:type-name="GtkFileChooserDialog"
24647            glib:get-type="gtk_file_chooser_dialog_get_type"
24648            glib:type-struct="FileChooserDialogClass">
24649       <implements name="Atk.ImplementorIface"/>
24650       <implements name="Buildable"/>
24651       <implements name="FileChooser"/>
24652       <constructor name="new"
24653                    c:identifier="gtk_file_chooser_dialog_new"
24654                    version="2.4"
24655                    introspectable="0">
24656         <doc xml:whitespace="preserve">Creates a new #GtkFileChooserDialog.  This function is analogous to
24657 gtk_dialog_new_with_buttons().</doc>
24658         <return-value transfer-ownership="full">
24659           <doc xml:whitespace="preserve">a new #GtkFileChooserDialog</doc>
24660           <type name="FileChooserDialog" c:type="GtkWidget*"/>
24661         </return-value>
24662         <parameters>
24663           <parameter name="title" transfer-ownership="none" allow-none="1">
24664             <doc xml:whitespace="preserve">Title of the dialog, or %NULL</doc>
24665             <type name="utf8" c:type="gchar*"/>
24666           </parameter>
24667           <parameter name="parent" transfer-ownership="none" allow-none="1">
24668             <doc xml:whitespace="preserve">Transient parent of the dialog, or %NULL</doc>
24669             <type name="Window" c:type="GtkWindow*"/>
24670           </parameter>
24671           <parameter name="action" transfer-ownership="none">
24672             <doc xml:whitespace="preserve">Open or save mode for the dialog</doc>
24673             <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
24674           </parameter>
24675           <parameter name="first_button_text"
24676                      transfer-ownership="none"
24677                      allow-none="1">
24678             <doc xml:whitespace="preserve">stock ID or text to go in the first button, or %NULL</doc>
24679             <type name="utf8" c:type="gchar*"/>
24680           </parameter>
24681           <parameter transfer-ownership="none">
24682             <varargs>
24683             </varargs>
24684           </parameter>
24685         </parameters>
24686       </constructor>
24687       <constructor name="new_with_backend"
24688                    c:identifier="gtk_file_chooser_dialog_new_with_backend"
24689                    version="2.4"
24690                    introspectable="0"
24691                    deprecated="Use gtk_file_chooser_dialog_new() instead."
24692                    deprecated-version="2.14">
24693         <doc xml:whitespace="preserve">Creates a new #GtkFileChooserDialog with a specified backend. This is
24694 especially useful if you use gtk_file_chooser_set_local_only() to allow
24695 non-local files and you use a more expressive vfs, such as gnome-vfs,
24696 to load files.</doc>
24697         <return-value transfer-ownership="full">
24698           <doc xml:whitespace="preserve">a new #GtkFileChooserDialog</doc>
24699           <type name="FileChooserDialog" c:type="GtkWidget*"/>
24700         </return-value>
24701         <parameters>
24702           <parameter name="title" transfer-ownership="none" allow-none="1">
24703             <doc xml:whitespace="preserve">Title of the dialog, or %NULL</doc>
24704             <type name="utf8" c:type="gchar*"/>
24705           </parameter>
24706           <parameter name="parent" transfer-ownership="none" allow-none="1">
24707             <doc xml:whitespace="preserve">Transient parent of the dialog, or %NULL</doc>
24708             <type name="Window" c:type="GtkWindow*"/>
24709           </parameter>
24710           <parameter name="action" transfer-ownership="none">
24711             <doc xml:whitespace="preserve">Open or save mode for the dialog</doc>
24712             <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
24713           </parameter>
24714           <parameter name="backend" transfer-ownership="none">
24715             <doc xml:whitespace="preserve">The name of the specific filesystem backend to use.</doc>
24716             <type name="utf8" c:type="gchar*"/>
24717           </parameter>
24718           <parameter name="first_button_text"
24719                      transfer-ownership="none"
24720                      allow-none="1">
24721             <doc xml:whitespace="preserve">stock ID or text to go in the first button, or %NULL</doc>
24722             <type name="utf8" c:type="gchar*"/>
24723           </parameter>
24724           <parameter transfer-ownership="none">
24725             <varargs>
24726             </varargs>
24727           </parameter>
24728         </parameters>
24729       </constructor>
24730       <field name="parent_instance">
24731         <type name="Dialog" c:type="GtkDialog"/>
24732       </field>
24733       <field name="priv">
24734         <type name="FileChooserDialogPrivate"
24735               c:type="GtkFileChooserDialogPrivate*"/>
24736       </field>
24737     </class>
24738     <record name="FileChooserDialogClass"
24739             c:type="GtkFileChooserDialogClass"
24740             glib:is-gtype-struct-for="FileChooserDialog">
24741       <field name="parent_class">
24742         <type name="DialogClass" c:type="GtkDialogClass"/>
24743       </field>
24744     </record>
24745     <record name="FileChooserDialogPrivate"
24746             c:type="GtkFileChooserDialogPrivate">
24747     </record>
24748     <enumeration name="FileChooserError"
24749                  glib:type-name="GtkFileChooserError"
24750                  glib:get-type="gtk_file_chooser_error_get_type"
24751                  c:type="GtkFileChooserError"
24752                  glib:error-quark="gtk_file_chooser_error_quark">
24753       <doc xml:whitespace="preserve">These identify the various errors that can occur while calling
24754 #GtkFileChooser functions.</doc>
24755       <member name="nonexistent"
24756               value="0"
24757               c:identifier="GTK_FILE_CHOOSER_ERROR_NONEXISTENT"
24758               glib:nick="nonexistent"/>
24759       <member name="bad_filename"
24760               value="1"
24761               c:identifier="GTK_FILE_CHOOSER_ERROR_BAD_FILENAME"
24762               glib:nick="bad-filename"/>
24763       <member name="already_exists"
24764               value="2"
24765               c:identifier="GTK_FILE_CHOOSER_ERROR_ALREADY_EXISTS"
24766               glib:nick="already-exists"/>
24767       <member name="incomplete_hostname"
24768               value="3"
24769               c:identifier="GTK_FILE_CHOOSER_ERROR_INCOMPLETE_HOSTNAME"
24770               glib:nick="incomplete-hostname"/>
24771     </enumeration>
24772     <class name="FileChooserWidget"
24773            c:type="GtkFileChooserWidget"
24774            parent="VBox"
24775            glib:type-name="GtkFileChooserWidget"
24776            glib:get-type="gtk_file_chooser_widget_get_type"
24777            glib:type-struct="FileChooserWidgetClass">
24778       <implements name="Atk.ImplementorIface"/>
24779       <implements name="Buildable"/>
24780       <implements name="FileChooser"/>
24781       <implements name="Orientable"/>
24782       <constructor name="new"
24783                    c:identifier="gtk_file_chooser_widget_new"
24784                    version="2.4">
24785         <doc xml:whitespace="preserve">Creates a new #GtkFileChooserWidget.  This is a file chooser widget that can
24786 be embedded in custom windows, and it is the same widget that is used by
24787 #GtkFileChooserDialog.</doc>
24788         <return-value transfer-ownership="full">
24789           <doc xml:whitespace="preserve">a new #GtkFileChooserWidget</doc>
24790           <type name="FileChooserWidget" c:type="GtkWidget*"/>
24791         </return-value>
24792         <parameters>
24793           <parameter name="action" transfer-ownership="none">
24794             <doc xml:whitespace="preserve">Open or save mode for the widget</doc>
24795             <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
24796           </parameter>
24797         </parameters>
24798       </constructor>
24799       <constructor name="new_with_backend"
24800                    c:identifier="gtk_file_chooser_widget_new_with_backend"
24801                    version="2.4"
24802                    deprecated="Use gtk_file_chooser_widget_new() instead."
24803                    deprecated-version="2.14">
24804         <doc xml:whitespace="preserve">Creates a new #GtkFileChooserWidget with a specified backend.  This is
24805 especially useful if you use gtk_file_chooser_set_local_only() to allow
24806 non-local files.  This is a file chooser widget that can be embedded in
24807 custom windows and it is the same widget that is used by
24808 #GtkFileChooserDialog.</doc>
24809         <return-value transfer-ownership="full">
24810           <doc xml:whitespace="preserve">a new #GtkFileChooserWidget</doc>
24811           <type name="FileChooserWidget" c:type="GtkWidget*"/>
24812         </return-value>
24813         <parameters>
24814           <parameter name="action" transfer-ownership="none">
24815             <doc xml:whitespace="preserve">Open or save mode for the widget</doc>
24816             <type name="FileChooserAction" c:type="GtkFileChooserAction"/>
24817           </parameter>
24818           <parameter name="backend" transfer-ownership="none">
24819             <doc xml:whitespace="preserve">The name of the specific filesystem backend to use.</doc>
24820             <type name="utf8" c:type="gchar*"/>
24821           </parameter>
24822         </parameters>
24823       </constructor>
24824       <field name="parent_instance">
24825         <type name="VBox" c:type="GtkVBox"/>
24826       </field>
24827       <field name="priv">
24828         <type name="FileChooserWidgetPrivate"
24829               c:type="GtkFileChooserWidgetPrivate*"/>
24830       </field>
24831     </class>
24832     <record name="FileChooserWidgetClass"
24833             c:type="GtkFileChooserWidgetClass"
24834             glib:is-gtype-struct-for="FileChooserWidget">
24835       <field name="parent_class">
24836         <type name="VBoxClass" c:type="GtkVBoxClass"/>
24837       </field>
24838     </record>
24839     <record name="FileChooserWidgetPrivate"
24840             c:type="GtkFileChooserWidgetPrivate">
24841     </record>
24842     <class name="FileFilter"
24843            c:type="GtkFileFilter"
24844            parent="Object"
24845            glib:type-name="GtkFileFilter"
24846            glib:get-type="gtk_file_filter_get_type">
24847       <constructor name="new" c:identifier="gtk_file_filter_new" version="2.4">
24848         <doc xml:whitespace="preserve">Creates a new #GtkFileFilter with no rules added to it.
24849 Such a filter doesn't accept any files, so is not
24850 particularly useful until you add rules with
24851 gtk_file_filter_add_mime_type(), gtk_file_filter_add_pattern(),
24852 or gtk_file_filter_add_custom(). To create a filter
24853 that accepts any file, use:
24854 |[
24855 GtkFileFilter *filter = gtk_file_filter_new ();
24856 gtk_file_filter_add_pattern (filter, "*");
24857 ]|</doc>
24858         <return-value transfer-ownership="full">
24859           <doc xml:whitespace="preserve">a new #GtkFileFilter</doc>
24860           <type name="FileFilter" c:type="GtkFileFilter*"/>
24861         </return-value>
24862       </constructor>
24863       <method name="set_name"
24864               c:identifier="gtk_file_filter_set_name"
24865               version="2.4">
24866         <doc xml:whitespace="preserve">Sets the human-readable name of the filter; this is the string
24867 that will be displayed in the file selector user interface if
24868 there is a selectable list of filters.</doc>
24869         <return-value transfer-ownership="none">
24870           <type name="none" c:type="void"/>
24871         </return-value>
24872         <parameters>
24873           <parameter name="name" transfer-ownership="none" allow-none="1">
24874             <doc xml:whitespace="preserve">the human-readable-name for the filter, or %NULL to remove any existing name.</doc>
24875             <type name="utf8" c:type="gchar*"/>
24876           </parameter>
24877         </parameters>
24878       </method>
24879       <method name="get_name"
24880               c:identifier="gtk_file_filter_get_name"
24881               version="2.4">
24882         <doc xml:whitespace="preserve">Gets the human-readable name for the filter. See gtk_file_filter_set_name().
24883 or %NULL. This value is owned by GTK+ and must not
24884 be modified or freed.</doc>
24885         <return-value transfer-ownership="none">
24886           <doc xml:whitespace="preserve">The human-readable name of the filter,</doc>
24887           <type name="utf8" c:type="gchar*"/>
24888         </return-value>
24889       </method>
24890       <method name="add_mime_type"
24891               c:identifier="gtk_file_filter_add_mime_type"
24892               version="2.4">
24893         <doc xml:whitespace="preserve">Adds a rule allowing a given mime type to @filter.</doc>
24894         <return-value transfer-ownership="none">
24895           <type name="none" c:type="void"/>
24896         </return-value>
24897         <parameters>
24898           <parameter name="mime_type" transfer-ownership="none">
24899             <doc xml:whitespace="preserve">name of a MIME type</doc>
24900             <type name="utf8" c:type="gchar*"/>
24901           </parameter>
24902         </parameters>
24903       </method>
24904       <method name="add_pattern"
24905               c:identifier="gtk_file_filter_add_pattern"
24906               version="2.4">
24907         <doc xml:whitespace="preserve">Adds a rule allowing a shell style glob to a filter.</doc>
24908         <return-value transfer-ownership="none">
24909           <type name="none" c:type="void"/>
24910         </return-value>
24911         <parameters>
24912           <parameter name="pattern" transfer-ownership="none">
24913             <doc xml:whitespace="preserve">a shell style glob</doc>
24914             <type name="utf8" c:type="gchar*"/>
24915           </parameter>
24916         </parameters>
24917       </method>
24918       <method name="add_pixbuf_formats"
24919               c:identifier="gtk_file_filter_add_pixbuf_formats"
24920               version="2.6">
24921         <doc xml:whitespace="preserve">Adds a rule allowing image files in the formats supported
24922 by GdkPixbuf.</doc>
24923         <return-value transfer-ownership="none">
24924           <type name="none" c:type="void"/>
24925         </return-value>
24926       </method>
24927       <method name="add_custom"
24928               c:identifier="gtk_file_filter_add_custom"
24929               version="2.4">
24930         <doc xml:whitespace="preserve">Adds rule to a filter that allows files based on a custom callback
24931 function. The bitfield @needed which is passed in provides information
24932 about what sorts of information that the filter function needs;
24933 this allows GTK+ to avoid retrieving expensive information when
24934 it isn't needed by the filter.</doc>
24935         <return-value transfer-ownership="none">
24936           <type name="none" c:type="void"/>
24937         </return-value>
24938         <parameters>
24939           <parameter name="needed" transfer-ownership="none">
24940             <doc xml:whitespace="preserve">bitfield of flags indicating the information that the custom filter function needs.</doc>
24941             <type name="FileFilterFlags" c:type="GtkFileFilterFlags"/>
24942           </parameter>
24943           <parameter name="func"
24944                      transfer-ownership="none"
24945                      scope="notified"
24946                      closure="3"
24947                      destroy="4">
24948             <doc xml:whitespace="preserve">callback function; if the function returns %TRUE, then the file will be displayed.</doc>
24949             <type name="FileFilterFunc" c:type="GtkFileFilterFunc"/>
24950           </parameter>
24951           <parameter name="data" transfer-ownership="none">
24952             <doc xml:whitespace="preserve">data to pass to @func</doc>
24953             <type name="any" c:type="gpointer"/>
24954           </parameter>
24955           <parameter name="notify" transfer-ownership="none" scope="call">
24956             <doc xml:whitespace="preserve">function to call to free @data when it is no longer needed.</doc>
24957             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
24958           </parameter>
24959         </parameters>
24960       </method>
24961       <method name="get_needed"
24962               c:identifier="gtk_file_filter_get_needed"
24963               version="2.4">
24964         <doc xml:whitespace="preserve">Gets the fields that need to be filled in for the structure
24965 passed to gtk_file_filter_filter()
24966 This function will not typically be used by applications; it
24967 is intended principally for use in the implementation of
24968 #GtkFileChooser.
24969 calling gtk_file_filter_filter()</doc>
24970         <return-value transfer-ownership="full">
24971           <doc xml:whitespace="preserve">bitfield of flags indicating needed fields when</doc>
24972           <type name="FileFilterFlags" c:type="GtkFileFilterFlags"/>
24973         </return-value>
24974       </method>
24975       <method name="filter"
24976               c:identifier="gtk_file_filter_filter"
24977               version="2.4">
24978         <doc xml:whitespace="preserve">Tests whether a file should be displayed according to @filter.
24979 The #GtkFileFilterInfo structure @filter_info should include
24980 the fields returned from gtk_file_filter_get_needed().
24981 This function will not typically be used by applications; it
24982 is intended principally for use in the implementation of
24983 #GtkFileChooser.</doc>
24984         <return-value transfer-ownership="none">
24985           <doc xml:whitespace="preserve">%TRUE if the file should be displayed</doc>
24986           <type name="boolean" c:type="gboolean"/>
24987         </return-value>
24988         <parameters>
24989           <parameter name="filter_info" transfer-ownership="none">
24990             <doc xml:whitespace="preserve">a #GtkFileFilterInfo structure containing information about a file.</doc>
24991             <type name="FileFilterInfo" c:type="GtkFileFilterInfo*"/>
24992           </parameter>
24993         </parameters>
24994       </method>
24995     </class>
24996     <bitfield name="FileFilterFlags"
24997               glib:type-name="GtkFileFilterFlags"
24998               glib:get-type="gtk_file_filter_flags_get_type"
24999               c:type="GtkFileFilterFlags">
25000       <member name="filename"
25001               value="1"
25002               c:identifier="GTK_FILE_FILTER_FILENAME"
25003               glib:nick="filename"/>
25004       <member name="uri"
25005               value="2"
25006               c:identifier="GTK_FILE_FILTER_URI"
25007               glib:nick="uri"/>
25008       <member name="display_name"
25009               value="4"
25010               c:identifier="GTK_FILE_FILTER_DISPLAY_NAME"
25011               glib:nick="display-name"/>
25012       <member name="mime_type"
25013               value="8"
25014               c:identifier="GTK_FILE_FILTER_MIME_TYPE"
25015               glib:nick="mime-type"/>
25016     </bitfield>
25017     <callback name="FileFilterFunc" c:type="GtkFileFilterFunc">
25018       <return-value transfer-ownership="none">
25019         <type name="boolean" c:type="gboolean"/>
25020       </return-value>
25021       <parameters>
25022         <parameter name="filter_info" transfer-ownership="none">
25023           <type name="FileFilterInfo" c:type="GtkFileFilterInfo*"/>
25024         </parameter>
25025         <parameter name="data" transfer-ownership="none">
25026           <type name="any" c:type="gpointer"/>
25027         </parameter>
25028       </parameters>
25029     </callback>
25030     <record name="FileFilterInfo" c:type="GtkFileFilterInfo">
25031       <field name="contains" writable="1">
25032         <type name="FileFilterFlags" c:type="GtkFileFilterFlags"/>
25033       </field>
25034       <field name="filename" writable="1">
25035         <type name="utf8" c:type="gchar*"/>
25036       </field>
25037       <field name="uri" writable="1">
25038         <type name="utf8" c:type="gchar*"/>
25039       </field>
25040       <field name="display_name" writable="1">
25041         <type name="utf8" c:type="gchar*"/>
25042       </field>
25043       <field name="mime_type" writable="1">
25044         <type name="utf8" c:type="gchar*"/>
25045       </field>
25046     </record>
25047     <class name="FileSelection"
25048            c:type="GtkFileSelection"
25049            parent="Dialog"
25050            glib:type-name="GtkFileSelection"
25051            glib:get-type="gtk_file_selection_get_type"
25052            glib:type-struct="FileSelectionClass">
25053       <implements name="Atk.ImplementorIface"/>
25054       <implements name="Buildable"/>
25055       <constructor name="new" c:identifier="gtk_file_selection_new">
25056         <return-value transfer-ownership="full">
25057           <type name="FileSelection" c:type="GtkWidget*"/>
25058         </return-value>
25059         <parameters>
25060           <parameter name="title" transfer-ownership="none">
25061             <type name="utf8" c:type="gchar*"/>
25062           </parameter>
25063         </parameters>
25064       </constructor>
25065       <method name="set_filename"
25066               c:identifier="gtk_file_selection_set_filename">
25067         <doc xml:whitespace="preserve">Sets a default path for the file requestor. If @filename includes a
25068 directory path, then the requestor will open with that path as its
25069 current working directory.
25070 This has the consequence that in order to open the requestor with a 
25071 working directory and an empty filename, @filename must have a trailing
25072 directory separator.
25073 The encoding of @filename is preferred GLib file name encoding, which
25074 may not be UTF-8. See g_filename_from_utf8().</doc>
25075         <return-value transfer-ownership="none">
25076           <type name="none" c:type="void"/>
25077         </return-value>
25078         <parameters>
25079           <parameter name="filename" transfer-ownership="none">
25080             <doc xml:whitespace="preserve">a string to set as the default file name.</doc>
25081             <type name="utf8" c:type="gchar*"/>
25082           </parameter>
25083         </parameters>
25084       </method>
25085       <method name="get_filename"
25086               c:identifier="gtk_file_selection_get_filename">
25087         <doc xml:whitespace="preserve">This function returns the selected filename in the GLib file name
25088 encoding. To convert to UTF-8, call g_filename_to_utf8(). The
25089 returned string points to a statically allocated buffer and should
25090 be copied if you plan to keep it around.
25091 If no file is selected then the selected directory path is returned.</doc>
25092         <return-value transfer-ownership="none">
25093           <doc xml:whitespace="preserve">currently-selected filename in the on-disk encoding.</doc>
25094           <type name="utf8" c:type="gchar*"/>
25095         </return-value>
25096       </method>
25097       <method name="complete" c:identifier="gtk_file_selection_complete">
25098         <return-value transfer-ownership="none">
25099           <type name="none" c:type="void"/>
25100         </return-value>
25101         <parameters>
25102           <parameter name="pattern" transfer-ownership="none">
25103             <type name="utf8" c:type="gchar*"/>
25104           </parameter>
25105         </parameters>
25106       </method>
25107       <method name="show_fileop_buttons"
25108               c:identifier="gtk_file_selection_show_fileop_buttons">
25109         <return-value transfer-ownership="none">
25110           <type name="none" c:type="void"/>
25111         </return-value>
25112       </method>
25113       <method name="hide_fileop_buttons"
25114               c:identifier="gtk_file_selection_hide_fileop_buttons">
25115         <return-value transfer-ownership="none">
25116           <type name="none" c:type="void"/>
25117         </return-value>
25118       </method>
25119       <method name="get_selections"
25120               c:identifier="gtk_file_selection_get_selections">
25121         <doc xml:whitespace="preserve">Retrieves the list of file selections the user has made in the dialog box.
25122 This function is intended for use when the user can select multiple files
25123 in the file list. 
25124 The filenames are in the GLib file name encoding. To convert to
25125 UTF-8, call g_filename_to_utf8() on each string.
25126 g_strfreev() to free it.</doc>
25127         <return-value transfer-ownership="full">
25128           <doc xml:whitespace="preserve">a newly-allocated %NULL-terminated array of strings. Use</doc>
25129           <array c:type="gchar**">
25130             <type name="utf8"/>
25131           </array>
25132         </return-value>
25133       </method>
25134       <method name="set_select_multiple"
25135               c:identifier="gtk_file_selection_set_select_multiple">
25136         <doc xml:whitespace="preserve">Sets whether the user is allowed to select multiple files in the file list.
25137 Use gtk_file_selection_get_selections () to get the list of selected files.</doc>
25138         <return-value transfer-ownership="none">
25139           <type name="none" c:type="void"/>
25140         </return-value>
25141         <parameters>
25142           <parameter name="select_multiple" transfer-ownership="none">
25143             <doc xml:whitespace="preserve">whether or not the user is allowed to select multiple files in the file list.</doc>
25144             <type name="boolean" c:type="gboolean"/>
25145           </parameter>
25146         </parameters>
25147       </method>
25148       <method name="get_select_multiple"
25149               c:identifier="gtk_file_selection_get_select_multiple">
25150         <doc xml:whitespace="preserve">Determines whether or not the user is allowed to select multiple files in
25151 the file list. See gtk_file_selection_set_select_multiple().
25152 file list</doc>
25153         <return-value transfer-ownership="none">
25154           <doc xml:whitespace="preserve">%TRUE if the user is allowed to select multiple files in the</doc>
25155           <type name="boolean" c:type="gboolean"/>
25156         </return-value>
25157       </method>
25158       <property name="filename" writable="1" transfer-ownership="none">
25159         <type name="utf8" c:type="gchararray"/>
25160       </property>
25161       <property name="select-multiple" writable="1" transfer-ownership="none">
25162         <type name="boolean" c:type="gboolean"/>
25163       </property>
25164       <property name="show-fileops" writable="1" transfer-ownership="none">
25165         <type name="boolean" c:type="gboolean"/>
25166       </property>
25167       <field name="parent_instance">
25168         <type name="Dialog" c:type="GtkDialog"/>
25169       </field>
25170       <field name="dir_list">
25171         <type name="Widget" c:type="GtkWidget*"/>
25172       </field>
25173       <field name="file_list">
25174         <type name="Widget" c:type="GtkWidget*"/>
25175       </field>
25176       <field name="selection_entry">
25177         <type name="Widget" c:type="GtkWidget*"/>
25178       </field>
25179       <field name="selection_text">
25180         <type name="Widget" c:type="GtkWidget*"/>
25181       </field>
25182       <field name="main_vbox">
25183         <type name="Widget" c:type="GtkWidget*"/>
25184       </field>
25185       <field name="ok_button">
25186         <type name="Widget" c:type="GtkWidget*"/>
25187       </field>
25188       <field name="cancel_button">
25189         <type name="Widget" c:type="GtkWidget*"/>
25190       </field>
25191       <field name="help_button">
25192         <type name="Widget" c:type="GtkWidget*"/>
25193       </field>
25194       <field name="history_pulldown">
25195         <type name="Widget" c:type="GtkWidget*"/>
25196       </field>
25197       <field name="history_menu">
25198         <type name="Widget" c:type="GtkWidget*"/>
25199       </field>
25200       <field name="history_list">
25201         <type name="GLib.List" c:type="GList*">
25202           <type name="any" c:type="gpointer"/>
25203         </type>
25204       </field>
25205       <field name="fileop_dialog">
25206         <type name="Widget" c:type="GtkWidget*"/>
25207       </field>
25208       <field name="fileop_entry">
25209         <type name="Widget" c:type="GtkWidget*"/>
25210       </field>
25211       <field name="fileop_file">
25212         <type name="utf8" c:type="gchar*"/>
25213       </field>
25214       <field name="cmpl_state">
25215         <type name="any" c:type="gpointer"/>
25216       </field>
25217       <field name="fileop_c_dir">
25218         <type name="Widget" c:type="GtkWidget*"/>
25219       </field>
25220       <field name="fileop_del_file">
25221         <type name="Widget" c:type="GtkWidget*"/>
25222       </field>
25223       <field name="fileop_ren_file">
25224         <type name="Widget" c:type="GtkWidget*"/>
25225       </field>
25226       <field name="button_area">
25227         <type name="Widget" c:type="GtkWidget*"/>
25228       </field>
25229       <field name="action_area">
25230         <type name="Widget" c:type="GtkWidget*"/>
25231       </field>
25232       <field name="selected_names">
25233         <type name="GLib.PtrArray" c:type="GPtrArray*"/>
25234       </field>
25235       <field name="last_selected">
25236         <type name="utf8" c:type="gchar*"/>
25237       </field>
25238     </class>
25239     <record name="FileSelectionClass"
25240             c:type="GtkFileSelectionClass"
25241             glib:is-gtype-struct-for="FileSelection">
25242       <field name="parent_class">
25243         <type name="DialogClass" c:type="GtkDialogClass"/>
25244       </field>
25245       <field name="gtk_reserved1">
25246         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
25247           <return-value transfer-ownership="none">
25248             <type name="none" c:type="void"/>
25249           </return-value>
25250         </callback>
25251       </field>
25252       <field name="gtk_reserved2">
25253         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
25254           <return-value transfer-ownership="none">
25255             <type name="none" c:type="void"/>
25256           </return-value>
25257         </callback>
25258       </field>
25259       <field name="gtk_reserved3">
25260         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
25261           <return-value transfer-ownership="none">
25262             <type name="none" c:type="void"/>
25263           </return-value>
25264         </callback>
25265       </field>
25266       <field name="gtk_reserved4">
25267         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
25268           <return-value transfer-ownership="none">
25269             <type name="none" c:type="void"/>
25270           </return-value>
25271         </callback>
25272       </field>
25273     </record>
25274     <class name="Fixed"
25275            c:type="GtkFixed"
25276            parent="Container"
25277            glib:type-name="GtkFixed"
25278            glib:get-type="gtk_fixed_get_type"
25279            glib:type-struct="FixedClass">
25280       <implements name="Atk.ImplementorIface"/>
25281       <implements name="Buildable"/>
25282       <constructor name="new" c:identifier="gtk_fixed_new">
25283         <return-value transfer-ownership="full">
25284           <type name="Fixed" c:type="GtkWidget*"/>
25285         </return-value>
25286       </constructor>
25287       <method name="put" c:identifier="gtk_fixed_put">
25288         <return-value transfer-ownership="none">
25289           <type name="none" c:type="void"/>
25290         </return-value>
25291         <parameters>
25292           <parameter name="widget" transfer-ownership="none">
25293             <type name="Widget" c:type="GtkWidget*"/>
25294           </parameter>
25295           <parameter name="x" transfer-ownership="none">
25296             <type name="int" c:type="gint"/>
25297           </parameter>
25298           <parameter name="y" transfer-ownership="none">
25299             <type name="int" c:type="gint"/>
25300           </parameter>
25301         </parameters>
25302       </method>
25303       <method name="move" c:identifier="gtk_fixed_move">
25304         <return-value transfer-ownership="none">
25305           <type name="none" c:type="void"/>
25306         </return-value>
25307         <parameters>
25308           <parameter name="widget" transfer-ownership="none">
25309             <type name="Widget" c:type="GtkWidget*"/>
25310           </parameter>
25311           <parameter name="x" transfer-ownership="none">
25312             <type name="int" c:type="gint"/>
25313           </parameter>
25314           <parameter name="y" transfer-ownership="none">
25315             <type name="int" c:type="gint"/>
25316           </parameter>
25317         </parameters>
25318       </method>
25319       <method name="set_has_window"
25320               c:identifier="gtk_fixed_set_has_window"
25321               deprecated="Use gtk_widget_set_has_window() instead."
25322               deprecated-version="2.20">
25323         <doc xml:whitespace="preserve">Sets whether a #GtkFixed widget is created with a separate
25324 #GdkWindow for @widget-&gt;window or not. (By default, it will be
25325 created with no separate #GdkWindow). This function must be called
25326 while the #GtkFixed is not realized, for instance, immediately after the
25327 window is created.
25328 This function was added to provide an easy migration path for
25329 older applications which may expect #GtkFixed to have a separate window.</doc>
25330         <return-value transfer-ownership="none">
25331           <type name="none" c:type="void"/>
25332         </return-value>
25333         <parameters>
25334           <parameter name="has_window" transfer-ownership="none">
25335             <doc xml:whitespace="preserve">%TRUE if a separate window should be created</doc>
25336             <type name="boolean" c:type="gboolean"/>
25337           </parameter>
25338         </parameters>
25339       </method>
25340       <method name="get_has_window"
25341               c:identifier="gtk_fixed_get_has_window"
25342               deprecated="Use gtk_widget_get_has_window() instead."
25343               deprecated-version="2.20">
25344         <doc xml:whitespace="preserve">Gets whether the #GtkFixed has its own #GdkWindow.
25345 See gtk_fixed_set_has_window().</doc>
25346         <return-value transfer-ownership="none">
25347           <doc xml:whitespace="preserve">%TRUE if @fixed has its own window.</doc>
25348           <type name="boolean" c:type="gboolean"/>
25349         </return-value>
25350       </method>
25351       <field name="container">
25352         <type name="Container" c:type="GtkContainer"/>
25353       </field>
25354       <field name="children">
25355         <type name="GLib.List" c:type="GList*">
25356           <type name="any" c:type="gpointer"/>
25357         </type>
25358       </field>
25359     </class>
25360     <record name="FixedChild" c:type="GtkFixedChild">
25361       <field name="widget" writable="1">
25362         <type name="Widget" c:type="GtkWidget*"/>
25363       </field>
25364       <field name="x" writable="1">
25365         <type name="int" c:type="gint"/>
25366       </field>
25367       <field name="y" writable="1">
25368         <type name="int" c:type="gint"/>
25369       </field>
25370     </record>
25371     <record name="FixedClass"
25372             c:type="GtkFixedClass"
25373             glib:is-gtype-struct-for="Fixed">
25374       <field name="parent_class">
25375         <type name="ContainerClass" c:type="GtkContainerClass"/>
25376       </field>
25377     </record>
25378     <class name="FontButton"
25379            c:type="GtkFontButton"
25380            parent="Button"
25381            glib:type-name="GtkFontButton"
25382            glib:get-type="gtk_font_button_get_type"
25383            glib:type-struct="FontButtonClass">
25384       <implements name="Activatable"/>
25385       <implements name="Atk.ImplementorIface"/>
25386       <implements name="Buildable"/>
25387       <constructor name="new" c:identifier="gtk_font_button_new" version="2.4">
25388         <doc xml:whitespace="preserve">Creates a new font picker widget.</doc>
25389         <return-value transfer-ownership="full">
25390           <doc xml:whitespace="preserve">a new font picker widget.</doc>
25391           <type name="FontButton" c:type="GtkWidget*"/>
25392         </return-value>
25393       </constructor>
25394       <constructor name="new_with_font"
25395                    c:identifier="gtk_font_button_new_with_font"
25396                    version="2.4">
25397         <doc xml:whitespace="preserve">Creates a new font picker widget.</doc>
25398         <return-value transfer-ownership="full">
25399           <doc xml:whitespace="preserve">a new font picker widget.</doc>
25400           <type name="FontButton" c:type="GtkWidget*"/>
25401         </return-value>
25402         <parameters>
25403           <parameter name="fontname" transfer-ownership="none">
25404             <doc xml:whitespace="preserve">Name of font to display in font selection dialog</doc>
25405             <type name="utf8" c:type="gchar*"/>
25406           </parameter>
25407         </parameters>
25408       </constructor>
25409       <method name="get_title"
25410               c:identifier="gtk_font_button_get_title"
25411               version="2.4">
25412         <doc xml:whitespace="preserve">Retrieves the title of the font selection dialog.</doc>
25413         <return-value transfer-ownership="none">
25414           <doc xml:whitespace="preserve">an internal copy of the title string which must not be freed.</doc>
25415           <type name="utf8" c:type="gchar*"/>
25416         </return-value>
25417       </method>
25418       <method name="set_title"
25419               c:identifier="gtk_font_button_set_title"
25420               version="2.4">
25421         <doc xml:whitespace="preserve">Sets the title for the font selection dialog.</doc>
25422         <return-value transfer-ownership="none">
25423           <type name="none" c:type="void"/>
25424         </return-value>
25425         <parameters>
25426           <parameter name="title" transfer-ownership="none">
25427             <doc xml:whitespace="preserve">a string containing the font selection dialog title</doc>
25428             <type name="utf8" c:type="gchar*"/>
25429           </parameter>
25430         </parameters>
25431       </method>
25432       <method name="get_use_font"
25433               c:identifier="gtk_font_button_get_use_font"
25434               version="2.4">
25435         <doc xml:whitespace="preserve">Returns whether the selected font is used in the label.</doc>
25436         <return-value transfer-ownership="none">
25437           <doc xml:whitespace="preserve">whether the selected font is used in the label.</doc>
25438           <type name="boolean" c:type="gboolean"/>
25439         </return-value>
25440       </method>
25441       <method name="set_use_font"
25442               c:identifier="gtk_font_button_set_use_font"
25443               version="2.4">
25444         <doc xml:whitespace="preserve">If @use_font is %TRUE, the font name will be written using the selected font.</doc>
25445         <return-value transfer-ownership="none">
25446           <type name="none" c:type="void"/>
25447         </return-value>
25448         <parameters>
25449           <parameter name="use_font" transfer-ownership="none">
25450             <doc xml:whitespace="preserve">If %TRUE, font name will be written using font chosen.</doc>
25451             <type name="boolean" c:type="gboolean"/>
25452           </parameter>
25453         </parameters>
25454       </method>
25455       <method name="get_use_size"
25456               c:identifier="gtk_font_button_get_use_size"
25457               version="2.4">
25458         <doc xml:whitespace="preserve">Returns whether the selected size is used in the label.</doc>
25459         <return-value transfer-ownership="none">
25460           <doc xml:whitespace="preserve">whether the selected size is used in the label.</doc>
25461           <type name="boolean" c:type="gboolean"/>
25462         </return-value>
25463       </method>
25464       <method name="set_use_size"
25465               c:identifier="gtk_font_button_set_use_size"
25466               version="2.4">
25467         <doc xml:whitespace="preserve">If @use_size is %TRUE, the font name will be written using the selected size.</doc>
25468         <return-value transfer-ownership="none">
25469           <type name="none" c:type="void"/>
25470         </return-value>
25471         <parameters>
25472           <parameter name="use_size" transfer-ownership="none">
25473             <doc xml:whitespace="preserve">If %TRUE, font name will be written using the selected size.</doc>
25474             <type name="boolean" c:type="gboolean"/>
25475           </parameter>
25476         </parameters>
25477       </method>
25478       <method name="get_font_name"
25479               c:identifier="gtk_font_button_get_font_name"
25480               version="2.4">
25481         <doc xml:whitespace="preserve">Retrieves the name of the currently selected font. This name includes
25482 style and size information as well. If you want to render something
25483 with the font, use this string with pango_font_description_from_string() .
25484 If you're interested in peeking certain values (family name,
25485 style, size, weight) just query these properties from the
25486 #PangoFontDescription object.</doc>
25487         <return-value transfer-ownership="none">
25488           <doc xml:whitespace="preserve">an internal copy of the font name which must not be freed.</doc>
25489           <type name="utf8" c:type="gchar*"/>
25490         </return-value>
25491       </method>
25492       <method name="set_font_name"
25493               c:identifier="gtk_font_button_set_font_name"
25494               version="2.4">
25495         <doc xml:whitespace="preserve">Sets or updates the currently-displayed font in font picker dialog.
25496 font selection dialog exists, otherwise %FALSE.</doc>
25497         <return-value transfer-ownership="none">
25498           <doc xml:whitespace="preserve">Return value of gtk_font_selection_dialog_set_font_name() if the</doc>
25499           <type name="boolean" c:type="gboolean"/>
25500         </return-value>
25501         <parameters>
25502           <parameter name="fontname" transfer-ownership="none">
25503             <doc xml:whitespace="preserve">Name of font to display in font selection dialog</doc>
25504             <type name="utf8" c:type="gchar*"/>
25505           </parameter>
25506         </parameters>
25507       </method>
25508       <method name="get_show_style"
25509               c:identifier="gtk_font_button_get_show_style"
25510               version="2.4">
25511         <doc xml:whitespace="preserve">Returns whether the name of the font style will be shown in the label.</doc>
25512         <return-value transfer-ownership="none">
25513           <doc xml:whitespace="preserve">whether the font style will be shown in the label.</doc>
25514           <type name="boolean" c:type="gboolean"/>
25515         </return-value>
25516       </method>
25517       <method name="set_show_style"
25518               c:identifier="gtk_font_button_set_show_style"
25519               version="2.4">
25520         <doc xml:whitespace="preserve">If @show_style is %TRUE, the font style will be displayed along with name of the selected font.</doc>
25521         <return-value transfer-ownership="none">
25522           <type name="none" c:type="void"/>
25523         </return-value>
25524         <parameters>
25525           <parameter name="show_style" transfer-ownership="none">
25526             <doc xml:whitespace="preserve">%TRUE if font style should be displayed in label.</doc>
25527             <type name="boolean" c:type="gboolean"/>
25528           </parameter>
25529         </parameters>
25530       </method>
25531       <method name="get_show_size"
25532               c:identifier="gtk_font_button_get_show_size"
25533               version="2.4">
25534         <doc xml:whitespace="preserve">Returns whether the font size will be shown in the label.</doc>
25535         <return-value transfer-ownership="none">
25536           <doc xml:whitespace="preserve">whether the font size will be shown in the label.</doc>
25537           <type name="boolean" c:type="gboolean"/>
25538         </return-value>
25539       </method>
25540       <method name="set_show_size"
25541               c:identifier="gtk_font_button_set_show_size"
25542               version="2.4">
25543         <doc xml:whitespace="preserve">If @show_size is %TRUE, the font size will be displayed along with the name of the selected font.</doc>
25544         <return-value transfer-ownership="none">
25545           <type name="none" c:type="void"/>
25546         </return-value>
25547         <parameters>
25548           <parameter name="show_size" transfer-ownership="none">
25549             <doc xml:whitespace="preserve">%TRUE if font size should be displayed in dialog.</doc>
25550             <type name="boolean" c:type="gboolean"/>
25551           </parameter>
25552         </parameters>
25553       </method>
25554       <property name="font-name"
25555                 version="2.4"
25556                 writable="1"
25557                 transfer-ownership="none">
25558         <doc xml:whitespace="preserve">The name of the currently selected font.</doc>
25559         <type name="utf8" c:type="gchararray"/>
25560       </property>
25561       <property name="show-size"
25562                 version="2.4"
25563                 writable="1"
25564                 transfer-ownership="none">
25565         <doc xml:whitespace="preserve">If this property is set to %TRUE, the selected font size will be shown 
25566 in the label. For a more WYSIWYG way to show the selected size, see the 
25567 ::use-size property.</doc>
25568         <type name="boolean" c:type="gboolean"/>
25569       </property>
25570       <property name="show-style"
25571                 version="2.4"
25572                 writable="1"
25573                 transfer-ownership="none">
25574         <doc xml:whitespace="preserve">If this property is set to %TRUE, the name of the selected font style 
25575 will be shown in the label. For a more WYSIWYG way to show the selected 
25576 style, see the ::use-font property.</doc>
25577         <type name="boolean" c:type="gboolean"/>
25578       </property>
25579       <property name="title"
25580                 version="2.4"
25581                 writable="1"
25582                 transfer-ownership="none">
25583         <doc xml:whitespace="preserve">The title of the font selection dialog.</doc>
25584         <type name="utf8" c:type="gchararray"/>
25585       </property>
25586       <property name="use-font"
25587                 version="2.4"
25588                 writable="1"
25589                 transfer-ownership="none">
25590         <doc xml:whitespace="preserve">If this property is set to %TRUE, the label will be drawn 
25591 in the selected font.</doc>
25592         <type name="boolean" c:type="gboolean"/>
25593       </property>
25594       <property name="use-size"
25595                 version="2.4"
25596                 writable="1"
25597                 transfer-ownership="none">
25598         <doc xml:whitespace="preserve">If this property is set to %TRUE, the label will be drawn 
25599 with the selected font size.</doc>
25600         <type name="boolean" c:type="gboolean"/>
25601       </property>
25602       <field name="button">
25603         <type name="Button" c:type="GtkButton"/>
25604       </field>
25605       <field name="priv">
25606         <type name="FontButtonPrivate" c:type="GtkFontButtonPrivate*"/>
25607       </field>
25608       <glib:signal name="font-set" version="2.4">
25609         <doc xml:whitespace="preserve">The ::font-set signal is emitted when the user selects a font. 
25610 When handling this signal, use gtk_font_button_get_font_name() 
25611 to find out which font was just selected.
25612 Note that this signal is only emitted when the &lt;emphasis&gt;user&lt;/emphasis&gt;
25613 changes the font. If you need to react to programmatic font changes
25614 as well, use the notify::font-name signal.</doc>
25615         <return-value transfer-ownership="full">
25616           <type name="none" c:type="void"/>
25617         </return-value>
25618       </glib:signal>
25619     </class>
25620     <record name="FontButtonClass"
25621             c:type="GtkFontButtonClass"
25622             glib:is-gtype-struct-for="FontButton">
25623       <field name="parent_class">
25624         <type name="ButtonClass" c:type="GtkButtonClass"/>
25625       </field>
25626       <field name="font_set">
25627         <callback name="font_set" c:type="font_set">
25628           <return-value transfer-ownership="none">
25629             <type name="none" c:type="void"/>
25630           </return-value>
25631           <parameters>
25632             <parameter name="gfp" transfer-ownership="none">
25633               <type name="FontButton" c:type="GtkFontButton*"/>
25634             </parameter>
25635           </parameters>
25636         </callback>
25637       </field>
25638       <field name="gtk_reserved1">
25639         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
25640           <return-value transfer-ownership="none">
25641             <type name="none" c:type="void"/>
25642           </return-value>
25643         </callback>
25644       </field>
25645       <field name="gtk_reserved2">
25646         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
25647           <return-value transfer-ownership="none">
25648             <type name="none" c:type="void"/>
25649           </return-value>
25650         </callback>
25651       </field>
25652       <field name="gtk_reserved3">
25653         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
25654           <return-value transfer-ownership="none">
25655             <type name="none" c:type="void"/>
25656           </return-value>
25657         </callback>
25658       </field>
25659       <field name="gtk_reserved4">
25660         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
25661           <return-value transfer-ownership="none">
25662             <type name="none" c:type="void"/>
25663           </return-value>
25664         </callback>
25665       </field>
25666     </record>
25667     <record name="FontButtonPrivate" c:type="GtkFontButtonPrivate">
25668     </record>
25669     <class name="FontSelection"
25670            c:type="GtkFontSelection"
25671            parent="VBox"
25672            glib:type-name="GtkFontSelection"
25673            glib:get-type="gtk_font_selection_get_type"
25674            glib:type-struct="FontSelectionClass">
25675       <implements name="Atk.ImplementorIface"/>
25676       <implements name="Buildable"/>
25677       <implements name="Orientable"/>
25678       <constructor name="new" c:identifier="gtk_font_selection_new">
25679         <doc xml:whitespace="preserve">Creates a new #GtkFontSelection.</doc>
25680         <return-value transfer-ownership="full">
25681           <doc xml:whitespace="preserve">a n ew #GtkFontSelection</doc>
25682           <type name="FontSelection" c:type="GtkWidget*"/>
25683         </return-value>
25684       </constructor>
25685       <method name="get_family_list"
25686               c:identifier="gtk_font_selection_get_family_list"
25687               version="2.14">
25688         <doc xml:whitespace="preserve">This returns the #GtkTreeView that lists font families, for
25689 example, 'Sans', 'Serif', etc.</doc>
25690         <return-value transfer-ownership="full">
25691           <doc xml:whitespace="preserve">A #GtkWidget that is part of @fontsel</doc>
25692           <type name="Widget" c:type="GtkWidget*"/>
25693         </return-value>
25694       </method>
25695       <method name="get_face_list"
25696               c:identifier="gtk_font_selection_get_face_list"
25697               version="2.14">
25698         <doc xml:whitespace="preserve">This returns the #GtkTreeView which lists all styles available for
25699 the selected font. For example, 'Regular', 'Bold', etc.</doc>
25700         <return-value transfer-ownership="full">
25701           <doc xml:whitespace="preserve">A #GtkWidget that is part of @fontsel</doc>
25702           <type name="Widget" c:type="GtkWidget*"/>
25703         </return-value>
25704       </method>
25705       <method name="get_size_entry"
25706               c:identifier="gtk_font_selection_get_size_entry"
25707               version="2.14">
25708         <doc xml:whitespace="preserve">This returns the #GtkEntry used to allow the user to edit the font
25709 number manually instead of selecting it from the list of font sizes.</doc>
25710         <return-value transfer-ownership="full">
25711           <doc xml:whitespace="preserve">A #GtkWidget that is part of @fontsel</doc>
25712           <type name="Widget" c:type="GtkWidget*"/>
25713         </return-value>
25714       </method>
25715       <method name="get_size_list"
25716               c:identifier="gtk_font_selection_get_size_list"
25717               version="2.14">
25718         <doc xml:whitespace="preserve">This returns the #GtkTreeeView used to list font sizes.</doc>
25719         <return-value transfer-ownership="full">
25720           <doc xml:whitespace="preserve">A #GtkWidget that is part of @fontsel</doc>
25721           <type name="Widget" c:type="GtkWidget*"/>
25722         </return-value>
25723       </method>
25724       <method name="get_preview_entry"
25725               c:identifier="gtk_font_selection_get_preview_entry"
25726               version="2.14">
25727         <doc xml:whitespace="preserve">This returns the #GtkEntry used to display the font as a preview.</doc>
25728         <return-value transfer-ownership="full">
25729           <doc xml:whitespace="preserve">A #GtkWidget that is part of @fontsel</doc>
25730           <type name="Widget" c:type="GtkWidget*"/>
25731         </return-value>
25732       </method>
25733       <method name="get_family"
25734               c:identifier="gtk_font_selection_get_family"
25735               version="2.14">
25736         <doc xml:whitespace="preserve">Gets the #PangoFontFamily representing the selected font family.
25737 family. Font families are a collection of font faces. The 
25738 returned object is owned by @fontsel and must not be modified 
25739 or freed.</doc>
25740         <return-value transfer-ownership="full">
25741           <doc xml:whitespace="preserve">A #PangoFontFamily representing the selected font</doc>
25742           <type name="Pango.FontFamily" c:type="PangoFontFamily*"/>
25743         </return-value>
25744       </method>
25745       <method name="get_face"
25746               c:identifier="gtk_font_selection_get_face"
25747               version="2.14">
25748         <doc xml:whitespace="preserve">Gets the #PangoFontFace representing the selected font group
25749 details (i.e. family, slant, weight, width, etc).   
25750 group details. The returned object is owned by @fontsel and
25751 must not be modified or freed.</doc>
25752         <return-value transfer-ownership="full">
25753           <doc xml:whitespace="preserve">A #PangoFontFace representing the selected font</doc>
25754           <type name="Pango.FontFace" c:type="PangoFontFace*"/>
25755         </return-value>
25756       </method>
25757       <method name="get_size"
25758               c:identifier="gtk_font_selection_get_size"
25759               version="2.14">
25760         <doc xml:whitespace="preserve">The selected font size.
25761 or -1 if no font size is selected.</doc>
25762         <return-value transfer-ownership="none">
25763           <doc xml:whitespace="preserve">A n integer representing the selected font size,</doc>
25764           <type name="int" c:type="gint"/>
25765         </return-value>
25766       </method>
25767       <method name="get_font_name"
25768               c:identifier="gtk_font_selection_get_font_name">
25769         <doc xml:whitespace="preserve">Gets the currently-selected font name. 
25770 Note that this can be a different string than what you set with 
25771 gtk_font_selection_set_font_name(), as the font selection widget may 
25772 normalize font names and thus return a string with a different structure. 
25773 For example, "Helvetica Italic Bold 12" could be normalized to 
25774 "Helvetica Bold Italic 12". Use pango_font_description_equal()
25775 if you want to compare two font descriptions.
25776 no font is selected. You must free this string with g_free().</doc>
25777         <return-value transfer-ownership="full">
25778           <doc xml:whitespace="preserve">A string with the name of the current font, or %NULL if</doc>
25779           <type name="utf8" c:type="gchar*"/>
25780         </return-value>
25781       </method>
25782       <method name="get_font"
25783               c:identifier="gtk_font_selection_get_font"
25784               deprecated="Use gtk_font_selection_get_font_name() instead."
25785               deprecated-version="2.0">
25786         <doc xml:whitespace="preserve">Gets the currently-selected font.</doc>
25787         <return-value transfer-ownership="full">
25788           <doc xml:whitespace="preserve">A #GdkFont.</doc>
25789           <type name="Gdk.Font" c:type="GdkFont*"/>
25790         </return-value>
25791       </method>
25792       <method name="set_font_name"
25793               c:identifier="gtk_font_selection_set_font_name">
25794         <doc xml:whitespace="preserve">Sets the currently-selected font. 
25795 Note that the @fontsel needs to know the screen in which it will appear 
25796 for this to work; this can be guaranteed by simply making sure that the 
25797 such font exists or if the @fontsel doesn't belong to a particular 
25798 screen yet.</doc>
25799         <return-value transfer-ownership="none">
25800           <doc xml:whitespace="preserve">%TRUE if the font could be set successfully; %FALSE if no</doc>
25801           <type name="boolean" c:type="gboolean"/>
25802         </return-value>
25803         <parameters>
25804           <parameter name="fontname" transfer-ownership="none">
25805             <doc xml:whitespace="preserve">a font name like "Helvetica 12" or "Times Bold 18"</doc>
25806             <type name="utf8" c:type="gchar*"/>
25807           </parameter>
25808         </parameters>
25809       </method>
25810       <method name="get_preview_text"
25811               c:identifier="gtk_font_selection_get_preview_text">
25812         <doc xml:whitespace="preserve">Gets the text displayed in the preview area.
25813 This string is owned by the widget and should not be 
25814 modified or freed</doc>
25815         <return-value transfer-ownership="none">
25816           <doc xml:whitespace="preserve">the text displayed in the preview area.</doc>
25817           <type name="utf8" c:type="gchar*"/>
25818         </return-value>
25819       </method>
25820       <method name="set_preview_text"
25821               c:identifier="gtk_font_selection_set_preview_text">
25822         <doc xml:whitespace="preserve">Sets the text displayed in the preview area.
25823 The @text is used to show how the selected font looks.</doc>
25824         <return-value transfer-ownership="none">
25825           <type name="none" c:type="void"/>
25826         </return-value>
25827         <parameters>
25828           <parameter name="text" transfer-ownership="none">
25829             <doc xml:whitespace="preserve">the text to display in the preview area</doc>
25830             <type name="utf8" c:type="gchar*"/>
25831           </parameter>
25832         </parameters>
25833       </method>
25834       <property name="font" transfer-ownership="none">
25835         <type name="Gdk.Font" c:type="GdkFont"/>
25836       </property>
25837       <property name="font-name" writable="1" transfer-ownership="none">
25838         <type name="utf8" c:type="gchararray"/>
25839       </property>
25840       <property name="preview-text" writable="1" transfer-ownership="none">
25841         <type name="utf8" c:type="gchararray"/>
25842       </property>
25843       <field name="parent_instance">
25844         <type name="VBox" c:type="GtkVBox"/>
25845       </field>
25846       <field name="font_entry">
25847         <type name="Widget" c:type="GtkWidget*"/>
25848       </field>
25849       <field name="family_list">
25850         <type name="Widget" c:type="GtkWidget*"/>
25851       </field>
25852       <field name="font_style_entry">
25853         <type name="Widget" c:type="GtkWidget*"/>
25854       </field>
25855       <field name="face_list">
25856         <type name="Widget" c:type="GtkWidget*"/>
25857       </field>
25858       <field name="size_entry">
25859         <type name="Widget" c:type="GtkWidget*"/>
25860       </field>
25861       <field name="size_list">
25862         <type name="Widget" c:type="GtkWidget*"/>
25863       </field>
25864       <field name="pixels_button">
25865         <type name="Widget" c:type="GtkWidget*"/>
25866       </field>
25867       <field name="points_button">
25868         <type name="Widget" c:type="GtkWidget*"/>
25869       </field>
25870       <field name="filter_button">
25871         <type name="Widget" c:type="GtkWidget*"/>
25872       </field>
25873       <field name="preview_entry">
25874         <type name="Widget" c:type="GtkWidget*"/>
25875       </field>
25876       <field name="family">
25877         <type name="Pango.FontFamily" c:type="PangoFontFamily*"/>
25878       </field>
25879       <field name="face">
25880         <type name="Pango.FontFace" c:type="PangoFontFace*"/>
25881       </field>
25882       <field name="size">
25883         <type name="int" c:type="gint"/>
25884       </field>
25885       <field name="font">
25886         <type name="Gdk.Font" c:type="GdkFont*"/>
25887       </field>
25888     </class>
25889     <record name="FontSelectionClass"
25890             c:type="GtkFontSelectionClass"
25891             glib:is-gtype-struct-for="FontSelection">
25892       <field name="parent_class">
25893         <type name="VBoxClass" c:type="GtkVBoxClass"/>
25894       </field>
25895       <field name="gtk_reserved1">
25896         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
25897           <return-value transfer-ownership="none">
25898             <type name="none" c:type="void"/>
25899           </return-value>
25900         </callback>
25901       </field>
25902       <field name="gtk_reserved2">
25903         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
25904           <return-value transfer-ownership="none">
25905             <type name="none" c:type="void"/>
25906           </return-value>
25907         </callback>
25908       </field>
25909       <field name="gtk_reserved3">
25910         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
25911           <return-value transfer-ownership="none">
25912             <type name="none" c:type="void"/>
25913           </return-value>
25914         </callback>
25915       </field>
25916       <field name="gtk_reserved4">
25917         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
25918           <return-value transfer-ownership="none">
25919             <type name="none" c:type="void"/>
25920           </return-value>
25921         </callback>
25922       </field>
25923     </record>
25924     <class name="FontSelectionDialog"
25925            c:type="GtkFontSelectionDialog"
25926            parent="Dialog"
25927            glib:type-name="GtkFontSelectionDialog"
25928            glib:get-type="gtk_font_selection_dialog_get_type"
25929            glib:type-struct="FontSelectionDialogClass">
25930       <implements name="Atk.ImplementorIface"/>
25931       <implements name="Buildable"/>
25932       <constructor name="new" c:identifier="gtk_font_selection_dialog_new">
25933         <doc xml:whitespace="preserve">Creates a new #GtkFontSelectionDialog.</doc>
25934         <return-value transfer-ownership="full">
25935           <doc xml:whitespace="preserve">a new #GtkFontSelectionDialog</doc>
25936           <type name="FontSelectionDialog" c:type="GtkWidget*"/>
25937         </return-value>
25938         <parameters>
25939           <parameter name="title" transfer-ownership="none">
25940             <doc xml:whitespace="preserve">the title of the dialog window</doc>
25941             <type name="utf8" c:type="gchar*"/>
25942           </parameter>
25943         </parameters>
25944       </constructor>
25945       <method name="get_ok_button"
25946               c:identifier="gtk_font_selection_dialog_get_ok_button"
25947               version="2.14">
25948         <doc xml:whitespace="preserve">Gets the 'OK' button.</doc>
25949         <return-value transfer-ownership="full">
25950           <doc xml:whitespace="preserve">the #GtkWidget used in the dialog for the 'OK' button.</doc>
25951           <type name="Widget" c:type="GtkWidget*"/>
25952         </return-value>
25953       </method>
25954       <method name="get_apply_button"
25955               c:identifier="gtk_font_selection_dialog_get_apply_button"
25956               version="2.14"
25957               deprecated="Don&apos;t use this function."
25958               deprecated-version="2.16">
25959         <doc xml:whitespace="preserve">Obtains a button. The button doesn't have any function.</doc>
25960         <return-value transfer-ownership="full">
25961           <doc xml:whitespace="preserve">a #GtkWidget</doc>
25962           <type name="Widget" c:type="GtkWidget*"/>
25963         </return-value>
25964       </method>
25965       <method name="get_cancel_button"
25966               c:identifier="gtk_font_selection_dialog_get_cancel_button"
25967               version="2.14">
25968         <doc xml:whitespace="preserve">Gets the 'Cancel' button.</doc>
25969         <return-value transfer-ownership="full">
25970           <doc xml:whitespace="preserve">the #GtkWidget used in the dialog for the 'Cancel' button.</doc>
25971           <type name="Widget" c:type="GtkWidget*"/>
25972         </return-value>
25973       </method>
25974       <method name="get_font_name"
25975               c:identifier="gtk_font_selection_dialog_get_font_name">
25976         <doc xml:whitespace="preserve">Gets the currently-selected font name.
25977 Note that this can be a different string than what you set with 
25978 gtk_font_selection_dialog_set_font_name(), as the font selection widget
25979 may normalize font names and thus return a string with a different 
25980 structure. For example, "Helvetica Italic Bold 12" could be normalized 
25981 to "Helvetica Bold Italic 12".  Use pango_font_description_equal()
25982 if you want to compare two font descriptions.
25983 font is selected. You must free this string with g_free().</doc>
25984         <return-value transfer-ownership="full">
25985           <doc xml:whitespace="preserve">A string with the name of the current font, or %NULL if no</doc>
25986           <type name="utf8" c:type="gchar*"/>
25987         </return-value>
25988       </method>
25989       <method name="get_font"
25990               c:identifier="gtk_font_selection_dialog_get_font"
25991               deprecated="Use gtk_font_selection_dialog_get_font_name() instead."
25992               deprecated-version="2.0">
25993         <doc xml:whitespace="preserve">Gets the currently-selected font.
25994 currently selected font in the dialog, or %NULL if no font is selected</doc>
25995         <return-value transfer-ownership="full">
25996           <doc xml:whitespace="preserve">the #GdkFont from the #GtkFontSelection for the</doc>
25997           <type name="Gdk.Font" c:type="GdkFont*"/>
25998         </return-value>
25999       </method>
26000       <method name="set_font_name"
26001               c:identifier="gtk_font_selection_dialog_set_font_name">
26002         <doc xml:whitespace="preserve">Sets the currently selected font.</doc>
26003         <return-value transfer-ownership="none">
26004           <doc xml:whitespace="preserve">%TRUE if the font selected in @fsd is now the</doc>
26005           <type name="boolean" c:type="gboolean"/>
26006         </return-value>
26007         <parameters>
26008           <parameter name="fontname" transfer-ownership="none">
26009             <doc xml:whitespace="preserve">a font name like "Helvetica 12" or "Times Bold 18"</doc>
26010             <type name="utf8" c:type="gchar*"/>
26011           </parameter>
26012         </parameters>
26013       </method>
26014       <method name="get_preview_text"
26015               c:identifier="gtk_font_selection_dialog_get_preview_text">
26016         <doc xml:whitespace="preserve">Gets the text displayed in the preview area.
26017 This string is owned by the widget and should not be 
26018 modified or freed</doc>
26019         <return-value transfer-ownership="none">
26020           <doc xml:whitespace="preserve">the text displayed in the preview area.</doc>
26021           <type name="utf8" c:type="gchar*"/>
26022         </return-value>
26023       </method>
26024       <method name="set_preview_text"
26025               c:identifier="gtk_font_selection_dialog_set_preview_text">
26026         <doc xml:whitespace="preserve">Sets the text displayed in the preview area.</doc>
26027         <return-value transfer-ownership="none">
26028           <type name="none" c:type="void"/>
26029         </return-value>
26030         <parameters>
26031           <parameter name="text" transfer-ownership="none">
26032             <doc xml:whitespace="preserve">the text to display in the preview area</doc>
26033             <type name="utf8" c:type="gchar*"/>
26034           </parameter>
26035         </parameters>
26036       </method>
26037       <field name="parent_instance">
26038         <type name="Dialog" c:type="GtkDialog"/>
26039       </field>
26040       <field name="fontsel">
26041         <type name="Widget" c:type="GtkWidget*"/>
26042       </field>
26043       <field name="main_vbox">
26044         <type name="Widget" c:type="GtkWidget*"/>
26045       </field>
26046       <field name="action_area">
26047         <type name="Widget" c:type="GtkWidget*"/>
26048       </field>
26049       <field name="ok_button">
26050         <type name="Widget" c:type="GtkWidget*"/>
26051       </field>
26052       <field name="apply_button">
26053         <type name="Widget" c:type="GtkWidget*"/>
26054       </field>
26055       <field name="cancel_button">
26056         <type name="Widget" c:type="GtkWidget*"/>
26057       </field>
26058       <field name="dialog_width">
26059         <type name="int" c:type="gint"/>
26060       </field>
26061       <field name="auto_resize">
26062         <type name="boolean" c:type="gboolean"/>
26063       </field>
26064     </class>
26065     <record name="FontSelectionDialogClass"
26066             c:type="GtkFontSelectionDialogClass"
26067             glib:is-gtype-struct-for="FontSelectionDialog">
26068       <field name="parent_class">
26069         <type name="DialogClass" c:type="GtkDialogClass"/>
26070       </field>
26071       <field name="gtk_reserved1">
26072         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
26073           <return-value transfer-ownership="none">
26074             <type name="none" c:type="void"/>
26075           </return-value>
26076         </callback>
26077       </field>
26078       <field name="gtk_reserved2">
26079         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
26080           <return-value transfer-ownership="none">
26081             <type name="none" c:type="void"/>
26082           </return-value>
26083         </callback>
26084       </field>
26085       <field name="gtk_reserved3">
26086         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
26087           <return-value transfer-ownership="none">
26088             <type name="none" c:type="void"/>
26089           </return-value>
26090         </callback>
26091       </field>
26092       <field name="gtk_reserved4">
26093         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
26094           <return-value transfer-ownership="none">
26095             <type name="none" c:type="void"/>
26096           </return-value>
26097         </callback>
26098       </field>
26099     </record>
26100     <class name="Frame"
26101            c:type="GtkFrame"
26102            parent="Bin"
26103            glib:type-name="GtkFrame"
26104            glib:get-type="gtk_frame_get_type"
26105            glib:type-struct="FrameClass">
26106       <implements name="Atk.ImplementorIface"/>
26107       <implements name="Buildable"/>
26108       <constructor name="new" c:identifier="gtk_frame_new">
26109         <doc xml:whitespace="preserve">Creates a new #GtkFrame, with optional label @label.
26110 If @label is %NULL, the label is omitted.</doc>
26111         <return-value transfer-ownership="full">
26112           <doc xml:whitespace="preserve">a new #GtkFrame widget</doc>
26113           <type name="Frame" c:type="GtkWidget*"/>
26114         </return-value>
26115         <parameters>
26116           <parameter name="label" transfer-ownership="none">
26117             <doc xml:whitespace="preserve">the text to use as the label of the frame</doc>
26118             <type name="utf8" c:type="gchar*"/>
26119           </parameter>
26120         </parameters>
26121       </constructor>
26122       <virtual-method name="compute_child_allocation">
26123         <return-value transfer-ownership="none">
26124           <type name="none" c:type="void"/>
26125         </return-value>
26126         <parameters>
26127           <parameter name="allocation" transfer-ownership="none">
26128             <type name="Allocation" c:type="GtkAllocation*"/>
26129           </parameter>
26130         </parameters>
26131       </virtual-method>
26132       <method name="set_label" c:identifier="gtk_frame_set_label">
26133         <doc xml:whitespace="preserve">Sets the text of the label. If @label is %NULL,
26134 the current label is removed.</doc>
26135         <return-value transfer-ownership="none">
26136           <type name="none" c:type="void"/>
26137         </return-value>
26138         <parameters>
26139           <parameter name="label" transfer-ownership="none" allow-none="1">
26140             <doc xml:whitespace="preserve">the text to use as the label of the frame</doc>
26141             <type name="utf8" c:type="gchar*"/>
26142           </parameter>
26143         </parameters>
26144       </method>
26145       <method name="get_label" c:identifier="gtk_frame_get_label">
26146         <doc xml:whitespace="preserve">If the frame's label widget is a #GtkLabel, returns the
26147 text in the label widget. (The frame will have a #GtkLabel
26148 for the label widget if a non-%NULL argument was passed
26149 to gtk_frame_new().)
26150 was no label widget or the lable widget was not
26151 a #GtkLabel. This string is owned by GTK+ and
26152 must not be modified or freed.</doc>
26153         <return-value transfer-ownership="none">
26154           <doc xml:whitespace="preserve">the text in the label, or %NULL if there</doc>
26155           <type name="utf8" c:type="gchar*"/>
26156         </return-value>
26157       </method>
26158       <method name="set_label_widget"
26159               c:identifier="gtk_frame_set_label_widget">
26160         <doc xml:whitespace="preserve">Sets the label widget for the frame. This is the widget that
26161 will appear embedded in the top edge of the frame as a
26162 title.</doc>
26163         <return-value transfer-ownership="none">
26164           <type name="none" c:type="void"/>
26165         </return-value>
26166         <parameters>
26167           <parameter name="label_widget" transfer-ownership="none">
26168             <doc xml:whitespace="preserve">the new label widget</doc>
26169             <type name="Widget" c:type="GtkWidget*"/>
26170           </parameter>
26171         </parameters>
26172       </method>
26173       <method name="get_label_widget"
26174               c:identifier="gtk_frame_get_label_widget">
26175         <doc xml:whitespace="preserve">Retrieves the label widget for the frame. See
26176 gtk_frame_set_label_widget().</doc>
26177         <return-value transfer-ownership="full">
26178           <doc xml:whitespace="preserve">the label widget, or %NULL if there is none.</doc>
26179           <type name="Widget" c:type="GtkWidget*"/>
26180         </return-value>
26181       </method>
26182       <method name="set_label_align" c:identifier="gtk_frame_set_label_align">
26183         <doc xml:whitespace="preserve">Sets the alignment of the frame widget's label. The
26184 default values for a newly created frame are 0.0 and 0.5.</doc>
26185         <return-value transfer-ownership="none">
26186           <type name="none" c:type="void"/>
26187         </return-value>
26188         <parameters>
26189           <parameter name="xalign" transfer-ownership="none">
26190             <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>
26191             <type name="float" c:type="gfloat"/>
26192           </parameter>
26193           <parameter name="yalign" transfer-ownership="none">
26194             <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>
26195             <type name="float" c:type="gfloat"/>
26196           </parameter>
26197         </parameters>
26198       </method>
26199       <method name="get_label_align" c:identifier="gtk_frame_get_label_align">
26200         <doc xml:whitespace="preserve">Retrieves the X and Y alignment of the frame's label. See
26201 gtk_frame_set_label_align().</doc>
26202         <return-value transfer-ownership="none">
26203           <type name="none" c:type="void"/>
26204         </return-value>
26205         <parameters>
26206           <parameter name="xalign"
26207                      direction="out"
26208                      caller-allocates="0"
26209                      transfer-ownership="full"
26210                      allow-none="1">
26211             <doc xml:whitespace="preserve">location to store X alignment of frame's label, or %NULL</doc>
26212             <type name="float" c:type="gfloat*"/>
26213           </parameter>
26214           <parameter name="yalign"
26215                      direction="out"
26216                      caller-allocates="0"
26217                      transfer-ownership="full"
26218                      allow-none="1">
26219             <doc xml:whitespace="preserve">location to store X alignment of frame's label, or %NULL</doc>
26220             <type name="float" c:type="gfloat*"/>
26221           </parameter>
26222         </parameters>
26223       </method>
26224       <method name="set_shadow_type" c:identifier="gtk_frame_set_shadow_type">
26225         <doc xml:whitespace="preserve">Sets the shadow type for @frame.</doc>
26226         <return-value transfer-ownership="none">
26227           <type name="none" c:type="void"/>
26228         </return-value>
26229         <parameters>
26230           <parameter name="type" transfer-ownership="none">
26231             <doc xml:whitespace="preserve">the new #GtkShadowType</doc>
26232             <type name="ShadowType" c:type="GtkShadowType"/>
26233           </parameter>
26234         </parameters>
26235       </method>
26236       <method name="get_shadow_type" c:identifier="gtk_frame_get_shadow_type">
26237         <doc xml:whitespace="preserve">Retrieves the shadow type of the frame. See
26238 gtk_frame_set_shadow_type().</doc>
26239         <return-value transfer-ownership="full">
26240           <doc xml:whitespace="preserve">the current shadow type of the frame.</doc>
26241           <type name="ShadowType" c:type="GtkShadowType"/>
26242         </return-value>
26243       </method>
26244       <property name="label" writable="1" transfer-ownership="none">
26245         <type name="utf8" c:type="gchararray"/>
26246       </property>
26247       <property name="label-widget" writable="1" transfer-ownership="none">
26248         <type name="Widget" c:type="GtkWidget"/>
26249       </property>
26250       <property name="label-xalign" writable="1" transfer-ownership="none">
26251         <type name="float" c:type="gfloat"/>
26252       </property>
26253       <property name="label-yalign" writable="1" transfer-ownership="none">
26254         <type name="float" c:type="gfloat"/>
26255       </property>
26256       <property name="shadow" writable="1" transfer-ownership="none">
26257         <type name="ShadowType" c:type="GtkShadowType"/>
26258       </property>
26259       <property name="shadow-type" writable="1" transfer-ownership="none">
26260         <type name="ShadowType" c:type="GtkShadowType"/>
26261       </property>
26262       <field name="bin">
26263         <type name="Bin" c:type="GtkBin"/>
26264       </field>
26265       <field name="label_widget">
26266         <type name="Widget" c:type="GtkWidget*"/>
26267       </field>
26268       <field name="shadow_type">
26269         <type name="int16" c:type="gint16"/>
26270       </field>
26271       <field name="label_xalign">
26272         <type name="float" c:type="gfloat"/>
26273       </field>
26274       <field name="label_yalign">
26275         <type name="float" c:type="gfloat"/>
26276       </field>
26277       <field name="child_allocation">
26278         <type name="Allocation" c:type="GtkAllocation"/>
26279       </field>
26280     </class>
26281     <record name="FrameClass"
26282             c:type="GtkFrameClass"
26283             glib:is-gtype-struct-for="Frame">
26284       <field name="parent_class">
26285         <type name="BinClass" c:type="GtkBinClass"/>
26286       </field>
26287       <field name="compute_child_allocation">
26288         <callback name="compute_child_allocation"
26289                   c:type="compute_child_allocation">
26290           <return-value transfer-ownership="none">
26291             <type name="none" c:type="void"/>
26292           </return-value>
26293           <parameters>
26294             <parameter name="frame" transfer-ownership="none">
26295               <type name="Frame" c:type="GtkFrame*"/>
26296             </parameter>
26297             <parameter name="allocation" transfer-ownership="none">
26298               <type name="Allocation" c:type="GtkAllocation*"/>
26299             </parameter>
26300           </parameters>
26301         </callback>
26302       </field>
26303     </record>
26304     <callback name="Function" c:type="GtkFunction">
26305       <return-value transfer-ownership="none">
26306         <type name="boolean" c:type="gboolean"/>
26307       </return-value>
26308       <parameters>
26309         <parameter name="data" transfer-ownership="none">
26310           <type name="any" c:type="gpointer"/>
26311         </parameter>
26312       </parameters>
26313     </callback>
26314     <class name="GammaCurve"
26315            c:type="GtkGammaCurve"
26316            parent="VBox"
26317            glib:type-name="GtkGammaCurve"
26318            glib:get-type="gtk_gamma_curve_get_type"
26319            glib:type-struct="GammaCurveClass">
26320       <implements name="Atk.ImplementorIface"/>
26321       <implements name="Buildable"/>
26322       <implements name="Orientable"/>
26323       <constructor name="new" c:identifier="gtk_gamma_curve_new">
26324         <return-value transfer-ownership="full">
26325           <type name="GammaCurve" c:type="GtkWidget*"/>
26326         </return-value>
26327       </constructor>
26328       <field name="vbox">
26329         <type name="VBox" c:type="GtkVBox"/>
26330       </field>
26331       <field name="table">
26332         <type name="Widget" c:type="GtkWidget*"/>
26333       </field>
26334       <field name="curve">
26335         <type name="Widget" c:type="GtkWidget*"/>
26336       </field>
26337       <field name="button">
26338         <array zero-terminated="0" c:type="GtkWidget*" fixed-size="5">
26339           <type name="Widget"/>
26340         </array>
26341       </field>
26342       <field name="gamma">
26343         <type name="float" c:type="gfloat"/>
26344       </field>
26345       <field name="gamma_dialog">
26346         <type name="Widget" c:type="GtkWidget*"/>
26347       </field>
26348       <field name="gamma_text">
26349         <type name="Widget" c:type="GtkWidget*"/>
26350       </field>
26351     </class>
26352     <record name="GammaCurveClass"
26353             c:type="GtkGammaCurveClass"
26354             glib:is-gtype-struct-for="GammaCurve">
26355       <field name="parent_class">
26356         <type name="VBoxClass" c:type="GtkVBoxClass"/>
26357       </field>
26358       <field name="gtk_reserved1">
26359         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
26360           <return-value transfer-ownership="none">
26361             <type name="none" c:type="void"/>
26362           </return-value>
26363         </callback>
26364       </field>
26365       <field name="gtk_reserved2">
26366         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
26367           <return-value transfer-ownership="none">
26368             <type name="none" c:type="void"/>
26369           </return-value>
26370         </callback>
26371       </field>
26372       <field name="gtk_reserved3">
26373         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
26374           <return-value transfer-ownership="none">
26375             <type name="none" c:type="void"/>
26376           </return-value>
26377         </callback>
26378       </field>
26379       <field name="gtk_reserved4">
26380         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
26381           <return-value transfer-ownership="none">
26382             <type name="none" c:type="void"/>
26383           </return-value>
26384         </callback>
26385       </field>
26386     </record>
26387     <class name="HBox"
26388            c:type="GtkHBox"
26389            parent="Box"
26390            glib:type-name="GtkHBox"
26391            glib:get-type="gtk_hbox_get_type"
26392            glib:type-struct="HBoxClass">
26393       <implements name="Atk.ImplementorIface"/>
26394       <implements name="Buildable"/>
26395       <implements name="Orientable"/>
26396       <constructor name="new" c:identifier="gtk_hbox_new">
26397         <doc xml:whitespace="preserve">Creates a new #GtkHBox.</doc>
26398         <return-value transfer-ownership="full">
26399           <doc xml:whitespace="preserve">a new #GtkHBox.</doc>
26400           <type name="HBox" c:type="GtkWidget*"/>
26401         </return-value>
26402         <parameters>
26403           <parameter name="homogeneous" transfer-ownership="none">
26404             <doc xml:whitespace="preserve">%TRUE if all children are to be given equal space allotments.</doc>
26405             <type name="boolean" c:type="gboolean"/>
26406           </parameter>
26407           <parameter name="spacing" transfer-ownership="none">
26408             <doc xml:whitespace="preserve">the number of pixels to place by default between children.</doc>
26409             <type name="int" c:type="gint"/>
26410           </parameter>
26411         </parameters>
26412       </constructor>
26413       <field name="box">
26414         <type name="Box" c:type="GtkBox"/>
26415       </field>
26416     </class>
26417     <record name="HBoxClass"
26418             c:type="GtkHBoxClass"
26419             glib:is-gtype-struct-for="HBox">
26420       <field name="parent_class">
26421         <type name="BoxClass" c:type="GtkBoxClass"/>
26422       </field>
26423     </record>
26424     <class name="HButtonBox"
26425            c:type="GtkHButtonBox"
26426            parent="ButtonBox"
26427            glib:type-name="GtkHButtonBox"
26428            glib:get-type="gtk_hbutton_box_get_type"
26429            glib:type-struct="HButtonBoxClass">
26430       <implements name="Atk.ImplementorIface"/>
26431       <implements name="Buildable"/>
26432       <implements name="Orientable"/>
26433       <constructor name="new" c:identifier="gtk_hbutton_box_new">
26434         <return-value transfer-ownership="full">
26435           <type name="HButtonBox" c:type="GtkWidget*"/>
26436         </return-value>
26437       </constructor>
26438       <function name="get_spacing_default"
26439                 c:identifier="gtk_hbutton_box_get_spacing_default">
26440         <return-value transfer-ownership="none">
26441           <type name="int" c:type="gint"/>
26442         </return-value>
26443       </function>
26444       <function name="get_layout_default"
26445                 c:identifier="gtk_hbutton_box_get_layout_default">
26446         <return-value transfer-ownership="full">
26447           <type name="ButtonBoxStyle" c:type="GtkButtonBoxStyle"/>
26448         </return-value>
26449       </function>
26450       <function name="set_spacing_default"
26451                 c:identifier="gtk_hbutton_box_set_spacing_default">
26452         <return-value transfer-ownership="none">
26453           <type name="none" c:type="void"/>
26454         </return-value>
26455         <parameters>
26456           <parameter name="spacing" transfer-ownership="none">
26457             <type name="int" c:type="gint"/>
26458           </parameter>
26459         </parameters>
26460       </function>
26461       <function name="set_layout_default"
26462                 c:identifier="gtk_hbutton_box_set_layout_default">
26463         <return-value transfer-ownership="none">
26464           <type name="none" c:type="void"/>
26465         </return-value>
26466         <parameters>
26467           <parameter name="layout" transfer-ownership="none">
26468             <type name="ButtonBoxStyle" c:type="GtkButtonBoxStyle"/>
26469           </parameter>
26470         </parameters>
26471       </function>
26472       <field name="button_box">
26473         <type name="ButtonBox" c:type="GtkButtonBox"/>
26474       </field>
26475     </class>
26476     <record name="HButtonBoxClass"
26477             c:type="GtkHButtonBoxClass"
26478             glib:is-gtype-struct-for="HButtonBox">
26479       <field name="parent_class">
26480         <type name="ButtonBoxClass" c:type="GtkButtonBoxClass"/>
26481       </field>
26482     </record>
26483     <class name="HPaned"
26484            c:type="GtkHPaned"
26485            parent="Paned"
26486            glib:type-name="GtkHPaned"
26487            glib:get-type="gtk_hpaned_get_type"
26488            glib:type-struct="HPanedClass">
26489       <implements name="Atk.ImplementorIface"/>
26490       <implements name="Buildable"/>
26491       <implements name="Orientable"/>
26492       <constructor name="new" c:identifier="gtk_hpaned_new">
26493         <return-value transfer-ownership="full">
26494           <type name="HPaned" c:type="GtkWidget*"/>
26495         </return-value>
26496       </constructor>
26497       <field name="paned">
26498         <type name="Paned" c:type="GtkPaned"/>
26499       </field>
26500     </class>
26501     <record name="HPanedClass"
26502             c:type="GtkHPanedClass"
26503             glib:is-gtype-struct-for="HPaned">
26504       <field name="parent_class">
26505         <type name="PanedClass" c:type="GtkPanedClass"/>
26506       </field>
26507     </record>
26508     <class name="HRuler"
26509            c:type="GtkHRuler"
26510            parent="Ruler"
26511            glib:type-name="GtkHRuler"
26512            glib:get-type="gtk_hruler_get_type"
26513            glib:type-struct="HRulerClass">
26514       <implements name="Atk.ImplementorIface"/>
26515       <implements name="Buildable"/>
26516       <implements name="Orientable"/>
26517       <constructor name="new" c:identifier="gtk_hruler_new">
26518         <return-value transfer-ownership="full">
26519           <type name="HRuler" c:type="GtkWidget*"/>
26520         </return-value>
26521       </constructor>
26522       <field name="ruler">
26523         <type name="Ruler" c:type="GtkRuler"/>
26524       </field>
26525     </class>
26526     <record name="HRulerClass"
26527             c:type="GtkHRulerClass"
26528             glib:is-gtype-struct-for="HRuler">
26529       <field name="parent_class">
26530         <type name="RulerClass" c:type="GtkRulerClass"/>
26531       </field>
26532     </record>
26533     <class name="HSV"
26534            c:type="GtkHSV"
26535            parent="Widget"
26536            glib:type-name="GtkHSV"
26537            glib:get-type="gtk_hsv_get_type"
26538            glib:type-struct="HSVClass">
26539       <implements name="Atk.ImplementorIface"/>
26540       <implements name="Buildable"/>
26541       <constructor name="new" c:identifier="gtk_hsv_new" version="2.14">
26542         <doc xml:whitespace="preserve">Creates a new HSV color selector.</doc>
26543         <return-value transfer-ownership="full">
26544           <doc xml:whitespace="preserve">A newly-created HSV color selector.</doc>
26545           <type name="HSV" c:type="GtkWidget*"/>
26546         </return-value>
26547       </constructor>
26548       <function name="to_rgb" c:identifier="gtk_hsv_to_rgb" version="2.14">
26549         <doc xml:whitespace="preserve">Converts a color from HSV space to RGB.
26550 Input values must be in the [0.0, 1.0] range; 
26551 output values will be in the same range.</doc>
26552         <return-value transfer-ownership="none">
26553           <type name="none" c:type="void"/>
26554         </return-value>
26555         <parameters>
26556           <parameter name="h" transfer-ownership="none">
26557             <doc xml:whitespace="preserve">Hue</doc>
26558             <type name="double" c:type="gdouble"/>
26559           </parameter>
26560           <parameter name="s" transfer-ownership="none">
26561             <doc xml:whitespace="preserve">Saturation</doc>
26562             <type name="double" c:type="gdouble"/>
26563           </parameter>
26564           <parameter name="v" transfer-ownership="none">
26565             <doc xml:whitespace="preserve">Value</doc>
26566             <type name="double" c:type="gdouble"/>
26567           </parameter>
26568           <parameter name="r"
26569                      direction="out"
26570                      caller-allocates="0"
26571                      transfer-ownership="full">
26572             <doc xml:whitespace="preserve">Return value for the red component</doc>
26573             <type name="double" c:type="gdouble*"/>
26574           </parameter>
26575           <parameter name="g"
26576                      direction="out"
26577                      caller-allocates="0"
26578                      transfer-ownership="full">
26579             <doc xml:whitespace="preserve">Return value for the green component</doc>
26580             <type name="double" c:type="gdouble*"/>
26581           </parameter>
26582           <parameter name="b"
26583                      direction="out"
26584                      caller-allocates="0"
26585                      transfer-ownership="full">
26586             <doc xml:whitespace="preserve">Return value for the blue component</doc>
26587             <type name="double" c:type="gdouble*"/>
26588           </parameter>
26589         </parameters>
26590       </function>
26591       <method name="set_color" c:identifier="gtk_hsv_set_color" version="2.14">
26592         <doc xml:whitespace="preserve">Sets the current color in an HSV color selector.
26593 Color component values must be in the [0.0, 1.0] range.</doc>
26594         <return-value transfer-ownership="none">
26595           <type name="none" c:type="void"/>
26596         </return-value>
26597         <parameters>
26598           <parameter name="h" transfer-ownership="none">
26599             <doc xml:whitespace="preserve">Hue</doc>
26600             <type name="double" c:type="double"/>
26601           </parameter>
26602           <parameter name="s" transfer-ownership="none">
26603             <doc xml:whitespace="preserve">Saturation</doc>
26604             <type name="double" c:type="double"/>
26605           </parameter>
26606           <parameter name="v" transfer-ownership="none">
26607             <doc xml:whitespace="preserve">Value</doc>
26608             <type name="double" c:type="double"/>
26609           </parameter>
26610         </parameters>
26611       </method>
26612       <method name="get_color" c:identifier="gtk_hsv_get_color" version="2.14">
26613         <doc xml:whitespace="preserve">Queries the current color in an HSV color selector.
26614 Returned values will be in the [0.0, 1.0] range.</doc>
26615         <return-value transfer-ownership="none">
26616           <type name="none" c:type="void"/>
26617         </return-value>
26618         <parameters>
26619           <parameter name="h"
26620                      direction="out"
26621                      caller-allocates="0"
26622                      transfer-ownership="full">
26623             <doc xml:whitespace="preserve">Return value for the hue</doc>
26624             <type name="double" c:type="gdouble*"/>
26625           </parameter>
26626           <parameter name="s"
26627                      direction="out"
26628                      caller-allocates="0"
26629                      transfer-ownership="full">
26630             <doc xml:whitespace="preserve">Return value for the saturation</doc>
26631             <type name="double" c:type="gdouble*"/>
26632           </parameter>
26633           <parameter name="v"
26634                      direction="out"
26635                      caller-allocates="0"
26636                      transfer-ownership="full">
26637             <doc xml:whitespace="preserve">Return value for the value</doc>
26638             <type name="double" c:type="gdouble*"/>
26639           </parameter>
26640         </parameters>
26641       </method>
26642       <method name="set_metrics"
26643               c:identifier="gtk_hsv_set_metrics"
26644               version="2.14">
26645         <doc xml:whitespace="preserve">Sets the size and ring width of an HSV color selector.</doc>
26646         <return-value transfer-ownership="none">
26647           <type name="none" c:type="void"/>
26648         </return-value>
26649         <parameters>
26650           <parameter name="size" transfer-ownership="none">
26651             <doc xml:whitespace="preserve">Diameter for the hue ring</doc>
26652             <type name="int" c:type="gint"/>
26653           </parameter>
26654           <parameter name="ring_width" transfer-ownership="none">
26655             <doc xml:whitespace="preserve">Width of the hue ring</doc>
26656             <type name="int" c:type="gint"/>
26657           </parameter>
26658         </parameters>
26659       </method>
26660       <method name="get_metrics"
26661               c:identifier="gtk_hsv_get_metrics"
26662               version="2.14">
26663         <doc xml:whitespace="preserve">Queries the size and ring width of an HSV color selector.</doc>
26664         <return-value transfer-ownership="none">
26665           <type name="none" c:type="void"/>
26666         </return-value>
26667         <parameters>
26668           <parameter name="size"
26669                      direction="out"
26670                      caller-allocates="0"
26671                      transfer-ownership="full">
26672             <doc xml:whitespace="preserve">Return value for the diameter of the hue ring</doc>
26673             <type name="int" c:type="gint*"/>
26674           </parameter>
26675           <parameter name="ring_width"
26676                      direction="out"
26677                      caller-allocates="0"
26678                      transfer-ownership="full">
26679             <doc xml:whitespace="preserve">Return value for the width of the hue ring</doc>
26680             <type name="int" c:type="gint*"/>
26681           </parameter>
26682         </parameters>
26683       </method>
26684       <method name="is_adjusting"
26685               c:identifier="gtk_hsv_is_adjusting"
26686               version="2.14">
26687         <doc xml:whitespace="preserve">An HSV color selector can be said to be adjusting if multiple rapid
26688 changes are being made to its value, for example, when the user is 
26689 adjusting the value with the mouse. This function queries whether 
26690 the HSV color selector is being adjusted or not.
26691 since they may be transitory, or %FALSE if they should consider
26692 the color value status to be final.</doc>
26693         <return-value transfer-ownership="none">
26694           <doc xml:whitespace="preserve">%TRUE if clients can ignore changes to the color value,</doc>
26695           <type name="boolean" c:type="gboolean"/>
26696         </return-value>
26697       </method>
26698       <field name="parent_instance">
26699         <type name="Widget" c:type="GtkWidget"/>
26700       </field>
26701       <field name="priv">
26702         <type name="any" c:type="gpointer"/>
26703       </field>
26704       <glib:signal name="changed">
26705         <return-value transfer-ownership="full">
26706           <type name="none" c:type="void"/>
26707         </return-value>
26708       </glib:signal>
26709       <glib:signal name="move">
26710         <return-value transfer-ownership="full">
26711           <type name="none" c:type="void"/>
26712         </return-value>
26713         <parameters>
26714           <parameter name="object" transfer-ownership="none">
26715             <type name="DirectionType" c:type="GtkDirectionType"/>
26716           </parameter>
26717         </parameters>
26718       </glib:signal>
26719     </class>
26720     <record name="HSVClass"
26721             c:type="GtkHSVClass"
26722             glib:is-gtype-struct-for="HSV">
26723       <field name="parent_class">
26724         <type name="WidgetClass" c:type="GtkWidgetClass"/>
26725       </field>
26726       <field name="changed">
26727         <callback name="changed" c:type="changed">
26728           <return-value transfer-ownership="none">
26729             <type name="none" c:type="void"/>
26730           </return-value>
26731           <parameters>
26732             <parameter name="hsv" transfer-ownership="none">
26733               <type name="HSV" c:type="GtkHSV*"/>
26734             </parameter>
26735           </parameters>
26736         </callback>
26737       </field>
26738       <field name="move">
26739         <callback name="move" c:type="move">
26740           <return-value transfer-ownership="none">
26741             <type name="none" c:type="void"/>
26742           </return-value>
26743           <parameters>
26744             <parameter name="hsv" transfer-ownership="none">
26745               <type name="HSV" c:type="GtkHSV*"/>
26746             </parameter>
26747             <parameter name="type" transfer-ownership="none">
26748               <type name="DirectionType" c:type="GtkDirectionType"/>
26749             </parameter>
26750           </parameters>
26751         </callback>
26752       </field>
26753       <field name="gtk_reserved1">
26754         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
26755           <return-value transfer-ownership="none">
26756             <type name="none" c:type="void"/>
26757           </return-value>
26758         </callback>
26759       </field>
26760       <field name="gtk_reserved2">
26761         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
26762           <return-value transfer-ownership="none">
26763             <type name="none" c:type="void"/>
26764           </return-value>
26765         </callback>
26766       </field>
26767       <field name="gtk_reserved3">
26768         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
26769           <return-value transfer-ownership="none">
26770             <type name="none" c:type="void"/>
26771           </return-value>
26772         </callback>
26773       </field>
26774       <field name="gtk_reserved4">
26775         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
26776           <return-value transfer-ownership="none">
26777             <type name="none" c:type="void"/>
26778           </return-value>
26779         </callback>
26780       </field>
26781     </record>
26782     <class name="HScale"
26783            c:type="GtkHScale"
26784            parent="Scale"
26785            glib:type-name="GtkHScale"
26786            glib:get-type="gtk_hscale_get_type"
26787            glib:type-struct="HScaleClass">
26788       <implements name="Atk.ImplementorIface"/>
26789       <implements name="Buildable"/>
26790       <implements name="Orientable"/>
26791       <constructor name="new" c:identifier="gtk_hscale_new">
26792         <return-value transfer-ownership="full">
26793           <type name="HScale" c:type="GtkWidget*"/>
26794         </return-value>
26795         <parameters>
26796           <parameter name="adjustment" transfer-ownership="none">
26797             <type name="Adjustment" c:type="GtkAdjustment*"/>
26798           </parameter>
26799         </parameters>
26800       </constructor>
26801       <constructor name="new_with_range"
26802                    c:identifier="gtk_hscale_new_with_range">
26803         <doc xml:whitespace="preserve">Creates a new horizontal scale widget that lets the user input a
26804 number between @min and @max (including @min and @max) with the
26805 increment @step.  @step must be nonzero; it's the distance the
26806 slider moves when using the arrow keys to adjust the scale value.
26807 Note that the way in which the precision is derived works best if @step
26808 is a power of ten. If the resulting precision is not suitable for your
26809 needs, use gtk_scale_set_digits() to correct it.</doc>
26810         <return-value transfer-ownership="full">
26811           <doc xml:whitespace="preserve">a new #GtkHScale</doc>
26812           <type name="HScale" c:type="GtkWidget*"/>
26813         </return-value>
26814         <parameters>
26815           <parameter name="min" transfer-ownership="none">
26816             <doc xml:whitespace="preserve">minimum value</doc>
26817             <type name="double" c:type="gdouble"/>
26818           </parameter>
26819           <parameter name="max" transfer-ownership="none">
26820             <doc xml:whitespace="preserve">maximum value</doc>
26821             <type name="double" c:type="gdouble"/>
26822           </parameter>
26823           <parameter name="step" transfer-ownership="none">
26824             <doc xml:whitespace="preserve">step increment (tick size) used with keyboard shortcuts</doc>
26825             <type name="double" c:type="gdouble"/>
26826           </parameter>
26827         </parameters>
26828       </constructor>
26829       <field name="scale">
26830         <type name="Scale" c:type="GtkScale"/>
26831       </field>
26832     </class>
26833     <record name="HScaleClass"
26834             c:type="GtkHScaleClass"
26835             glib:is-gtype-struct-for="HScale">
26836       <field name="parent_class">
26837         <type name="ScaleClass" c:type="GtkScaleClass"/>
26838       </field>
26839     </record>
26840     <class name="HScrollbar"
26841            c:type="GtkHScrollbar"
26842            parent="Scrollbar"
26843            glib:type-name="GtkHScrollbar"
26844            glib:get-type="gtk_hscrollbar_get_type"
26845            glib:type-struct="HScrollbarClass">
26846       <implements name="Atk.ImplementorIface"/>
26847       <implements name="Buildable"/>
26848       <implements name="Orientable"/>
26849       <constructor name="new" c:identifier="gtk_hscrollbar_new">
26850         <doc xml:whitespace="preserve">Creates a new horizontal scrollbar.</doc>
26851         <return-value transfer-ownership="full">
26852           <doc xml:whitespace="preserve">the new #GtkHScrollbar</doc>
26853           <type name="HScrollbar" c:type="GtkWidget*"/>
26854         </return-value>
26855         <parameters>
26856           <parameter name="adjustment"
26857                      transfer-ownership="none"
26858                      allow-none="1">
26859             <doc xml:whitespace="preserve">the #GtkAdjustment to use, or %NULL to create a new adjustment</doc>
26860             <type name="Adjustment" c:type="GtkAdjustment*"/>
26861           </parameter>
26862         </parameters>
26863       </constructor>
26864       <field name="scrollbar">
26865         <type name="Scrollbar" c:type="GtkScrollbar"/>
26866       </field>
26867     </class>
26868     <record name="HScrollbarClass"
26869             c:type="GtkHScrollbarClass"
26870             glib:is-gtype-struct-for="HScrollbar">
26871       <field name="parent_class">
26872         <type name="ScrollbarClass" c:type="GtkScrollbarClass"/>
26873       </field>
26874     </record>
26875     <class name="HSeparator"
26876            c:type="GtkHSeparator"
26877            parent="Separator"
26878            glib:type-name="GtkHSeparator"
26879            glib:get-type="gtk_hseparator_get_type"
26880            glib:type-struct="HSeparatorClass">
26881       <implements name="Atk.ImplementorIface"/>
26882       <implements name="Buildable"/>
26883       <implements name="Orientable"/>
26884       <constructor name="new" c:identifier="gtk_hseparator_new">
26885         <return-value transfer-ownership="full">
26886           <type name="HSeparator" c:type="GtkWidget*"/>
26887         </return-value>
26888       </constructor>
26889       <field name="separator">
26890         <type name="Separator" c:type="GtkSeparator"/>
26891       </field>
26892     </class>
26893     <record name="HSeparatorClass"
26894             c:type="GtkHSeparatorClass"
26895             glib:is-gtype-struct-for="HSeparator">
26896       <field name="parent_class">
26897         <type name="SeparatorClass" c:type="GtkSeparatorClass"/>
26898       </field>
26899     </record>
26900     <class name="HandleBox"
26901            c:type="GtkHandleBox"
26902            parent="Bin"
26903            glib:type-name="GtkHandleBox"
26904            glib:get-type="gtk_handle_box_get_type"
26905            glib:type-struct="HandleBoxClass">
26906       <implements name="Atk.ImplementorIface"/>
26907       <implements name="Buildable"/>
26908       <constructor name="new" c:identifier="gtk_handle_box_new">
26909         <return-value transfer-ownership="full">
26910           <type name="HandleBox" c:type="GtkWidget*"/>
26911         </return-value>
26912       </constructor>
26913       <method name="set_shadow_type"
26914               c:identifier="gtk_handle_box_set_shadow_type">
26915         <return-value transfer-ownership="none">
26916           <type name="none" c:type="void"/>
26917         </return-value>
26918         <parameters>
26919           <parameter name="type" transfer-ownership="none">
26920             <type name="ShadowType" c:type="GtkShadowType"/>
26921           </parameter>
26922         </parameters>
26923       </method>
26924       <method name="get_shadow_type"
26925               c:identifier="gtk_handle_box_get_shadow_type">
26926         <doc xml:whitespace="preserve">Gets the type of shadow drawn around the handle box. See
26927 gtk_handle_box_set_shadow_type().</doc>
26928         <return-value transfer-ownership="full">
26929           <doc xml:whitespace="preserve">the type of shadow currently drawn around the handle box.</doc>
26930           <type name="ShadowType" c:type="GtkShadowType"/>
26931         </return-value>
26932       </method>
26933       <method name="set_handle_position"
26934               c:identifier="gtk_handle_box_set_handle_position">
26935         <return-value transfer-ownership="none">
26936           <type name="none" c:type="void"/>
26937         </return-value>
26938         <parameters>
26939           <parameter name="position" transfer-ownership="none">
26940             <type name="PositionType" c:type="GtkPositionType"/>
26941           </parameter>
26942         </parameters>
26943       </method>
26944       <method name="get_handle_position"
26945               c:identifier="gtk_handle_box_get_handle_position">
26946         <doc xml:whitespace="preserve">Gets the handle position of the handle box. See
26947 gtk_handle_box_set_handle_position().</doc>
26948         <return-value transfer-ownership="full">
26949           <doc xml:whitespace="preserve">the current handle position.</doc>
26950           <type name="PositionType" c:type="GtkPositionType"/>
26951         </return-value>
26952       </method>
26953       <method name="set_snap_edge" c:identifier="gtk_handle_box_set_snap_edge">
26954         <return-value transfer-ownership="none">
26955           <type name="none" c:type="void"/>
26956         </return-value>
26957         <parameters>
26958           <parameter name="edge" transfer-ownership="none">
26959             <type name="PositionType" c:type="GtkPositionType"/>
26960           </parameter>
26961         </parameters>
26962       </method>
26963       <method name="get_snap_edge" c:identifier="gtk_handle_box_get_snap_edge">
26964         <doc xml:whitespace="preserve">Gets the edge used for determining reattachment of the handle box. See
26965 gtk_handle_box_set_snap_edge().
26966 is determined (as per default) from the handle position.</doc>
26967         <return-value transfer-ownership="full">
26968           <doc xml:whitespace="preserve">the edge used for determining reattachment, or (GtkPositionType)-1 if this</doc>
26969           <type name="PositionType" c:type="GtkPositionType"/>
26970         </return-value>
26971       </method>
26972       <method name="get_child_detached"
26973               c:identifier="gtk_handle_box_get_child_detached"
26974               version="2.14">
26975         <doc xml:whitespace="preserve">Whether the handlebox's child is currently detached.</doc>
26976         <return-value transfer-ownership="none">
26977           <doc xml:whitespace="preserve">%TRUE if the child is currently detached, otherwise %FALSE</doc>
26978           <type name="boolean" c:type="gboolean"/>
26979         </return-value>
26980       </method>
26981       <property name="child-detached" transfer-ownership="none">
26982         <type name="boolean" c:type="gboolean"/>
26983       </property>
26984       <property name="handle-position" writable="1" transfer-ownership="none">
26985         <type name="PositionType" c:type="GtkPositionType"/>
26986       </property>
26987       <property name="shadow" writable="1" transfer-ownership="none">
26988         <type name="ShadowType" c:type="GtkShadowType"/>
26989       </property>
26990       <property name="shadow-type" writable="1" transfer-ownership="none">
26991         <type name="ShadowType" c:type="GtkShadowType"/>
26992       </property>
26993       <property name="snap-edge" writable="1" transfer-ownership="none">
26994         <type name="PositionType" c:type="GtkPositionType"/>
26995       </property>
26996       <property name="snap-edge-set" writable="1" transfer-ownership="none">
26997         <type name="boolean" c:type="gboolean"/>
26998       </property>
26999       <field name="bin">
27000         <type name="Bin" c:type="GtkBin"/>
27001       </field>
27002       <field name="bin_window">
27003         <type name="Gdk.Window" c:type="GdkWindow*"/>
27004       </field>
27005       <field name="float_window">
27006         <type name="Gdk.Window" c:type="GdkWindow*"/>
27007       </field>
27008       <field name="shadow_type">
27009         <type name="ShadowType" c:type="GtkShadowType"/>
27010       </field>
27011       <field name="handle_position" bits="2">
27012         <type name="uint" c:type="guint"/>
27013       </field>
27014       <field name="float_window_mapped" bits="1">
27015         <type name="uint" c:type="guint"/>
27016       </field>
27017       <field name="child_detached" bits="1">
27018         <type name="uint" c:type="guint"/>
27019       </field>
27020       <field name="in_drag" bits="1">
27021         <type name="uint" c:type="guint"/>
27022       </field>
27023       <field name="shrink_on_detach" bits="1">
27024         <type name="uint" c:type="guint"/>
27025       </field>
27026       <field name="snap_edge" bits="3">
27027         <type name="int" c:type="signed"/>
27028       </field>
27029       <field name="deskoff_x">
27030         <type name="int" c:type="gint"/>
27031       </field>
27032       <field name="deskoff_y">
27033         <type name="int" c:type="gint"/>
27034       </field>
27035       <field name="attach_allocation">
27036         <type name="Allocation" c:type="GtkAllocation"/>
27037       </field>
27038       <field name="float_allocation">
27039         <type name="Allocation" c:type="GtkAllocation"/>
27040       </field>
27041       <glib:signal name="child-attached">
27042         <return-value transfer-ownership="full">
27043           <type name="none" c:type="void"/>
27044         </return-value>
27045         <parameters>
27046           <parameter name="object" transfer-ownership="none">
27047             <type name="Widget" c:type="GtkWidget"/>
27048           </parameter>
27049         </parameters>
27050       </glib:signal>
27051       <glib:signal name="child-detached">
27052         <return-value transfer-ownership="full">
27053           <type name="none" c:type="void"/>
27054         </return-value>
27055         <parameters>
27056           <parameter name="object" transfer-ownership="none">
27057             <type name="Widget" c:type="GtkWidget"/>
27058           </parameter>
27059         </parameters>
27060       </glib:signal>
27061     </class>
27062     <record name="HandleBoxClass"
27063             c:type="GtkHandleBoxClass"
27064             glib:is-gtype-struct-for="HandleBox">
27065       <field name="parent_class">
27066         <type name="BinClass" c:type="GtkBinClass"/>
27067       </field>
27068       <field name="child_attached">
27069         <callback name="child_attached" c:type="child_attached">
27070           <return-value transfer-ownership="none">
27071             <type name="none" c:type="void"/>
27072           </return-value>
27073           <parameters>
27074             <parameter name="handle_box" transfer-ownership="none">
27075               <type name="HandleBox" c:type="GtkHandleBox*"/>
27076             </parameter>
27077             <parameter name="child" transfer-ownership="none">
27078               <type name="Widget" c:type="GtkWidget*"/>
27079             </parameter>
27080           </parameters>
27081         </callback>
27082       </field>
27083       <field name="child_detached">
27084         <callback name="child_detached" c:type="child_detached">
27085           <return-value transfer-ownership="none">
27086             <type name="none" c:type="void"/>
27087           </return-value>
27088           <parameters>
27089             <parameter name="handle_box" transfer-ownership="none">
27090               <type name="HandleBox" c:type="GtkHandleBox*"/>
27091             </parameter>
27092             <parameter name="child" transfer-ownership="none">
27093               <type name="Widget" c:type="GtkWidget*"/>
27094             </parameter>
27095           </parameters>
27096         </callback>
27097       </field>
27098       <field name="gtk_reserved1">
27099         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
27100           <return-value transfer-ownership="none">
27101             <type name="none" c:type="void"/>
27102           </return-value>
27103         </callback>
27104       </field>
27105       <field name="gtk_reserved2">
27106         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
27107           <return-value transfer-ownership="none">
27108             <type name="none" c:type="void"/>
27109           </return-value>
27110         </callback>
27111       </field>
27112       <field name="gtk_reserved3">
27113         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
27114           <return-value transfer-ownership="none">
27115             <type name="none" c:type="void"/>
27116           </return-value>
27117         </callback>
27118       </field>
27119       <field name="gtk_reserved4">
27120         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
27121           <return-value transfer-ownership="none">
27122             <type name="none" c:type="void"/>
27123           </return-value>
27124         </callback>
27125       </field>
27126     </record>
27127     <class name="IMContext"
27128            c:type="GtkIMContext"
27129            parent="GObject.Object"
27130            abstract="1"
27131            glib:type-name="GtkIMContext"
27132            glib:get-type="gtk_im_context_get_type"
27133            glib:type-struct="IMContextClass">
27134       <virtual-method name="set_client_window" invoker="set_client_window">
27135         <doc xml:whitespace="preserve">Set the client window for the input context; this is the
27136 #GdkWindow in which the input appears. This window is
27137 used in order to correctly position status windows, and may
27138 also be used for purposes internal to the input method.</doc>
27139         <return-value transfer-ownership="none">
27140           <type name="none" c:type="void"/>
27141         </return-value>
27142         <parameters>
27143           <parameter name="window" transfer-ownership="none" allow-none="1">
27144             <doc xml:whitespace="preserve">the client window. This may be %NULL to indicate that the previous client window no longer exists.</doc>
27145             <type name="Gdk.Window" c:type="GdkWindow*"/>
27146           </parameter>
27147         </parameters>
27148       </virtual-method>
27149       <virtual-method name="get_preedit_string" invoker="get_preedit_string">
27150         <doc xml:whitespace="preserve">Retrieve the current preedit string for the input context,
27151 and a list of attributes to apply to the string.
27152 This string should be displayed inserted at the insertion
27153 point.</doc>
27154         <return-value transfer-ownership="none">
27155           <type name="none" c:type="void"/>
27156         </return-value>
27157         <parameters>
27158           <parameter name="str" transfer-ownership="none">
27159             <doc xml:whitespace="preserve">location to store the retrieved string. The string retrieved must be freed with g_free ().</doc>
27160             <array c:type="gchar**">
27161               <type name="utf8"/>
27162             </array>
27163           </parameter>
27164           <parameter name="attrs" transfer-ownership="none">
27165             <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>
27166             <type name="Pango.AttrList" c:type="PangoAttrList**"/>
27167           </parameter>
27168           <parameter name="cursor_pos"
27169                      direction="out"
27170                      caller-allocates="0"
27171                      transfer-ownership="full">
27172             <doc xml:whitespace="preserve">location to store position of cursor (in characters) within the preedit string.</doc>
27173             <type name="int" c:type="gint*"/>
27174           </parameter>
27175         </parameters>
27176       </virtual-method>
27177       <virtual-method name="filter_keypress" invoker="filter_keypress">
27178         <doc xml:whitespace="preserve">Allow an input method to internally handle key press and release 
27179 events. If this function returns %TRUE, then no further processing
27180 should be done for this key event.</doc>
27181         <return-value transfer-ownership="none">
27182           <doc xml:whitespace="preserve">%TRUE if the input method handled the key event.</doc>
27183           <type name="boolean" c:type="gboolean"/>
27184         </return-value>
27185         <parameters>
27186           <parameter name="event" transfer-ownership="none">
27187             <doc xml:whitespace="preserve">the key event</doc>
27188             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
27189           </parameter>
27190         </parameters>
27191       </virtual-method>
27192       <virtual-method name="focus_in" invoker="focus_in">
27193         <doc xml:whitespace="preserve">Notify the input method that the widget to which this
27194 input context corresponds has gained focus. The input method
27195 may, for example, change the displayed feedback to reflect
27196 this change.</doc>
27197         <return-value transfer-ownership="none">
27198           <type name="none" c:type="void"/>
27199         </return-value>
27200       </virtual-method>
27201       <virtual-method name="focus_out" invoker="focus_out">
27202         <doc xml:whitespace="preserve">Notify the input method that the widget to which this
27203 input context corresponds has lost focus. The input method
27204 may, for example, change the displayed feedback or reset the contexts
27205 state to reflect this change.</doc>
27206         <return-value transfer-ownership="none">
27207           <type name="none" c:type="void"/>
27208         </return-value>
27209       </virtual-method>
27210       <virtual-method name="reset" invoker="reset">
27211         <doc xml:whitespace="preserve">Notify the input method that a change such as a change in cursor
27212 position has been made. This will typically cause the input
27213 method to clear the preedit state.</doc>
27214         <return-value transfer-ownership="none">
27215           <type name="none" c:type="void"/>
27216         </return-value>
27217       </virtual-method>
27218       <virtual-method name="set_cursor_location" invoker="set_cursor_location">
27219         <doc xml:whitespace="preserve">Notify the input method that a change in cursor 
27220 position has been made. The location is relative to the client
27221 window.</doc>
27222         <return-value transfer-ownership="none">
27223           <type name="none" c:type="void"/>
27224         </return-value>
27225         <parameters>
27226           <parameter name="area" transfer-ownership="none">
27227             <doc xml:whitespace="preserve">new location</doc>
27228             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
27229           </parameter>
27230         </parameters>
27231       </virtual-method>
27232       <virtual-method name="set_use_preedit" invoker="set_use_preedit">
27233         <doc xml:whitespace="preserve">Sets whether the IM context should use the preedit string
27234 to display feedback. If @use_preedit is FALSE (default
27235 is TRUE), then the IM context may use some other method to display
27236 feedback, such as displaying it in a child of the root window.</doc>
27237         <return-value transfer-ownership="none">
27238           <type name="none" c:type="void"/>
27239         </return-value>
27240         <parameters>
27241           <parameter name="use_preedit" transfer-ownership="none">
27242             <doc xml:whitespace="preserve">whether the IM context should use the preedit string.</doc>
27243             <type name="boolean" c:type="gboolean"/>
27244           </parameter>
27245         </parameters>
27246       </virtual-method>
27247       <virtual-method name="set_surrounding" invoker="set_surrounding">
27248         <doc xml:whitespace="preserve">Sets surrounding context around the insertion point and preedit
27249 string. This function is expected to be called in response to the
27250 GtkIMContext::retrieve_surrounding signal, and will likely have no
27251 effect if called at other times.</doc>
27252         <return-value transfer-ownership="none">
27253           <type name="none" c:type="void"/>
27254         </return-value>
27255         <parameters>
27256           <parameter name="text" transfer-ownership="none">
27257             <doc xml:whitespace="preserve">text surrounding the insertion point, as UTF-8. the preedit string should not be included within</doc>
27258             <type name="utf8" c:type="gchar*"/>
27259           </parameter>
27260           <parameter name="len" transfer-ownership="none">
27261             <doc xml:whitespace="preserve">the length of @text, or -1 if @text is nul-terminated</doc>
27262             <type name="int" c:type="gint"/>
27263           </parameter>
27264           <parameter name="cursor_index" transfer-ownership="none">
27265             <doc xml:whitespace="preserve">the byte index of the insertion cursor within @text.</doc>
27266             <type name="int" c:type="gint"/>
27267           </parameter>
27268         </parameters>
27269       </virtual-method>
27270       <virtual-method name="get_surrounding" invoker="get_surrounding">
27271         <doc xml:whitespace="preserve">Retrieves context around the insertion point. Input methods
27272 typically want context in order to constrain input text based on
27273 existing text; this is important for languages such as Thai where
27274 only some sequences of characters are allowed.
27275 This function is implemented by emitting the
27276 GtkIMContext::retrieve_surrounding signal on the input method; in
27277 response to this signal, a widget should provide as much context as
27278 is available, up to an entire paragraph, by calling
27279 gtk_im_context_set_surrounding(). Note that there is no obligation
27280 for a widget to respond to the ::retrieve_surrounding signal, so input
27281 methods must be prepared to function without context.
27282 you must free the result stored in *text.</doc>
27283         <return-value transfer-ownership="none">
27284           <doc xml:whitespace="preserve">%TRUE if surrounding text was provided; in this case</doc>
27285           <type name="boolean" c:type="gboolean"/>
27286         </return-value>
27287         <parameters>
27288           <parameter name="text" transfer-ownership="none">
27289             <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>
27290             <array c:type="gchar**">
27291               <type name="utf8"/>
27292             </array>
27293           </parameter>
27294           <parameter name="cursor_index"
27295                      direction="out"
27296                      caller-allocates="0"
27297                      transfer-ownership="full">
27298             <doc xml:whitespace="preserve">location to store byte index of the insertion cursor within @text.</doc>
27299             <type name="int" c:type="gint*"/>
27300           </parameter>
27301         </parameters>
27302       </virtual-method>
27303       <method name="set_client_window"
27304               c:identifier="gtk_im_context_set_client_window">
27305         <doc xml:whitespace="preserve">Set the client window for the input context; this is the
27306 #GdkWindow in which the input appears. This window is
27307 used in order to correctly position status windows, and may
27308 also be used for purposes internal to the input method.</doc>
27309         <return-value transfer-ownership="none">
27310           <type name="none" c:type="void"/>
27311         </return-value>
27312         <parameters>
27313           <parameter name="window" transfer-ownership="none" allow-none="1">
27314             <doc xml:whitespace="preserve">the client window. This may be %NULL to indicate that the previous client window no longer exists.</doc>
27315             <type name="Gdk.Window" c:type="GdkWindow*"/>
27316           </parameter>
27317         </parameters>
27318       </method>
27319       <method name="get_preedit_string"
27320               c:identifier="gtk_im_context_get_preedit_string">
27321         <doc xml:whitespace="preserve">Retrieve the current preedit string for the input context,
27322 and a list of attributes to apply to the string.
27323 This string should be displayed inserted at the insertion
27324 point.</doc>
27325         <return-value transfer-ownership="none">
27326           <type name="none" c:type="void"/>
27327         </return-value>
27328         <parameters>
27329           <parameter name="str" transfer-ownership="none">
27330             <doc xml:whitespace="preserve">location to store the retrieved string. The string retrieved must be freed with g_free ().</doc>
27331             <array c:type="gchar**">
27332               <type name="utf8"/>
27333             </array>
27334           </parameter>
27335           <parameter name="attrs" transfer-ownership="none">
27336             <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>
27337             <type name="Pango.AttrList" c:type="PangoAttrList**"/>
27338           </parameter>
27339           <parameter name="cursor_pos"
27340                      direction="out"
27341                      caller-allocates="0"
27342                      transfer-ownership="full">
27343             <doc xml:whitespace="preserve">location to store position of cursor (in characters) within the preedit string.</doc>
27344             <type name="int" c:type="gint*"/>
27345           </parameter>
27346         </parameters>
27347       </method>
27348       <method name="filter_keypress"
27349               c:identifier="gtk_im_context_filter_keypress">
27350         <doc xml:whitespace="preserve">Allow an input method to internally handle key press and release 
27351 events. If this function returns %TRUE, then no further processing
27352 should be done for this key event.</doc>
27353         <return-value transfer-ownership="none">
27354           <doc xml:whitespace="preserve">%TRUE if the input method handled the key event.</doc>
27355           <type name="boolean" c:type="gboolean"/>
27356         </return-value>
27357         <parameters>
27358           <parameter name="event" transfer-ownership="none">
27359             <doc xml:whitespace="preserve">the key event</doc>
27360             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
27361           </parameter>
27362         </parameters>
27363       </method>
27364       <method name="focus_in" c:identifier="gtk_im_context_focus_in">
27365         <doc xml:whitespace="preserve">Notify the input method that the widget to which this
27366 input context corresponds has gained focus. The input method
27367 may, for example, change the displayed feedback to reflect
27368 this change.</doc>
27369         <return-value transfer-ownership="none">
27370           <type name="none" c:type="void"/>
27371         </return-value>
27372       </method>
27373       <method name="focus_out" c:identifier="gtk_im_context_focus_out">
27374         <doc xml:whitespace="preserve">Notify the input method that the widget to which this
27375 input context corresponds has lost focus. The input method
27376 may, for example, change the displayed feedback or reset the contexts
27377 state to reflect this change.</doc>
27378         <return-value transfer-ownership="none">
27379           <type name="none" c:type="void"/>
27380         </return-value>
27381       </method>
27382       <method name="reset" c:identifier="gtk_im_context_reset">
27383         <doc xml:whitespace="preserve">Notify the input method that a change such as a change in cursor
27384 position has been made. This will typically cause the input
27385 method to clear the preedit state.</doc>
27386         <return-value transfer-ownership="none">
27387           <type name="none" c:type="void"/>
27388         </return-value>
27389       </method>
27390       <method name="set_cursor_location"
27391               c:identifier="gtk_im_context_set_cursor_location">
27392         <doc xml:whitespace="preserve">Notify the input method that a change in cursor 
27393 position has been made. The location is relative to the client
27394 window.</doc>
27395         <return-value transfer-ownership="none">
27396           <type name="none" c:type="void"/>
27397         </return-value>
27398         <parameters>
27399           <parameter name="area" transfer-ownership="none">
27400             <doc xml:whitespace="preserve">new location</doc>
27401             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
27402           </parameter>
27403         </parameters>
27404       </method>
27405       <method name="set_use_preedit"
27406               c:identifier="gtk_im_context_set_use_preedit">
27407         <doc xml:whitespace="preserve">Sets whether the IM context should use the preedit string
27408 to display feedback. If @use_preedit is FALSE (default
27409 is TRUE), then the IM context may use some other method to display
27410 feedback, such as displaying it in a child of the root window.</doc>
27411         <return-value transfer-ownership="none">
27412           <type name="none" c:type="void"/>
27413         </return-value>
27414         <parameters>
27415           <parameter name="use_preedit" transfer-ownership="none">
27416             <doc xml:whitespace="preserve">whether the IM context should use the preedit string.</doc>
27417             <type name="boolean" c:type="gboolean"/>
27418           </parameter>
27419         </parameters>
27420       </method>
27421       <method name="set_surrounding"
27422               c:identifier="gtk_im_context_set_surrounding">
27423         <doc xml:whitespace="preserve">Sets surrounding context around the insertion point and preedit
27424 string. This function is expected to be called in response to the
27425 GtkIMContext::retrieve_surrounding signal, and will likely have no
27426 effect if called at other times.</doc>
27427         <return-value transfer-ownership="none">
27428           <type name="none" c:type="void"/>
27429         </return-value>
27430         <parameters>
27431           <parameter name="text" transfer-ownership="none">
27432             <doc xml:whitespace="preserve">text surrounding the insertion point, as UTF-8. the preedit string should not be included within</doc>
27433             <type name="utf8" c:type="gchar*"/>
27434           </parameter>
27435           <parameter name="len" transfer-ownership="none">
27436             <doc xml:whitespace="preserve">the length of @text, or -1 if @text is nul-terminated</doc>
27437             <type name="int" c:type="gint"/>
27438           </parameter>
27439           <parameter name="cursor_index" transfer-ownership="none">
27440             <doc xml:whitespace="preserve">the byte index of the insertion cursor within @text.</doc>
27441             <type name="int" c:type="gint"/>
27442           </parameter>
27443         </parameters>
27444       </method>
27445       <method name="get_surrounding"
27446               c:identifier="gtk_im_context_get_surrounding">
27447         <doc xml:whitespace="preserve">Retrieves context around the insertion point. Input methods
27448 typically want context in order to constrain input text based on
27449 existing text; this is important for languages such as Thai where
27450 only some sequences of characters are allowed.
27451 This function is implemented by emitting the
27452 GtkIMContext::retrieve_surrounding signal on the input method; in
27453 response to this signal, a widget should provide as much context as
27454 is available, up to an entire paragraph, by calling
27455 gtk_im_context_set_surrounding(). Note that there is no obligation
27456 for a widget to respond to the ::retrieve_surrounding signal, so input
27457 methods must be prepared to function without context.
27458 you must free the result stored in *text.</doc>
27459         <return-value transfer-ownership="none">
27460           <doc xml:whitespace="preserve">%TRUE if surrounding text was provided; in this case</doc>
27461           <type name="boolean" c:type="gboolean"/>
27462         </return-value>
27463         <parameters>
27464           <parameter name="text" transfer-ownership="none">
27465             <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>
27466             <array c:type="gchar**">
27467               <type name="utf8"/>
27468             </array>
27469           </parameter>
27470           <parameter name="cursor_index"
27471                      direction="out"
27472                      caller-allocates="0"
27473                      transfer-ownership="full">
27474             <doc xml:whitespace="preserve">location to store byte index of the insertion cursor within @text.</doc>
27475             <type name="int" c:type="gint*"/>
27476           </parameter>
27477         </parameters>
27478       </method>
27479       <method name="delete_surrounding"
27480               c:identifier="gtk_im_context_delete_surrounding">
27481         <doc xml:whitespace="preserve">Asks the widget that the input context is attached to to delete
27482 characters around the cursor position by emitting the
27483 GtkIMContext::delete_surrounding signal. Note that @offset and @n_chars
27484 are in characters not in bytes which differs from the usage other
27485 places in #GtkIMContext.
27486 In order to use this function, you should first call
27487 gtk_im_context_get_surrounding() to get the current context, and
27488 call this function immediately afterwards to make sure that you
27489 know what you are deleting. You should also account for the fact
27490 that even if the signal was handled, the input context might not
27491 have deleted all the characters that were requested to be deleted.
27492 This function is used by an input method that wants to make
27493 subsitutions in the existing text in response to new input. It is
27494 not useful for applications.</doc>
27495         <return-value transfer-ownership="none">
27496           <doc xml:whitespace="preserve">%TRUE if the signal was handled.</doc>
27497           <type name="boolean" c:type="gboolean"/>
27498         </return-value>
27499         <parameters>
27500           <parameter name="offset" transfer-ownership="none">
27501             <doc xml:whitespace="preserve">offset from cursor position in chars; a negative value means start before the cursor.</doc>
27502             <type name="int" c:type="gint"/>
27503           </parameter>
27504           <parameter name="n_chars" transfer-ownership="none">
27505             <doc xml:whitespace="preserve">number of characters to delete.</doc>
27506             <type name="int" c:type="gint"/>
27507           </parameter>
27508         </parameters>
27509       </method>
27510       <field name="parent_instance">
27511         <type name="GObject.Object" c:type="GObject"/>
27512       </field>
27513       <glib:signal name="commit">
27514         <doc xml:whitespace="preserve">The ::commit signal is emitted when a complete input sequence
27515 has been entered by the user. This can be a single character
27516 immediately after a key press or the final result of preediting.</doc>
27517         <return-value transfer-ownership="full">
27518           <type name="none" c:type="void"/>
27519         </return-value>
27520         <parameters>
27521           <parameter name="str" transfer-ownership="none">
27522             <doc xml:whitespace="preserve">the completed character(s) entered by the user</doc>
27523             <type name="utf8" c:type="gchararray"/>
27524           </parameter>
27525         </parameters>
27526       </glib:signal>
27527       <glib:signal name="delete-surrounding">
27528         <doc xml:whitespace="preserve">The ::delete-surrounding signal is emitted when the input method
27529 needs to delete all or part of the context surrounding the cursor.</doc>
27530         <return-value transfer-ownership="full">
27531           <doc xml:whitespace="preserve">%TRUE if the signal was handled.</doc>
27532           <type name="boolean" c:type="gboolean"/>
27533         </return-value>
27534         <parameters>
27535           <parameter name="offset" transfer-ownership="none">
27536             <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>
27537             <type name="int" c:type="gint"/>
27538           </parameter>
27539           <parameter name="n_chars" transfer-ownership="none">
27540             <doc xml:whitespace="preserve">the number of characters to be deleted</doc>
27541             <type name="int" c:type="gint"/>
27542           </parameter>
27543         </parameters>
27544       </glib:signal>
27545       <glib:signal name="preedit-changed">
27546         <doc xml:whitespace="preserve">The ::preedit-changed signal is emitted whenever the preedit sequence
27547 currently being entered has changed.  It is also emitted at the end of
27548 a preedit sequence, in which case
27549 gtk_im_context_get_preedit_string() returns the empty string.</doc>
27550         <return-value transfer-ownership="full">
27551           <type name="none" c:type="void"/>
27552         </return-value>
27553       </glib:signal>
27554       <glib:signal name="preedit-end">
27555         <doc xml:whitespace="preserve">The ::preedit-end signal is emitted when a preediting sequence
27556 has been completed or canceled.</doc>
27557         <return-value transfer-ownership="full">
27558           <type name="none" c:type="void"/>
27559         </return-value>
27560       </glib:signal>
27561       <glib:signal name="preedit-start">
27562         <doc xml:whitespace="preserve">The ::preedit-start signal is emitted when a new preediting sequence
27563 starts.</doc>
27564         <return-value transfer-ownership="full">
27565           <type name="none" c:type="void"/>
27566         </return-value>
27567       </glib:signal>
27568       <glib:signal name="retrieve-surrounding">
27569         <doc xml:whitespace="preserve">The ::retrieve-surrounding signal is emitted when the input method
27570 requires the context surrounding the cursor.  The callback should set
27571 the input method surrounding context by calling the
27572 gtk_im_context_set_surrounding() method.</doc>
27573         <return-value transfer-ownership="full">
27574           <doc xml:whitespace="preserve">%TRUE if the signal was handled.</doc>
27575           <type name="boolean" c:type="gboolean"/>
27576         </return-value>
27577       </glib:signal>
27578     </class>
27579     <record name="IMContextClass"
27580             c:type="GtkIMContextClass"
27581             glib:is-gtype-struct-for="IMContext">
27582       <field name="parent_class">
27583         <type name="ObjectClass" c:type="GtkObjectClass"/>
27584       </field>
27585       <field name="preedit_start">
27586         <callback name="preedit_start" c:type="preedit_start">
27587           <return-value transfer-ownership="none">
27588             <type name="none" c:type="void"/>
27589           </return-value>
27590           <parameters>
27591             <parameter name="context" transfer-ownership="none">
27592               <type name="IMContext" c:type="GtkIMContext*"/>
27593             </parameter>
27594           </parameters>
27595         </callback>
27596       </field>
27597       <field name="preedit_end">
27598         <callback name="preedit_end" c:type="preedit_end">
27599           <return-value transfer-ownership="none">
27600             <type name="none" c:type="void"/>
27601           </return-value>
27602           <parameters>
27603             <parameter name="context" transfer-ownership="none">
27604               <type name="IMContext" c:type="GtkIMContext*"/>
27605             </parameter>
27606           </parameters>
27607         </callback>
27608       </field>
27609       <field name="preedit_changed">
27610         <callback name="preedit_changed" c:type="preedit_changed">
27611           <return-value transfer-ownership="none">
27612             <type name="none" c:type="void"/>
27613           </return-value>
27614           <parameters>
27615             <parameter name="context" transfer-ownership="none">
27616               <type name="IMContext" c:type="GtkIMContext*"/>
27617             </parameter>
27618           </parameters>
27619         </callback>
27620       </field>
27621       <field name="commit">
27622         <callback name="commit" c:type="commit">
27623           <return-value transfer-ownership="none">
27624             <type name="none" c:type="void"/>
27625           </return-value>
27626           <parameters>
27627             <parameter name="context" transfer-ownership="none">
27628               <type name="IMContext" c:type="GtkIMContext*"/>
27629             </parameter>
27630             <parameter name="str" transfer-ownership="none">
27631               <type name="utf8" c:type="gchar*"/>
27632             </parameter>
27633           </parameters>
27634         </callback>
27635       </field>
27636       <field name="retrieve_surrounding">
27637         <callback name="retrieve_surrounding" c:type="retrieve_surrounding">
27638           <return-value transfer-ownership="none">
27639             <type name="boolean" c:type="gboolean"/>
27640           </return-value>
27641           <parameters>
27642             <parameter name="context" transfer-ownership="none">
27643               <type name="IMContext" c:type="GtkIMContext*"/>
27644             </parameter>
27645           </parameters>
27646         </callback>
27647       </field>
27648       <field name="delete_surrounding">
27649         <callback name="delete_surrounding" c:type="delete_surrounding">
27650           <return-value transfer-ownership="none">
27651             <type name="boolean" c:type="gboolean"/>
27652           </return-value>
27653           <parameters>
27654             <parameter name="context" transfer-ownership="none">
27655               <type name="IMContext" c:type="GtkIMContext*"/>
27656             </parameter>
27657             <parameter name="offset" transfer-ownership="none">
27658               <type name="int" c:type="gint"/>
27659             </parameter>
27660             <parameter name="n_chars" transfer-ownership="none">
27661               <type name="int" c:type="gint"/>
27662             </parameter>
27663           </parameters>
27664         </callback>
27665       </field>
27666       <field name="set_client_window">
27667         <callback name="set_client_window" c:type="set_client_window">
27668           <return-value transfer-ownership="none">
27669             <type name="none" c:type="void"/>
27670           </return-value>
27671           <parameters>
27672             <parameter name="context" transfer-ownership="none">
27673               <type name="IMContext" c:type="GtkIMContext*"/>
27674             </parameter>
27675             <parameter name="window" transfer-ownership="none" allow-none="1">
27676               <doc xml:whitespace="preserve">the client window. This may be %NULL to indicate that the previous client window no longer exists.</doc>
27677               <type name="Gdk.Window" c:type="GdkWindow*"/>
27678             </parameter>
27679           </parameters>
27680         </callback>
27681       </field>
27682       <field name="get_preedit_string">
27683         <callback name="get_preedit_string" c:type="get_preedit_string">
27684           <return-value transfer-ownership="none">
27685             <type name="none" c:type="void"/>
27686           </return-value>
27687           <parameters>
27688             <parameter name="context" transfer-ownership="none">
27689               <type name="IMContext" c:type="GtkIMContext*"/>
27690             </parameter>
27691             <parameter name="str" transfer-ownership="none">
27692               <doc xml:whitespace="preserve">location to store the retrieved string. The string retrieved must be freed with g_free ().</doc>
27693               <array c:type="gchar**">
27694                 <type name="utf8"/>
27695               </array>
27696             </parameter>
27697             <parameter name="attrs" transfer-ownership="none">
27698               <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>
27699               <type name="Pango.AttrList" c:type="PangoAttrList**"/>
27700             </parameter>
27701             <parameter name="cursor_pos"
27702                        direction="out"
27703                        caller-allocates="0"
27704                        transfer-ownership="full">
27705               <doc xml:whitespace="preserve">location to store position of cursor (in characters) within the preedit string.</doc>
27706               <type name="int" c:type="gint*"/>
27707             </parameter>
27708           </parameters>
27709         </callback>
27710       </field>
27711       <field name="filter_keypress">
27712         <callback name="filter_keypress" c:type="filter_keypress">
27713           <return-value transfer-ownership="none">
27714             <doc xml:whitespace="preserve">%TRUE if the input method handled the key event.</doc>
27715             <type name="boolean" c:type="gboolean"/>
27716           </return-value>
27717           <parameters>
27718             <parameter name="context" transfer-ownership="none">
27719               <type name="IMContext" c:type="GtkIMContext*"/>
27720             </parameter>
27721             <parameter name="event" transfer-ownership="none">
27722               <doc xml:whitespace="preserve">the key event</doc>
27723               <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
27724             </parameter>
27725           </parameters>
27726         </callback>
27727       </field>
27728       <field name="focus_in">
27729         <callback name="focus_in" c:type="focus_in">
27730           <return-value transfer-ownership="none">
27731             <type name="none" c:type="void"/>
27732           </return-value>
27733           <parameters>
27734             <parameter name="context" transfer-ownership="none">
27735               <type name="IMContext" c:type="GtkIMContext*"/>
27736             </parameter>
27737           </parameters>
27738         </callback>
27739       </field>
27740       <field name="focus_out">
27741         <callback name="focus_out" c:type="focus_out">
27742           <return-value transfer-ownership="none">
27743             <type name="none" c:type="void"/>
27744           </return-value>
27745           <parameters>
27746             <parameter name="context" transfer-ownership="none">
27747               <type name="IMContext" c:type="GtkIMContext*"/>
27748             </parameter>
27749           </parameters>
27750         </callback>
27751       </field>
27752       <field name="reset">
27753         <callback name="reset" c:type="reset">
27754           <return-value transfer-ownership="none">
27755             <type name="none" c:type="void"/>
27756           </return-value>
27757           <parameters>
27758             <parameter name="context" transfer-ownership="none">
27759               <type name="IMContext" c:type="GtkIMContext*"/>
27760             </parameter>
27761           </parameters>
27762         </callback>
27763       </field>
27764       <field name="set_cursor_location">
27765         <callback name="set_cursor_location" c:type="set_cursor_location">
27766           <return-value transfer-ownership="none">
27767             <type name="none" c:type="void"/>
27768           </return-value>
27769           <parameters>
27770             <parameter name="context" transfer-ownership="none">
27771               <type name="IMContext" c:type="GtkIMContext*"/>
27772             </parameter>
27773             <parameter name="area" transfer-ownership="none">
27774               <doc xml:whitespace="preserve">new location</doc>
27775               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
27776             </parameter>
27777           </parameters>
27778         </callback>
27779       </field>
27780       <field name="set_use_preedit">
27781         <callback name="set_use_preedit" c:type="set_use_preedit">
27782           <return-value transfer-ownership="none">
27783             <type name="none" c:type="void"/>
27784           </return-value>
27785           <parameters>
27786             <parameter name="context" transfer-ownership="none">
27787               <type name="IMContext" c:type="GtkIMContext*"/>
27788             </parameter>
27789             <parameter name="use_preedit" transfer-ownership="none">
27790               <doc xml:whitespace="preserve">whether the IM context should use the preedit string.</doc>
27791               <type name="boolean" c:type="gboolean"/>
27792             </parameter>
27793           </parameters>
27794         </callback>
27795       </field>
27796       <field name="set_surrounding">
27797         <callback name="set_surrounding" c:type="set_surrounding">
27798           <return-value transfer-ownership="none">
27799             <type name="none" c:type="void"/>
27800           </return-value>
27801           <parameters>
27802             <parameter name="context" transfer-ownership="none">
27803               <type name="IMContext" c:type="GtkIMContext*"/>
27804             </parameter>
27805             <parameter name="text" transfer-ownership="none">
27806               <doc xml:whitespace="preserve">text surrounding the insertion point, as UTF-8. the preedit string should not be included within</doc>
27807               <type name="utf8" c:type="gchar*"/>
27808             </parameter>
27809             <parameter name="len" transfer-ownership="none">
27810               <doc xml:whitespace="preserve">the length of @text, or -1 if @text is nul-terminated</doc>
27811               <type name="int" c:type="gint"/>
27812             </parameter>
27813             <parameter name="cursor_index" transfer-ownership="none">
27814               <doc xml:whitespace="preserve">the byte index of the insertion cursor within @text.</doc>
27815               <type name="int" c:type="gint"/>
27816             </parameter>
27817           </parameters>
27818         </callback>
27819       </field>
27820       <field name="get_surrounding">
27821         <callback name="get_surrounding" c:type="get_surrounding">
27822           <return-value transfer-ownership="none">
27823             <doc xml:whitespace="preserve">%TRUE if surrounding text was provided; in this case</doc>
27824             <type name="boolean" c:type="gboolean"/>
27825           </return-value>
27826           <parameters>
27827             <parameter name="context" transfer-ownership="none">
27828               <type name="IMContext" c:type="GtkIMContext*"/>
27829             </parameter>
27830             <parameter name="text" transfer-ownership="none">
27831               <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>
27832               <array c:type="gchar**">
27833                 <type name="utf8"/>
27834               </array>
27835             </parameter>
27836             <parameter name="cursor_index"
27837                        direction="out"
27838                        caller-allocates="0"
27839                        transfer-ownership="full">
27840               <doc xml:whitespace="preserve">location to store byte index of the insertion cursor within @text.</doc>
27841               <type name="int" c:type="gint*"/>
27842             </parameter>
27843           </parameters>
27844         </callback>
27845       </field>
27846       <field name="gtk_reserved1">
27847         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
27848           <return-value transfer-ownership="none">
27849             <type name="none" c:type="void"/>
27850           </return-value>
27851         </callback>
27852       </field>
27853       <field name="gtk_reserved2">
27854         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
27855           <return-value transfer-ownership="none">
27856             <type name="none" c:type="void"/>
27857           </return-value>
27858         </callback>
27859       </field>
27860       <field name="gtk_reserved3">
27861         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
27862           <return-value transfer-ownership="none">
27863             <type name="none" c:type="void"/>
27864           </return-value>
27865         </callback>
27866       </field>
27867       <field name="gtk_reserved4">
27868         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
27869           <return-value transfer-ownership="none">
27870             <type name="none" c:type="void"/>
27871           </return-value>
27872         </callback>
27873       </field>
27874       <field name="gtk_reserved5">
27875         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
27876           <return-value transfer-ownership="none">
27877             <type name="none" c:type="void"/>
27878           </return-value>
27879         </callback>
27880       </field>
27881       <field name="gtk_reserved6">
27882         <callback name="gtk_reserved6" c:type="_gtk_reserved6">
27883           <return-value transfer-ownership="none">
27884             <type name="none" c:type="void"/>
27885           </return-value>
27886         </callback>
27887       </field>
27888     </record>
27889     <record name="IMContextInfo" c:type="GtkIMContextInfo">
27890       <doc xml:whitespace="preserve">Bookkeeping information about a loadable input method.</doc>
27891       <field name="context_id" writable="1">
27892         <type name="utf8" c:type="gchar*"/>
27893       </field>
27894       <field name="context_name" writable="1">
27895         <type name="utf8" c:type="gchar*"/>
27896       </field>
27897       <field name="domain" writable="1">
27898         <type name="utf8" c:type="gchar*"/>
27899       </field>
27900       <field name="domain_dirname" writable="1">
27901         <type name="utf8" c:type="gchar*"/>
27902       </field>
27903       <field name="default_locales" writable="1">
27904         <type name="utf8" c:type="gchar*"/>
27905       </field>
27906     </record>
27907     <class name="IMContextSimple"
27908            c:type="GtkIMContextSimple"
27909            parent="IMContext"
27910            glib:type-name="GtkIMContextSimple"
27911            glib:get-type="gtk_im_context_simple_get_type"
27912            glib:type-struct="IMContextSimpleClass">
27913       <constructor name="new" c:identifier="gtk_im_context_simple_new">
27914         <return-value transfer-ownership="full">
27915           <type name="IMContextSimple" c:type="GtkIMContext*"/>
27916         </return-value>
27917       </constructor>
27918       <method name="add_table" c:identifier="gtk_im_context_simple_add_table">
27919         <doc xml:whitespace="preserve">Adds an additional table to search to the input context.
27920 Each row of the table consists of @max_seq_len key symbols
27921 followed by two #guint16 interpreted as the high and low
27922 words of a #gunicode value. Tables are searched starting
27923 from the last added.
27924 The table must be sorted in dictionary order on the
27925 numeric value of the key symbol fields. (Values beyond
27926 the length of the sequence should be zero.)</doc>
27927         <return-value transfer-ownership="none">
27928           <type name="none" c:type="void"/>
27929         </return-value>
27930         <parameters>
27931           <parameter name="data"
27932                      direction="out"
27933                      caller-allocates="0"
27934                      transfer-ownership="full">
27935             <doc xml:whitespace="preserve">the table</doc>
27936             <type name="uint16" c:type="guint16*"/>
27937           </parameter>
27938           <parameter name="max_seq_len" transfer-ownership="none">
27939             <doc xml:whitespace="preserve">Maximum length of a sequence in the table (cannot be greater than #GTK_MAX_COMPOSE_LEN)</doc>
27940             <type name="int" c:type="gint"/>
27941           </parameter>
27942           <parameter name="n_seqs" transfer-ownership="none">
27943             <doc xml:whitespace="preserve">number of sequences in the table</doc>
27944             <type name="int" c:type="gint"/>
27945           </parameter>
27946         </parameters>
27947       </method>
27948       <field name="object">
27949         <type name="IMContext" c:type="GtkIMContext"/>
27950       </field>
27951       <field name="tables">
27952         <type name="GLib.SList" c:type="GSList*">
27953           <type name="any" c:type="gpointer"/>
27954         </type>
27955       </field>
27956       <field name="compose_buffer">
27957         <array zero-terminated="0" c:type="guint" fixed-size="8">
27958           <type name="uint"/>
27959         </array>
27960       </field>
27961       <field name="tentative_match">
27962         <type name="GLib.unichar" c:type="gunichar"/>
27963       </field>
27964       <field name="tentative_match_len">
27965         <type name="int" c:type="gint"/>
27966       </field>
27967       <field name="in_hex_sequence" bits="1">
27968         <type name="uint" c:type="guint"/>
27969       </field>
27970       <field name="modifiers_dropped" bits="1">
27971         <type name="uint" c:type="guint"/>
27972       </field>
27973     </class>
27974     <record name="IMContextSimpleClass"
27975             c:type="GtkIMContextSimpleClass"
27976             glib:is-gtype-struct-for="IMContextSimple">
27977       <field name="parent_class">
27978         <type name="IMContextClass" c:type="GtkIMContextClass"/>
27979       </field>
27980     </record>
27981     <class name="IMMulticontext"
27982            c:type="GtkIMMulticontext"
27983            parent="IMContext"
27984            glib:type-name="GtkIMMulticontext"
27985            glib:get-type="gtk_im_multicontext_get_type"
27986            glib:type-struct="IMMulticontextClass">
27987       <constructor name="new" c:identifier="gtk_im_multicontext_new">
27988         <doc xml:whitespace="preserve">Creates a new #GtkIMMulticontext.</doc>
27989         <return-value transfer-ownership="full">
27990           <doc xml:whitespace="preserve">a new #GtkIMMulticontext.</doc>
27991           <type name="IMMulticontext" c:type="GtkIMContext*"/>
27992         </return-value>
27993       </constructor>
27994       <method name="append_menuitems"
27995               c:identifier="gtk_im_multicontext_append_menuitems">
27996         <doc xml:whitespace="preserve">Add menuitems for various available input methods to a menu;
27997 the menuitems, when selected, will switch the input method
27998 for the context and the global default input method.</doc>
27999         <return-value transfer-ownership="none">
28000           <type name="none" c:type="void"/>
28001         </return-value>
28002         <parameters>
28003           <parameter name="menushell" transfer-ownership="none">
28004             <doc xml:whitespace="preserve">a #GtkMenuShell</doc>
28005             <type name="MenuShell" c:type="GtkMenuShell*"/>
28006           </parameter>
28007         </parameters>
28008       </method>
28009       <method name="get_context_id"
28010               c:identifier="gtk_im_multicontext_get_context_id"
28011               version="2.16">
28012         <doc xml:whitespace="preserve">Gets the id of the currently active slave of the @context.</doc>
28013         <return-value transfer-ownership="none">
28014           <doc xml:whitespace="preserve">the id of the currently active slave</doc>
28015           <type name="utf8" c:type="char*"/>
28016         </return-value>
28017       </method>
28018       <method name="set_context_id"
28019               c:identifier="gtk_im_multicontext_set_context_id"
28020               version="2.16">
28021         <doc xml:whitespace="preserve">Sets the context id for @context.
28022 This causes the currently active slave of @context to be
28023 replaced by the slave corresponding to the new context id.</doc>
28024         <return-value transfer-ownership="none">
28025           <type name="none" c:type="void"/>
28026         </return-value>
28027         <parameters>
28028           <parameter name="context_id" transfer-ownership="none">
28029             <doc xml:whitespace="preserve">the id to use</doc>
28030             <type name="utf8" c:type="char*"/>
28031           </parameter>
28032         </parameters>
28033       </method>
28034       <field name="object">
28035         <type name="IMContext" c:type="GtkIMContext"/>
28036       </field>
28037       <field name="slave">
28038         <type name="IMContext" c:type="GtkIMContext*"/>
28039       </field>
28040       <field name="priv">
28041         <type name="IMMulticontextPrivate" c:type="GtkIMMulticontextPrivate*"/>
28042       </field>
28043       <field name="context_id">
28044         <type name="utf8" c:type="gchar*"/>
28045       </field>
28046     </class>
28047     <record name="IMMulticontextClass"
28048             c:type="GtkIMMulticontextClass"
28049             glib:is-gtype-struct-for="IMMulticontext">
28050       <field name="parent_class">
28051         <type name="IMContextClass" c:type="GtkIMContextClass"/>
28052       </field>
28053       <field name="gtk_reserved1">
28054         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
28055           <return-value transfer-ownership="none">
28056             <type name="none" c:type="void"/>
28057           </return-value>
28058         </callback>
28059       </field>
28060       <field name="gtk_reserved2">
28061         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
28062           <return-value transfer-ownership="none">
28063             <type name="none" c:type="void"/>
28064           </return-value>
28065         </callback>
28066       </field>
28067       <field name="gtk_reserved3">
28068         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
28069           <return-value transfer-ownership="none">
28070             <type name="none" c:type="void"/>
28071           </return-value>
28072         </callback>
28073       </field>
28074       <field name="gtk_reserved4">
28075         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
28076           <return-value transfer-ownership="none">
28077             <type name="none" c:type="void"/>
28078           </return-value>
28079         </callback>
28080       </field>
28081     </record>
28082     <record name="IMMulticontextPrivate" c:type="GtkIMMulticontextPrivate">
28083     </record>
28084     <enumeration name="IMPreeditStyle"
28085                  glib:type-name="GtkIMPreeditStyle"
28086                  glib:get-type="gtk_im_preedit_style_get_type"
28087                  c:type="GtkIMPreeditStyle">
28088       <member name="nothing"
28089               value="0"
28090               c:identifier="GTK_IM_PREEDIT_NOTHING"
28091               glib:nick="nothing"/>
28092       <member name="callback"
28093               value="1"
28094               c:identifier="GTK_IM_PREEDIT_CALLBACK"
28095               glib:nick="callback"/>
28096       <member name="none"
28097               value="2"
28098               c:identifier="GTK_IM_PREEDIT_NONE"
28099               glib:nick="none"/>
28100     </enumeration>
28101     <enumeration name="IMStatusStyle"
28102                  glib:type-name="GtkIMStatusStyle"
28103                  glib:get-type="gtk_im_status_style_get_type"
28104                  c:type="GtkIMStatusStyle">
28105       <member name="nothing"
28106               value="0"
28107               c:identifier="GTK_IM_STATUS_NOTHING"
28108               glib:nick="nothing"/>
28109       <member name="callback"
28110               value="1"
28111               c:identifier="GTK_IM_STATUS_CALLBACK"
28112               glib:nick="callback"/>
28113       <member name="none"
28114               value="2"
28115               c:identifier="GTK_IM_STATUS_NONE"
28116               glib:nick="none"/>
28117     </enumeration>
28118     <constant name="INPUT_ERROR" value="-1">
28119       <type name="int"/>
28120     </constant>
28121     <constant name="INTERFACE_AGE" value="0">
28122       <type name="int"/>
28123     </constant>
28124     <class name="IconFactory"
28125            c:type="GtkIconFactory"
28126            parent="GObject.Object"
28127            glib:type-name="GtkIconFactory"
28128            glib:get-type="gtk_icon_factory_get_type"
28129            glib:type-struct="IconFactoryClass">
28130       <implements name="Buildable"/>
28131       <constructor name="new" c:identifier="gtk_icon_factory_new">
28132         <doc xml:whitespace="preserve">Creates a new #GtkIconFactory. An icon factory manages a collection
28133 of #GtkIconSet&lt;!-- --&gt;s; a #GtkIconSet manages a set of variants of a
28134 particular icon (i.e. a #GtkIconSet contains variants for different
28135 sizes and widget states). Icons in an icon factory are named by a
28136 stock ID, which is a simple string identifying the icon. Each
28137 #GtkStyle has a list of #GtkIconFactory&lt;!-- --&gt;s derived from the current
28138 theme; those icon factories are consulted first when searching for
28139 an icon. If the theme doesn't set a particular icon, GTK+ looks for
28140 the icon in a list of default icon factories, maintained by
28141 gtk_icon_factory_add_default() and
28142 gtk_icon_factory_remove_default(). Applications with icons should
28143 add a default icon factory with their icons, which will allow
28144 themes to override the icons for the application.</doc>
28145         <return-value transfer-ownership="full">
28146           <doc xml:whitespace="preserve">a new #GtkIconFactory</doc>
28147           <type name="IconFactory" c:type="GtkIconFactory*"/>
28148         </return-value>
28149       </constructor>
28150       <function name="lookup_default"
28151                 c:identifier="gtk_icon_factory_lookup_default">
28152         <doc xml:whitespace="preserve">Looks for an icon in the list of default icon factories.  For
28153 display to the user, you should use gtk_style_lookup_icon_set() on
28154 the #GtkStyle for the widget that will display the icon, instead of
28155 using this function directly, so that themes are taken into
28156 account.</doc>
28157         <return-value transfer-ownership="full">
28158           <doc xml:whitespace="preserve">a #GtkIconSet, or %NULL</doc>
28159           <type name="IconSet" c:type="GtkIconSet*"/>
28160         </return-value>
28161         <parameters>
28162           <parameter name="stock_id" transfer-ownership="none">
28163             <doc xml:whitespace="preserve">an icon name</doc>
28164             <type name="utf8" c:type="gchar*"/>
28165           </parameter>
28166         </parameters>
28167       </function>
28168       <method name="add" c:identifier="gtk_icon_factory_add">
28169         <doc xml:whitespace="preserve">Adds the given @icon_set to the icon factory, under the name
28170 e.g. "myapp-whatever-icon".  Normally applications create a
28171 #GtkIconFactory, then add it to the list of default factories with
28172 gtk_icon_factory_add_default(). Then they pass the @stock_id to
28173 widgets such as #GtkImage to display the icon. Themes can provide
28174 an icon with the same name (such as "myapp-whatever-icon") to
28175 override your application's default icons. If an icon already
28176 existed in @factory for @stock_id, it is unreferenced and replaced
28177 with the new @icon_set.</doc>
28178         <return-value transfer-ownership="none">
28179           <type name="none" c:type="void"/>
28180         </return-value>
28181         <parameters>
28182           <parameter name="stock_id" transfer-ownership="none">
28183             <doc xml:whitespace="preserve">icon name</doc>
28184             <type name="utf8" c:type="gchar*"/>
28185           </parameter>
28186           <parameter name="icon_set" transfer-ownership="none">
28187             <doc xml:whitespace="preserve">icon set</doc>
28188             <type name="IconSet" c:type="GtkIconSet*"/>
28189           </parameter>
28190         </parameters>
28191       </method>
28192       <method name="lookup" c:identifier="gtk_icon_factory_lookup">
28193         <doc xml:whitespace="preserve">Looks up @stock_id in the icon factory, returning an icon set
28194 if found, otherwise %NULL. For display to the user, you should
28195 use gtk_style_lookup_icon_set() on the #GtkStyle for the
28196 widget that will display the icon, instead of using this
28197 function directly, so that themes are taken into account.</doc>
28198         <return-value transfer-ownership="full">
28199           <doc xml:whitespace="preserve">icon set of @stock_id.</doc>
28200           <type name="IconSet" c:type="GtkIconSet*"/>
28201         </return-value>
28202         <parameters>
28203           <parameter name="stock_id" transfer-ownership="none">
28204             <doc xml:whitespace="preserve">an icon name</doc>
28205             <type name="utf8" c:type="gchar*"/>
28206           </parameter>
28207         </parameters>
28208       </method>
28209       <method name="add_default" c:identifier="gtk_icon_factory_add_default">
28210         <doc xml:whitespace="preserve">Adds an icon factory to the list of icon factories searched by
28211 gtk_style_lookup_icon_set(). This means that, for example,
28212 gtk_image_new_from_stock() will be able to find icons in @factory.
28213 There will normally be an icon factory added for each library or
28214 application that comes with icons. The default icon factories
28215 can be overridden by themes.</doc>
28216         <return-value transfer-ownership="none">
28217           <type name="none" c:type="void"/>
28218         </return-value>
28219       </method>
28220       <method name="remove_default"
28221               c:identifier="gtk_icon_factory_remove_default">
28222         <doc xml:whitespace="preserve">Removes an icon factory from the list of default icon
28223 factories. Not normally used; you might use it for a library that
28224 can be unloaded or shut down.</doc>
28225         <return-value transfer-ownership="none">
28226           <type name="none" c:type="void"/>
28227         </return-value>
28228       </method>
28229       <field name="parent_instance">
28230         <type name="GObject.Object" c:type="GObject"/>
28231       </field>
28232       <field name="icons">
28233         <type name="GLib.HashTable" c:type="GHashTable*"/>
28234       </field>
28235     </class>
28236     <record name="IconFactoryClass"
28237             c:type="GtkIconFactoryClass"
28238             glib:is-gtype-struct-for="IconFactory">
28239       <field name="parent_class">
28240         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
28241       </field>
28242       <field name="gtk_reserved1">
28243         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
28244           <return-value transfer-ownership="none">
28245             <type name="none" c:type="void"/>
28246           </return-value>
28247         </callback>
28248       </field>
28249       <field name="gtk_reserved2">
28250         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
28251           <return-value transfer-ownership="none">
28252             <type name="none" c:type="void"/>
28253           </return-value>
28254         </callback>
28255       </field>
28256       <field name="gtk_reserved3">
28257         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
28258           <return-value transfer-ownership="none">
28259             <type name="none" c:type="void"/>
28260           </return-value>
28261         </callback>
28262       </field>
28263       <field name="gtk_reserved4">
28264         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
28265           <return-value transfer-ownership="none">
28266             <type name="none" c:type="void"/>
28267           </return-value>
28268         </callback>
28269       </field>
28270     </record>
28271     <record name="IconInfo"
28272             c:type="GtkIconInfo"
28273             glib:type-name="GtkIconInfo"
28274             glib:get-type="gtk_icon_info_get_type">
28275       <constructor name="new_for_pixbuf"
28276                    c:identifier="gtk_icon_info_new_for_pixbuf"
28277                    version="2.14">
28278         <doc xml:whitespace="preserve">Creates a #GtkIconInfo for a #GdkPixbuf.</doc>
28279         <return-value transfer-ownership="full">
28280           <doc xml:whitespace="preserve">a #GtkIconInfo</doc>
28281           <type name="IconInfo" c:type="GtkIconInfo*"/>
28282         </return-value>
28283         <parameters>
28284           <parameter name="icon_theme" transfer-ownership="none">
28285             <doc xml:whitespace="preserve">a #GtkIconTheme</doc>
28286             <type name="IconTheme" c:type="GtkIconTheme*"/>
28287           </parameter>
28288           <parameter name="pixbuf" transfer-ownership="none">
28289             <doc xml:whitespace="preserve">the pixbuf to wrap in a #GtkIconInfo</doc>
28290             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
28291           </parameter>
28292         </parameters>
28293       </constructor>
28294       <method name="copy" c:identifier="gtk_icon_info_copy" version="2.4">
28295         <doc xml:whitespace="preserve">Make a copy of a #GtkIconInfo.</doc>
28296         <return-value transfer-ownership="full">
28297           <doc xml:whitespace="preserve">the new GtkIconInfo</doc>
28298           <type name="IconInfo" c:type="GtkIconInfo*"/>
28299         </return-value>
28300       </method>
28301       <method name="free" c:identifier="gtk_icon_info_free" version="2.4">
28302         <doc xml:whitespace="preserve">Free a #GtkIconInfo and associated information</doc>
28303         <return-value transfer-ownership="none">
28304           <type name="none" c:type="void"/>
28305         </return-value>
28306       </method>
28307       <method name="get_base_size"
28308               c:identifier="gtk_icon_info_get_base_size"
28309               version="2.4">
28310         <doc xml:whitespace="preserve">Gets the base size for the icon. The base size
28311 is a size for the icon that was specified by
28312 the icon theme creator. This may be different
28313 than the actual size of image; an example of
28314 this is small emblem icons that can be attached
28315 to a larger icon. These icons will be given
28316 the same base size as the larger icons to which
28317 they are attached.
28318 size is known for the icon.</doc>
28319         <return-value transfer-ownership="none">
28320           <doc xml:whitespace="preserve">the base size, or 0, if no base</doc>
28321           <type name="int" c:type="gint"/>
28322         </return-value>
28323       </method>
28324       <method name="get_filename"
28325               c:identifier="gtk_icon_info_get_filename"
28326               version="2.4">
28327         <doc xml:whitespace="preserve">Gets the filename for the icon. If the
28328 %GTK_ICON_LOOKUP_USE_BUILTIN flag was passed
28329 to gtk_icon_theme_lookup_icon(), there may be
28330 no filename if a builtin icon is returned; in this
28331 case, you should use gtk_icon_info_get_builtin_pixbuf().
28332 if gtk_icon_info_get_builtin_pixbuf() should
28333 be used instead. The return value is owned by
28334 GTK+ and should not be modified or freed.</doc>
28335         <return-value transfer-ownership="none">
28336           <doc xml:whitespace="preserve">the filename for the icon, or %NULL</doc>
28337           <type name="utf8" c:type="gchar*"/>
28338         </return-value>
28339       </method>
28340       <method name="get_builtin_pixbuf"
28341               c:identifier="gtk_icon_info_get_builtin_pixbuf"
28342               version="2.4">
28343         <doc xml:whitespace="preserve">Gets the built-in image for this icon, if any. To allow
28344 GTK+ to use built in icon images, you must pass the
28345 %GTK_ICON_LOOKUP_USE_BUILTIN to
28346 gtk_icon_theme_lookup_icon().
28347 extra reference is added to the returned pixbuf, so if
28348 you want to keep it around, you must use g_object_ref().
28349 The returned image must not be modified.</doc>
28350         <return-value transfer-ownership="none">
28351           <doc xml:whitespace="preserve">the built-in image pixbuf, or %NULL. No</doc>
28352           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
28353         </return-value>
28354       </method>
28355       <method name="load_icon"
28356               c:identifier="gtk_icon_info_load_icon"
28357               version="2.4"
28358               throws="1">
28359         <doc xml:whitespace="preserve">Renders an icon previously looked up in an icon theme using
28360 gtk_icon_theme_lookup_icon(); the size will be based on the size
28361 passed to gtk_icon_theme_lookup_icon(). Note that the resulting
28362 pixbuf may not be exactly this size; an icon theme may have icons
28363 that differ slightly from their nominal sizes, and in addition GTK+
28364 will avoid scaling icons that it considers sufficiently close to the
28365 requested size or for which the source image would have to be scaled
28366 up too far. (This maintains sharpness.). This behaviour can be changed
28367 by passing the %GTK_ICON_LOOKUP_FORCE_SIZE flag when obtaining
28368 the #GtkIconInfo. If this flag has been specified, the pixbuf
28369 returned by this function will be scaled to the exact size. 
28370 or a new reference to an internal icon, so you must not modify
28371 the icon. Use g_object_unref() to release your reference to the
28372 icon.</doc>
28373         <return-value transfer-ownership="full">
28374           <doc xml:whitespace="preserve">the rendered icon; this may be a newly created icon</doc>
28375           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
28376         </return-value>
28377       </method>
28378       <method name="set_raw_coordinates"
28379               c:identifier="gtk_icon_info_set_raw_coordinates"
28380               version="2.4">
28381         <doc xml:whitespace="preserve">Sets whether the coordinates returned by gtk_icon_info_get_embedded_rect()
28382 and gtk_icon_info_get_attach_points() should be returned in their
28383 original form as specified in the icon theme, instead of scaled
28384 appropriately for the pixbuf returned by gtk_icon_info_load_icon().
28385 Raw coordinates are somewhat strange; they are specified to be with
28386 respect to the unscaled pixmap for PNG and XPM icons, but for SVG
28387 icons, they are in a 1000x1000 coordinate space that is scaled
28388 to the final size of the icon.  You can determine if the icon is an SVG
28389 icon by using gtk_icon_info_get_filename(), and seeing if it is non-%NULL
28390 and ends in '.svg'.
28391 This function is provided primarily to allow compatibility wrappers
28392 for older API's, and is not expected to be useful for applications.</doc>
28393         <return-value transfer-ownership="none">
28394           <type name="none" c:type="void"/>
28395         </return-value>
28396         <parameters>
28397           <parameter name="raw_coordinates" transfer-ownership="none">
28398             <doc xml:whitespace="preserve">whether the coordinates of embedded rectangles and attached points should be returned in their original (unscaled) form.</doc>
28399             <type name="boolean" c:type="gboolean"/>
28400           </parameter>
28401         </parameters>
28402       </method>
28403       <method name="get_embedded_rect"
28404               c:identifier="gtk_icon_info_get_embedded_rect"
28405               version="2.4">
28406         <doc xml:whitespace="preserve">Gets the coordinates of a rectangle within the icon
28407 that can be used for display of information such
28408 as a preview of the contents of a text file.
28409 See gtk_icon_info_set_raw_coordinates() for further
28410 information about the coordinate system.</doc>
28411         <return-value transfer-ownership="none">
28412           <doc xml:whitespace="preserve">%TRUE if the icon has an embedded rectangle</doc>
28413           <type name="boolean" c:type="gboolean"/>
28414         </return-value>
28415         <parameters>
28416           <parameter name="rectangle" transfer-ownership="none">
28417             <doc xml:whitespace="preserve">#GdkRectangle in which to store embedded rectangle coordinates; coordinates are only stored when this function returns %TRUE.</doc>
28418             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
28419           </parameter>
28420         </parameters>
28421       </method>
28422       <method name="get_attach_points"
28423               c:identifier="gtk_icon_info_get_attach_points"
28424               version="2.4">
28425         <doc xml:whitespace="preserve">Fetches the set of attach points for an icon. An attach point
28426 is a location in the icon that can be used as anchor points for attaching
28427 emblems or overlays to the icon.</doc>
28428         <return-value transfer-ownership="none">
28429           <doc xml:whitespace="preserve">%TRUE if there are any attach points for the icon.</doc>
28430           <type name="boolean" c:type="gboolean"/>
28431         </return-value>
28432         <parameters>
28433           <parameter name="points"
28434                      direction="out"
28435                      caller-allocates="0"
28436                      transfer-ownership="full"
28437                      allow-none="1">
28438             <doc xml:whitespace="preserve">location to store pointer to an array of points, or %NULL free the array of points with g_free().</doc>
28439             <array length="2" c:type="GdkPoint**">
28440               <type name="Gdk.Point"/>
28441             </array>
28442           </parameter>
28443           <parameter name="n_points"
28444                      direction="out"
28445                      caller-allocates="0"
28446                      transfer-ownership="full"
28447                      allow-none="1">
28448             <doc xml:whitespace="preserve">location to store the number of points in @points, or %NULL</doc>
28449             <type name="int" c:type="gint*"/>
28450           </parameter>
28451         </parameters>
28452       </method>
28453       <method name="get_display_name"
28454               c:identifier="gtk_icon_info_get_display_name"
28455               version="2.4">
28456         <doc xml:whitespace="preserve">Gets the display name for an icon. A display name is a
28457 string to be used in place of the icon name in a user
28458 visible context like a list of icons.
28459 the icon doesn't have a specified display name. This value
28460 is owned @icon_info and must not be modified or free.</doc>
28461         <return-value transfer-ownership="none">
28462           <doc xml:whitespace="preserve">the display name for the icon or %NULL, if</doc>
28463           <type name="utf8" c:type="gchar*"/>
28464         </return-value>
28465       </method>
28466     </record>
28467     <bitfield name="IconLookupFlags"
28468               glib:type-name="GtkIconLookupFlags"
28469               glib:get-type="gtk_icon_lookup_flags_get_type"
28470               c:type="GtkIconLookupFlags">
28471       <doc xml:whitespace="preserve">Used to specify options for gtk_icon_theme_lookup_icon()</doc>
28472       <member name="no_svg"
28473               value="1"
28474               c:identifier="GTK_ICON_LOOKUP_NO_SVG"
28475               glib:nick="no-svg"/>
28476       <member name="force_svg"
28477               value="2"
28478               c:identifier="GTK_ICON_LOOKUP_FORCE_SVG"
28479               glib:nick="force-svg"/>
28480       <member name="use_builtin"
28481               value="4"
28482               c:identifier="GTK_ICON_LOOKUP_USE_BUILTIN"
28483               glib:nick="use-builtin"/>
28484       <member name="generic_fallback"
28485               value="8"
28486               c:identifier="GTK_ICON_LOOKUP_GENERIC_FALLBACK"
28487               glib:nick="generic-fallback"/>
28488       <member name="force_size"
28489               value="16"
28490               c:identifier="GTK_ICON_LOOKUP_FORCE_SIZE"
28491               glib:nick="force-size"/>
28492     </bitfield>
28493     <record name="IconSet"
28494             c:type="GtkIconSet"
28495             glib:type-name="GtkIconSet"
28496             glib:get-type="gtk_icon_set_get_type">
28497       <constructor name="new" c:identifier="gtk_icon_set_new">
28498         <doc xml:whitespace="preserve">Creates a new #GtkIconSet. A #GtkIconSet represents a single icon
28499 in various sizes and widget states. It can provide a #GdkPixbuf
28500 for a given size and state on request, and automatically caches
28501 some of the rendered #GdkPixbuf objects.
28502 Normally you would use gtk_widget_render_icon() instead of
28503 using #GtkIconSet directly. The one case where you'd use
28504 #GtkIconSet is to create application-specific icon sets to place in
28505 a #GtkIconFactory.</doc>
28506         <return-value transfer-ownership="full">
28507           <doc xml:whitespace="preserve">a new #GtkIconSet</doc>
28508           <type name="IconSet" c:type="GtkIconSet*"/>
28509         </return-value>
28510       </constructor>
28511       <constructor name="new_from_pixbuf"
28512                    c:identifier="gtk_icon_set_new_from_pixbuf">
28513         <doc xml:whitespace="preserve">Creates a new #GtkIconSet with @pixbuf as the default/fallback
28514 source image. If you don't add any additional #GtkIconSource to the
28515 icon set, all variants of the icon will be created from @pixbuf,
28516 using scaling, pixelation, etc. as required to adjust the icon size
28517 or make the icon look insensitive/prelighted.</doc>
28518         <return-value transfer-ownership="full">
28519           <doc xml:whitespace="preserve">a new #GtkIconSet</doc>
28520           <type name="IconSet" c:type="GtkIconSet*"/>
28521         </return-value>
28522         <parameters>
28523           <parameter name="pixbuf" transfer-ownership="none">
28524             <doc xml:whitespace="preserve">a #GdkPixbuf</doc>
28525             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
28526           </parameter>
28527         </parameters>
28528       </constructor>
28529       <method name="ref" c:identifier="gtk_icon_set_ref">
28530         <doc xml:whitespace="preserve">Increments the reference count on @icon_set.</doc>
28531         <return-value transfer-ownership="full">
28532           <doc xml:whitespace="preserve">@icon_set.</doc>
28533           <type name="IconSet" c:type="GtkIconSet*"/>
28534         </return-value>
28535       </method>
28536       <method name="unref" c:identifier="gtk_icon_set_unref">
28537         <doc xml:whitespace="preserve">Decrements the reference count on @icon_set, and frees memory
28538 if the reference count reaches 0.</doc>
28539         <return-value transfer-ownership="none">
28540           <type name="none" c:type="void"/>
28541         </return-value>
28542       </method>
28543       <method name="copy" c:identifier="gtk_icon_set_copy">
28544         <doc xml:whitespace="preserve">Copies @icon_set by value.</doc>
28545         <return-value transfer-ownership="full">
28546           <doc xml:whitespace="preserve">a new #GtkIconSet identical to the first.</doc>
28547           <type name="IconSet" c:type="GtkIconSet*"/>
28548         </return-value>
28549       </method>
28550       <method name="render_icon" c:identifier="gtk_icon_set_render_icon">
28551         <doc xml:whitespace="preserve">Renders an icon using gtk_style_render_icon(). In most cases,
28552 gtk_widget_render_icon() is better, since it automatically provides
28553 most of the arguments from the current widget settings.  This
28554 function never returns %NULL; if the icon can't be rendered
28555 (perhaps because an image file fails to load), a default "missing
28556 image" icon will be returned instead.</doc>
28557         <return-value transfer-ownership="full">
28558           <doc xml:whitespace="preserve">a #GdkPixbuf to be displayed</doc>
28559           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
28560         </return-value>
28561         <parameters>
28562           <parameter name="style" transfer-ownership="none" allow-none="1">
28563             <doc xml:whitespace="preserve">a #GtkStyle associated with @widget, or %NULL</doc>
28564             <type name="Style" c:type="GtkStyle*"/>
28565           </parameter>
28566           <parameter name="direction" transfer-ownership="none">
28567             <doc xml:whitespace="preserve">text direction</doc>
28568             <type name="TextDirection" c:type="GtkTextDirection"/>
28569           </parameter>
28570           <parameter name="state" transfer-ownership="none">
28571             <doc xml:whitespace="preserve">widget state</doc>
28572             <type name="StateType" c:type="GtkStateType"/>
28573           </parameter>
28574           <parameter name="size" transfer-ownership="none">
28575             <doc xml:whitespace="preserve">icon size. A size of (GtkIconSize)-1 means render at the size of the source and don't scale.</doc>
28576             <type name="int" c:type="GtkIconSize"/>
28577           </parameter>
28578           <parameter name="widget" transfer-ownership="none" allow-none="1">
28579             <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>
28580             <type name="Widget" c:type="GtkWidget*"/>
28581           </parameter>
28582           <parameter name="detail" transfer-ownership="none" allow-none="1">
28583             <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>
28584             <type name="utf8" c:type="char*"/>
28585           </parameter>
28586         </parameters>
28587       </method>
28588       <method name="add_source" c:identifier="gtk_icon_set_add_source">
28589         <doc xml:whitespace="preserve">Icon sets have a list of #GtkIconSource, which they use as base
28590 icons for rendering icons in different states and sizes. Icons are
28591 scaled, made to look insensitive, etc. in
28592 gtk_icon_set_render_icon(), but #GtkIconSet needs base images to
28593 work with. The base images and when to use them are described by
28594 a #GtkIconSource.
28595 This function copies @source, so you can reuse the same source immediately
28596 without affecting the icon set.
28597 to Previous Page" icon might point in a different direction in
28598 Hebrew and in English; it might look different when insensitive;
28599 and it might change size depending on toolbar mode (small/large
28600 icons). So a single icon set would contain all those variants of
28601 the icon, and you might add a separate source for each one.
28602 You should nearly always add a "default" icon source with all
28603 fields wildcarded, which will be used as a fallback if no more
28604 specific source matches. #GtkIconSet always prefers more specific
28605 icon sources to more generic icon sources. The order in which you
28606 add the sources to the icon set does not matter.
28607 gtk_icon_set_new_from_pixbuf() creates a new icon set with a
28608 default icon source based on the given pixbuf.</doc>
28609         <return-value transfer-ownership="none">
28610           <type name="none" c:type="void"/>
28611         </return-value>
28612         <parameters>
28613           <parameter name="source" transfer-ownership="none">
28614             <doc xml:whitespace="preserve">a #GtkIconSource</doc>
28615             <type name="IconSource" c:type="GtkIconSource*"/>
28616           </parameter>
28617         </parameters>
28618       </method>
28619       <method name="get_sizes" c:identifier="gtk_icon_set_get_sizes">
28620         <doc xml:whitespace="preserve">Obtains a list of icon sizes this icon set can render. The returned
28621 array must be freed with g_free().</doc>
28622         <return-value transfer-ownership="none">
28623           <type name="none" c:type="void"/>
28624         </return-value>
28625         <parameters>
28626           <parameter name="sizes"
28627                      direction="out"
28628                      caller-allocates="0"
28629                      transfer-ownership="full">
28630             <doc xml:whitespace="preserve">return location for array of sizes</doc>
28631             <array length="2" c:type="GtkIconSize**">
28632               <type name="IconSize"/>
28633             </array>
28634           </parameter>
28635           <parameter name="n_sizes"
28636                      direction="out"
28637                      caller-allocates="0"
28638                      transfer-ownership="full">
28639             <doc xml:whitespace="preserve">location to store number of elements in returned array</doc>
28640             <type name="int" c:type="gint*"/>
28641           </parameter>
28642         </parameters>
28643       </method>
28644     </record>
28645     <enumeration name="IconSize"
28646                  glib:type-name="GtkIconSize"
28647                  glib:get-type="gtk_icon_size_get_type"
28648                  c:type="GtkIconSize">
28649       <member name="invalid"
28650               value="0"
28651               c:identifier="GTK_ICON_SIZE_INVALID"
28652               glib:nick="invalid"/>
28653       <member name="menu"
28654               value="1"
28655               c:identifier="GTK_ICON_SIZE_MENU"
28656               glib:nick="menu"/>
28657       <member name="small_toolbar"
28658               value="2"
28659               c:identifier="GTK_ICON_SIZE_SMALL_TOOLBAR"
28660               glib:nick="small-toolbar"/>
28661       <member name="large_toolbar"
28662               value="3"
28663               c:identifier="GTK_ICON_SIZE_LARGE_TOOLBAR"
28664               glib:nick="large-toolbar"/>
28665       <member name="button"
28666               value="4"
28667               c:identifier="GTK_ICON_SIZE_BUTTON"
28668               glib:nick="button"/>
28669       <member name="dnd"
28670               value="5"
28671               c:identifier="GTK_ICON_SIZE_DND"
28672               glib:nick="dnd"/>
28673       <member name="dialog"
28674               value="6"
28675               c:identifier="GTK_ICON_SIZE_DIALOG"
28676               glib:nick="dialog"/>
28677     </enumeration>
28678     <record name="IconSource"
28679             c:type="GtkIconSource"
28680             glib:type-name="GtkIconSource"
28681             glib:get-type="gtk_icon_source_get_type">
28682       <constructor name="new" c:identifier="gtk_icon_source_new">
28683         <doc xml:whitespace="preserve">Creates a new #GtkIconSource. A #GtkIconSource contains a #GdkPixbuf (or
28684 image filename) that serves as the base image for one or more of the
28685 icons in a #GtkIconSet, along with a specification for which icons in the
28686 icon set will be based on that pixbuf or image file. An icon set contains
28687 a set of icons that represent "the same" logical concept in different states,
28688 different global text directions, and different sizes.
28689 So for example a web browser's "Back to Previous Page" icon might
28690 point in a different direction in Hebrew and in English; it might
28691 look different when insensitive; and it might change size depending
28692 on toolbar mode (small/large icons). So a single icon set would
28693 contain all those variants of the icon. #GtkIconSet contains a list
28694 of #GtkIconSource from which it can derive specific icon variants in
28695 the set.
28696 In the simplest case, #GtkIconSet contains one source pixbuf from
28697 which it derives all variants. The convenience function
28698 gtk_icon_set_new_from_pixbuf() handles this case; if you only have
28699 one source pixbuf, just use that function.
28700 If you want to use a different base pixbuf for different icon
28701 variants, you create multiple icon sources, mark which variants
28702 they'll be used to create, and add them to the icon set with
28703 gtk_icon_set_add_source().
28704 By default, the icon source has all parameters wildcarded. That is,
28705 the icon source will be used as the base icon for any desired text
28706 direction, widget state, or icon size.</doc>
28707         <return-value transfer-ownership="full">
28708           <doc xml:whitespace="preserve">a new #GtkIconSource</doc>
28709           <type name="IconSource" c:type="GtkIconSource*"/>
28710         </return-value>
28711       </constructor>
28712       <method name="copy" c:identifier="gtk_icon_source_copy">
28713         <doc xml:whitespace="preserve">Creates a copy of @source; mostly useful for language bindings.</doc>
28714         <return-value transfer-ownership="full">
28715           <doc xml:whitespace="preserve">a new #GtkIconSource</doc>
28716           <type name="IconSource" c:type="GtkIconSource*"/>
28717         </return-value>
28718       </method>
28719       <method name="free" c:identifier="gtk_icon_source_free">
28720         <doc xml:whitespace="preserve">Frees a dynamically-allocated icon source, along with its
28721 filename, size, and pixbuf fields if those are not %NULL.</doc>
28722         <return-value transfer-ownership="none">
28723           <type name="none" c:type="void"/>
28724         </return-value>
28725       </method>
28726       <method name="set_filename" c:identifier="gtk_icon_source_set_filename">
28727         <doc xml:whitespace="preserve">Sets the name of an image file to use as a base image when creating
28728 icon variants for #GtkIconSet. The filename must be absolute.</doc>
28729         <return-value transfer-ownership="none">
28730           <type name="none" c:type="void"/>
28731         </return-value>
28732         <parameters>
28733           <parameter name="filename" transfer-ownership="none">
28734             <doc xml:whitespace="preserve">image file to use</doc>
28735             <type name="utf8" c:type="gchar*"/>
28736           </parameter>
28737         </parameters>
28738       </method>
28739       <method name="set_icon_name"
28740               c:identifier="gtk_icon_source_set_icon_name">
28741         <return-value transfer-ownership="none">
28742           <type name="none" c:type="void"/>
28743         </return-value>
28744         <parameters>
28745           <parameter name="icon_name" transfer-ownership="none">
28746             <type name="utf8" c:type="gchar*"/>
28747           </parameter>
28748         </parameters>
28749       </method>
28750       <method name="set_pixbuf" c:identifier="gtk_icon_source_set_pixbuf">
28751         <doc xml:whitespace="preserve">Sets a pixbuf to use as a base image when creating icon variants
28752 for #GtkIconSet.</doc>
28753         <return-value transfer-ownership="none">
28754           <type name="none" c:type="void"/>
28755         </return-value>
28756         <parameters>
28757           <parameter name="pixbuf" transfer-ownership="none">
28758             <doc xml:whitespace="preserve">pixbuf to use as a source</doc>
28759             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
28760           </parameter>
28761         </parameters>
28762       </method>
28763       <method name="get_filename" c:identifier="gtk_icon_source_get_filename">
28764         <doc xml:whitespace="preserve">Retrieves the source filename, or %NULL if none is set. The
28765 filename is not a copy, and should not be modified or expected to
28766 persist beyond the lifetime of the icon source.
28767 or freed.</doc>
28768         <return-value transfer-ownership="none">
28769           <doc xml:whitespace="preserve">image filename. This string must not be modified</doc>
28770           <type name="utf8" c:type="gchar*"/>
28771         </return-value>
28772       </method>
28773       <method name="get_icon_name"
28774               c:identifier="gtk_icon_source_get_icon_name">
28775         <doc xml:whitespace="preserve">Retrieves the source icon name, or %NULL if none is set. The
28776 icon_name is not a copy, and should not be modified or expected to
28777 persist beyond the lifetime of the icon source.</doc>
28778         <return-value transfer-ownership="none">
28779           <doc xml:whitespace="preserve">icon name. This string must not be modified or freed.</doc>
28780           <type name="utf8" c:type="gchar*"/>
28781         </return-value>
28782       </method>
28783       <method name="get_pixbuf" c:identifier="gtk_icon_source_get_pixbuf">
28784         <doc xml:whitespace="preserve">Retrieves the source pixbuf, or %NULL if none is set.
28785 In addition, if a filename source is in use, this
28786 function in some cases will return the pixbuf from
28787 loaded from the filename. This is, for example, true
28788 for the GtkIconSource passed to the GtkStyle::render_icon()
28789 virtual function. The reference count on the pixbuf is
28790 not incremented.</doc>
28791         <return-value transfer-ownership="full">
28792           <doc xml:whitespace="preserve">source pixbuf</doc>
28793           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
28794         </return-value>
28795       </method>
28796       <method name="set_direction_wildcarded"
28797               c:identifier="gtk_icon_source_set_direction_wildcarded">
28798         <doc xml:whitespace="preserve">If the text direction is wildcarded, this source can be used
28799 as the base image for an icon in any #GtkTextDirection.
28800 If the text direction is not wildcarded, then the
28801 text direction the icon source applies to should be set
28802 with gtk_icon_source_set_direction(), and the icon source
28803 will only be used with that text direction.
28804 #GtkIconSet prefers non-wildcarded sources (exact matches) over
28805 wildcarded sources, and will use an exact match when possible.</doc>
28806         <return-value transfer-ownership="none">
28807           <type name="none" c:type="void"/>
28808         </return-value>
28809         <parameters>
28810           <parameter name="setting" transfer-ownership="none">
28811             <doc xml:whitespace="preserve">%TRUE to wildcard the text direction</doc>
28812             <type name="boolean" c:type="gboolean"/>
28813           </parameter>
28814         </parameters>
28815       </method>
28816       <method name="set_state_wildcarded"
28817               c:identifier="gtk_icon_source_set_state_wildcarded">
28818         <doc xml:whitespace="preserve">If the widget state is wildcarded, this source can be used as the
28819 base image for an icon in any #GtkStateType.  If the widget state
28820 is not wildcarded, then the state the source applies to should be
28821 set with gtk_icon_source_set_state() and the icon source will
28822 only be used with that specific state.
28823 #GtkIconSet prefers non-wildcarded sources (exact matches) over
28824 wildcarded sources, and will use an exact match when possible.
28825 #GtkIconSet will normally transform wildcarded source images to
28826 produce an appropriate icon for a given state, for example
28827 lightening an image on prelight, but will not modify source images
28828 that match exactly.</doc>
28829         <return-value transfer-ownership="none">
28830           <type name="none" c:type="void"/>
28831         </return-value>
28832         <parameters>
28833           <parameter name="setting" transfer-ownership="none">
28834             <doc xml:whitespace="preserve">%TRUE to wildcard the widget state</doc>
28835             <type name="boolean" c:type="gboolean"/>
28836           </parameter>
28837         </parameters>
28838       </method>
28839       <method name="set_size_wildcarded"
28840               c:identifier="gtk_icon_source_set_size_wildcarded">
28841         <doc xml:whitespace="preserve">If the icon size is wildcarded, this source can be used as the base
28842 image for an icon of any size.  If the size is not wildcarded, then
28843 the size the source applies to should be set with
28844 gtk_icon_source_set_size() and the icon source will only be used
28845 with that specific size.
28846 #GtkIconSet prefers non-wildcarded sources (exact matches) over
28847 wildcarded sources, and will use an exact match when possible.
28848 #GtkIconSet will normally scale wildcarded source images to produce
28849 an appropriate icon at a given size, but will not change the size
28850 of source images that match exactly.</doc>
28851         <return-value transfer-ownership="none">
28852           <type name="none" c:type="void"/>
28853         </return-value>
28854         <parameters>
28855           <parameter name="setting" transfer-ownership="none">
28856             <doc xml:whitespace="preserve">%TRUE to wildcard the widget state</doc>
28857             <type name="boolean" c:type="gboolean"/>
28858           </parameter>
28859         </parameters>
28860       </method>
28861       <method name="get_size_wildcarded"
28862               c:identifier="gtk_icon_source_get_size_wildcarded">
28863         <doc xml:whitespace="preserve">Gets the value set by gtk_icon_source_set_size_wildcarded().</doc>
28864         <return-value transfer-ownership="none">
28865           <doc xml:whitespace="preserve">%TRUE if this icon source is a base for any icon size variant</doc>
28866           <type name="boolean" c:type="gboolean"/>
28867         </return-value>
28868       </method>
28869       <method name="get_state_wildcarded"
28870               c:identifier="gtk_icon_source_get_state_wildcarded">
28871         <doc xml:whitespace="preserve">Gets the value set by gtk_icon_source_set_state_wildcarded().</doc>
28872         <return-value transfer-ownership="none">
28873           <doc xml:whitespace="preserve">%TRUE if this icon source is a base for any widget state variant</doc>
28874           <type name="boolean" c:type="gboolean"/>
28875         </return-value>
28876       </method>
28877       <method name="get_direction_wildcarded"
28878               c:identifier="gtk_icon_source_get_direction_wildcarded">
28879         <doc xml:whitespace="preserve">Gets the value set by gtk_icon_source_set_direction_wildcarded().</doc>
28880         <return-value transfer-ownership="none">
28881           <doc xml:whitespace="preserve">%TRUE if this icon source is a base for any text direction variant</doc>
28882           <type name="boolean" c:type="gboolean"/>
28883         </return-value>
28884       </method>
28885       <method name="set_direction"
28886               c:identifier="gtk_icon_source_set_direction">
28887         <doc xml:whitespace="preserve">Sets the text direction this icon source is intended to be used
28888 with.
28889 Setting the text direction on an icon source makes no difference
28890 if the text direction is wildcarded. Therefore, you should usually
28891 call gtk_icon_source_set_direction_wildcarded() to un-wildcard it
28892 in addition to calling this function.</doc>
28893         <return-value transfer-ownership="none">
28894           <type name="none" c:type="void"/>
28895         </return-value>
28896         <parameters>
28897           <parameter name="direction" transfer-ownership="none">
28898             <doc xml:whitespace="preserve">text direction this source applies to</doc>
28899             <type name="TextDirection" c:type="GtkTextDirection"/>
28900           </parameter>
28901         </parameters>
28902       </method>
28903       <method name="set_state" c:identifier="gtk_icon_source_set_state">
28904         <doc xml:whitespace="preserve">Sets the widget state this icon source is intended to be used
28905 with.
28906 Setting the widget state on an icon source makes no difference
28907 if the state is wildcarded. Therefore, you should usually
28908 call gtk_icon_source_set_state_wildcarded() to un-wildcard it
28909 in addition to calling this function.</doc>
28910         <return-value transfer-ownership="none">
28911           <type name="none" c:type="void"/>
28912         </return-value>
28913         <parameters>
28914           <parameter name="state" transfer-ownership="none">
28915             <doc xml:whitespace="preserve">widget state this source applies to</doc>
28916             <type name="StateType" c:type="GtkStateType"/>
28917           </parameter>
28918         </parameters>
28919       </method>
28920       <method name="set_size" c:identifier="gtk_icon_source_set_size">
28921         <doc xml:whitespace="preserve">Sets the icon size this icon source is intended to be used
28922 with.
28923 Setting the icon size on an icon source makes no difference
28924 if the size is wildcarded. Therefore, you should usually
28925 call gtk_icon_source_set_size_wildcarded() to un-wildcard it
28926 in addition to calling this function.</doc>
28927         <return-value transfer-ownership="none">
28928           <type name="none" c:type="void"/>
28929         </return-value>
28930         <parameters>
28931           <parameter name="size" transfer-ownership="none">
28932             <doc xml:whitespace="preserve">icon size this source applies to</doc>
28933             <type name="int" c:type="GtkIconSize"/>
28934           </parameter>
28935         </parameters>
28936       </method>
28937       <method name="get_direction"
28938               c:identifier="gtk_icon_source_get_direction">
28939         <doc xml:whitespace="preserve">Obtains the text direction this icon source applies to. The return
28940 value is only useful/meaningful if the text direction is &lt;emphasis&gt;not&lt;/emphasis&gt;
28941 wildcarded.</doc>
28942         <return-value transfer-ownership="full">
28943           <doc xml:whitespace="preserve">text direction this source matches</doc>
28944           <type name="TextDirection" c:type="GtkTextDirection"/>
28945         </return-value>
28946       </method>
28947       <method name="get_state" c:identifier="gtk_icon_source_get_state">
28948         <doc xml:whitespace="preserve">Obtains the widget state this icon source applies to. The return
28949 value is only useful/meaningful if the widget state is &lt;emphasis&gt;not&lt;/emphasis&gt;
28950 wildcarded.</doc>
28951         <return-value transfer-ownership="full">
28952           <doc xml:whitespace="preserve">widget state this source matches</doc>
28953           <type name="StateType" c:type="GtkStateType"/>
28954         </return-value>
28955       </method>
28956       <method name="get_size" c:identifier="gtk_icon_source_get_size">
28957         <doc xml:whitespace="preserve">Obtains the icon size this source applies to. The return value
28958 is only useful/meaningful if the icon size is &lt;emphasis&gt;not&lt;/emphasis&gt; wildcarded.</doc>
28959         <return-value transfer-ownership="full">
28960           <doc xml:whitespace="preserve">icon size this source matches.</doc>
28961           <type name="int" c:type="GtkIconSize"/>
28962         </return-value>
28963       </method>
28964     </record>
28965     <class name="IconTheme"
28966            c:type="GtkIconTheme"
28967            parent="GObject.Object"
28968            glib:type-name="GtkIconTheme"
28969            glib:get-type="gtk_icon_theme_get_type"
28970            glib:type-struct="IconThemeClass">
28971       <constructor name="new" c:identifier="gtk_icon_theme_new" version="2.4">
28972         <doc xml:whitespace="preserve">Creates a new icon theme object. Icon theme objects are used
28973 to lookup up an icon by name in a particular icon theme.
28974 Usually, you'll want to use gtk_icon_theme_get_default()
28975 or gtk_icon_theme_get_for_screen() rather than creating
28976 a new icon theme object for scratch.</doc>
28977         <return-value transfer-ownership="full">
28978           <doc xml:whitespace="preserve">the newly created #GtkIconTheme object.</doc>
28979           <type name="IconTheme" c:type="GtkIconTheme*"/>
28980         </return-value>
28981       </constructor>
28982       <function name="get_default"
28983                 c:identifier="gtk_icon_theme_get_default"
28984                 version="2.4">
28985         <doc xml:whitespace="preserve">Gets the icon theme for the default screen. See
28986 gtk_icon_theme_get_for_screen().
28987 the default screen. This icon theme is associated with
28988 the screen and can be used as long as the screen
28989 is open. Do not ref or unref it.</doc>
28990         <return-value transfer-ownership="none">
28991           <doc xml:whitespace="preserve">A unique #GtkIconTheme associated with</doc>
28992           <type name="IconTheme" c:type="GtkIconTheme*"/>
28993         </return-value>
28994       </function>
28995       <function name="get_for_screen"
28996                 c:identifier="gtk_icon_theme_get_for_screen"
28997                 version="2.4">
28998         <doc xml:whitespace="preserve">Gets the icon theme object associated with @screen; if this
28999 function has not previously been called for the given
29000 screen, a new icon theme object will be created and
29001 associated with the screen. Icon theme objects are
29002 fairly expensive to create, so using this function
29003 is usually a better choice than calling than gtk_icon_theme_new()
29004 and setting the screen yourself; by using this function
29005 a single icon theme object will be shared between users.
29006 the given screen. This icon theme is associated with
29007 the screen and can be used as long as the screen
29008 is open. Do not ref or unref it.</doc>
29009         <return-value transfer-ownership="none">
29010           <doc xml:whitespace="preserve">A unique #GtkIconTheme associated with</doc>
29011           <type name="IconTheme" c:type="GtkIconTheme*"/>
29012         </return-value>
29013         <parameters>
29014           <parameter name="screen" transfer-ownership="none">
29015             <doc xml:whitespace="preserve">a #GdkScreen</doc>
29016             <type name="Gdk.Screen" c:type="GdkScreen*"/>
29017           </parameter>
29018         </parameters>
29019       </function>
29020       <function name="add_builtin_icon"
29021                 c:identifier="gtk_icon_theme_add_builtin_icon"
29022                 version="2.4">
29023         <doc xml:whitespace="preserve">Registers a built-in icon for icon theme lookups. The idea
29024 of built-in icons is to allow an application or library
29025 that uses themed icons to function requiring files to
29026 be present in the file system. For instance, the default
29027 images for all of GTK+'s stock icons are registered
29028 as built-icons.
29029 In general, if you use gtk_icon_theme_add_builtin_icon()
29030 you should also install the icon in the icon theme, so
29031 that the icon is generally available.
29032 This function will generally be used with pixbufs loaded
29033 via gdk_pixbuf_new_from_inline().</doc>
29034         <return-value transfer-ownership="none">
29035           <type name="none" c:type="void"/>
29036         </return-value>
29037         <parameters>
29038           <parameter name="icon_name" transfer-ownership="none">
29039             <doc xml:whitespace="preserve">the name of the icon to register</doc>
29040             <type name="utf8" c:type="gchar*"/>
29041           </parameter>
29042           <parameter name="size" transfer-ownership="none">
29043             <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>
29044             <type name="int" c:type="gint"/>
29045           </parameter>
29046           <parameter name="pixbuf" transfer-ownership="none">
29047             <doc xml:whitespace="preserve">#GdkPixbuf that contains the image to use for @icon_name.</doc>
29048             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
29049           </parameter>
29050         </parameters>
29051       </function>
29052       <method name="set_screen"
29053               c:identifier="gtk_icon_theme_set_screen"
29054               version="2.4">
29055         <doc xml:whitespace="preserve">Sets the screen for an icon theme; the screen is used
29056 to track the user's currently configured icon theme,
29057 which might be different for different screens.</doc>
29058         <return-value transfer-ownership="none">
29059           <type name="none" c:type="void"/>
29060         </return-value>
29061         <parameters>
29062           <parameter name="screen" transfer-ownership="none">
29063             <doc xml:whitespace="preserve">a #GdkScreen</doc>
29064             <type name="Gdk.Screen" c:type="GdkScreen*"/>
29065           </parameter>
29066         </parameters>
29067       </method>
29068       <method name="set_search_path"
29069               c:identifier="gtk_icon_theme_set_search_path"
29070               version="2.4">
29071         <doc xml:whitespace="preserve">Sets the search path for the icon theme object. When looking
29072 for an icon theme, GTK+ will search for a subdirectory of
29073 one or more of the directories in @path with the same name
29074 as the icon theme. (Themes from multiple of the path elements
29075 are combined to allow themes to be extended by adding icons
29076 in the user's home directory.)
29077 In addition if an icon found isn't found either in the current
29078 icon theme or the default icon theme, and an image file with
29079 the right name is found directly in one of the elements of
29080 (This is legacy feature, and new icons should be put
29081 into the default icon theme, which is called DEFAULT_THEME_NAME,
29082 rather than directly on the icon path.)</doc>
29083         <return-value transfer-ownership="none">
29084           <type name="none" c:type="void"/>
29085         </return-value>
29086         <parameters>
29087           <parameter name="path" transfer-ownership="full">
29088             <doc xml:whitespace="preserve">array of directories that are searched for icon themes</doc>
29089             <type name="utf8" c:type="gchar*"/>
29090           </parameter>
29091           <parameter name="n_elements" transfer-ownership="none">
29092             <doc xml:whitespace="preserve">number of elements in @path.</doc>
29093             <type name="int" c:type="gint"/>
29094           </parameter>
29095         </parameters>
29096       </method>
29097       <method name="get_search_path"
29098               c:identifier="gtk_icon_theme_get_search_path"
29099               version="2.4">
29100         <doc xml:whitespace="preserve">Gets the current search path. See gtk_icon_theme_set_search_path().</doc>
29101         <return-value transfer-ownership="none">
29102           <type name="none" c:type="void"/>
29103         </return-value>
29104         <parameters>
29105           <parameter name="path"
29106                      direction="out"
29107                      caller-allocates="0"
29108                      transfer-ownership="full"
29109                      allow-none="1">
29110             <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>
29111             <array length="2" c:type="gchar**">
29112               <type name="utf8"/>
29113             </array>
29114           </parameter>
29115           <parameter name="n_elements"
29116                      direction="out"
29117                      caller-allocates="0"
29118                      transfer-ownership="full">
29119             <doc xml:whitespace="preserve">location to store number of elements in @path, or %NULL</doc>
29120             <type name="int" c:type="gint*"/>
29121           </parameter>
29122         </parameters>
29123       </method>
29124       <method name="append_search_path"
29125               c:identifier="gtk_icon_theme_append_search_path"
29126               version="2.4">
29127         <doc xml:whitespace="preserve">Appends a directory to the search path. 
29128 See gtk_icon_theme_set_search_path().</doc>
29129         <return-value transfer-ownership="none">
29130           <type name="none" c:type="void"/>
29131         </return-value>
29132         <parameters>
29133           <parameter name="path" transfer-ownership="none">
29134             <doc xml:whitespace="preserve">directory name to append to the icon path</doc>
29135             <type name="utf8" c:type="gchar*"/>
29136           </parameter>
29137         </parameters>
29138       </method>
29139       <method name="prepend_search_path"
29140               c:identifier="gtk_icon_theme_prepend_search_path"
29141               version="2.4">
29142         <doc xml:whitespace="preserve">Prepends a directory to the search path. 
29143 See gtk_icon_theme_set_search_path().</doc>
29144         <return-value transfer-ownership="none">
29145           <type name="none" c:type="void"/>
29146         </return-value>
29147         <parameters>
29148           <parameter name="path" transfer-ownership="none">
29149             <doc xml:whitespace="preserve">directory name to prepend to the icon path</doc>
29150             <type name="utf8" c:type="gchar*"/>
29151           </parameter>
29152         </parameters>
29153       </method>
29154       <method name="set_custom_theme"
29155               c:identifier="gtk_icon_theme_set_custom_theme"
29156               version="2.4">
29157         <doc xml:whitespace="preserve">Sets the name of the icon theme that the #GtkIconTheme object uses
29158 overriding system configuration. This function cannot be called
29159 on the icon theme objects returned from gtk_icon_theme_get_default()
29160 and gtk_icon_theme_get_for_screen().</doc>
29161         <return-value transfer-ownership="none">
29162           <type name="none" c:type="void"/>
29163         </return-value>
29164         <parameters>
29165           <parameter name="theme_name" transfer-ownership="none">
29166             <doc xml:whitespace="preserve">name of icon theme to use instead of configured theme, or %NULL to unset a previously set custom theme</doc>
29167             <type name="utf8" c:type="gchar*"/>
29168           </parameter>
29169         </parameters>
29170       </method>
29171       <method name="has_icon"
29172               c:identifier="gtk_icon_theme_has_icon"
29173               version="2.4">
29174         <doc xml:whitespace="preserve">Checks whether an icon theme includes an icon
29175 for a particular name.
29176 icon for @icon_name.</doc>
29177         <return-value transfer-ownership="none">
29178           <doc xml:whitespace="preserve">%TRUE if @icon_theme includes an</doc>
29179           <type name="boolean" c:type="gboolean"/>
29180         </return-value>
29181         <parameters>
29182           <parameter name="icon_name" transfer-ownership="none">
29183             <doc xml:whitespace="preserve">the name of an icon</doc>
29184             <type name="utf8" c:type="gchar*"/>
29185           </parameter>
29186         </parameters>
29187       </method>
29188       <method name="get_icon_sizes"
29189               c:identifier="gtk_icon_theme_get_icon_sizes"
29190               version="2.6">
29191         <doc xml:whitespace="preserve">Returns an array of integers describing the sizes at which
29192 the icon is available without scaling. A size of -1 means 
29193 that the icon is available in a scalable format. The array 
29194 is zero-terminated.
29195 which the icon is available. The array should be freed with g_free()
29196 when it is no longer needed.</doc>
29197         <return-value transfer-ownership="full">
29198           <doc xml:whitespace="preserve">An newly allocated array describing the sizes at</doc>
29199           <type name="int" c:type="gint*"/>
29200         </return-value>
29201         <parameters>
29202           <parameter name="icon_name" transfer-ownership="none">
29203             <doc xml:whitespace="preserve">the name of an icon</doc>
29204             <type name="utf8" c:type="gchar*"/>
29205           </parameter>
29206         </parameters>
29207       </method>
29208       <method name="lookup_icon"
29209               c:identifier="gtk_icon_theme_lookup_icon"
29210               version="2.4">
29211         <doc xml:whitespace="preserve">Looks up a named icon and returns a structure containing
29212 information such as the filename of the icon. The icon
29213 can then be rendered into a pixbuf using
29214 gtk_icon_info_load_icon(). (gtk_icon_theme_load_icon()
29215 combines these two steps if all you need is the pixbuf.)
29216 about the icon, or %NULL if the icon wasn't found. Free with
29217 gtk_icon_info_free()</doc>
29218         <return-value transfer-ownership="full">
29219           <doc xml:whitespace="preserve">a #GtkIconInfo structure containing information</doc>
29220           <type name="IconInfo" c:type="GtkIconInfo*"/>
29221         </return-value>
29222         <parameters>
29223           <parameter name="icon_name" transfer-ownership="none">
29224             <doc xml:whitespace="preserve">the name of the icon to lookup</doc>
29225             <type name="utf8" c:type="gchar*"/>
29226           </parameter>
29227           <parameter name="size" transfer-ownership="none">
29228             <doc xml:whitespace="preserve">desired icon size</doc>
29229             <type name="int" c:type="gint"/>
29230           </parameter>
29231           <parameter name="flags" transfer-ownership="none">
29232             <doc xml:whitespace="preserve">flags modifying the behavior of the icon lookup</doc>
29233             <type name="IconLookupFlags" c:type="GtkIconLookupFlags"/>
29234           </parameter>
29235         </parameters>
29236       </method>
29237       <method name="choose_icon"
29238               c:identifier="gtk_icon_theme_choose_icon"
29239               version="2.12">
29240         <doc xml:whitespace="preserve">Looks up a named icon and returns a structure containing
29241 information such as the filename of the icon. The icon
29242 can then be rendered into a pixbuf using
29243 gtk_icon_info_load_icon(). (gtk_icon_theme_load_icon()
29244 combines these two steps if all you need is the pixbuf.)
29245 If @icon_names contains more than one name, this function 
29246 tries them all in the given order before falling back to 
29247 inherited icon themes.
29248 about the icon, or %NULL if the icon wasn't found. Free with
29249 gtk_icon_info_free()</doc>
29250         <return-value transfer-ownership="full">
29251           <doc xml:whitespace="preserve">a #GtkIconInfo structure containing information</doc>
29252           <type name="IconInfo" c:type="GtkIconInfo*"/>
29253         </return-value>
29254         <parameters>
29255           <parameter name="icon_names" transfer-ownership="full">
29256             <doc xml:whitespace="preserve">%NULL-terminated array of icon names to lookup</doc>
29257             <type name="utf8" c:type="gchar*"/>
29258           </parameter>
29259           <parameter name="size" transfer-ownership="none">
29260             <doc xml:whitespace="preserve">desired icon size</doc>
29261             <type name="int" c:type="gint"/>
29262           </parameter>
29263           <parameter name="flags" transfer-ownership="none">
29264             <doc xml:whitespace="preserve">flags modifying the behavior of the icon lookup</doc>
29265             <type name="IconLookupFlags" c:type="GtkIconLookupFlags"/>
29266           </parameter>
29267         </parameters>
29268       </method>
29269       <method name="load_icon"
29270               c:identifier="gtk_icon_theme_load_icon"
29271               version="2.4"
29272               throws="1">
29273         <doc xml:whitespace="preserve">Looks up an icon in an icon theme, scales it to the given size
29274 and renders it into a pixbuf. This is a convenience function;
29275 if more details about the icon are needed, use
29276 gtk_icon_theme_lookup_icon() followed by gtk_icon_info_load_icon().
29277 Note that you probably want to listen for icon theme changes and
29278 update the icon. This is usually done by connecting to the 
29279 GtkWidget::style-set signal. If for some reason you do not want to
29280 update the icon when the icon theme changes, you should consider
29281 using gdk_pixbuf_copy() to make a private copy of the pixbuf
29282 returned by this function. Otherwise GTK+ may need to keep the old 
29283 icon theme loaded, which would be a waste of memory.
29284 or a new reference to an internal icon, so you must not modify
29285 the icon. Use g_object_unref() to release your reference to the
29286 icon. %NULL if the icon isn't found.</doc>
29287         <return-value transfer-ownership="full">
29288           <doc xml:whitespace="preserve">the rendered icon; this may be a newly created icon</doc>
29289           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
29290         </return-value>
29291         <parameters>
29292           <parameter name="icon_name" transfer-ownership="none">
29293             <doc xml:whitespace="preserve">the name of the icon to lookup</doc>
29294             <type name="utf8" c:type="gchar*"/>
29295           </parameter>
29296           <parameter name="size" transfer-ownership="none">
29297             <doc xml:whitespace="preserve">the desired icon size. The resulting icon may not be exactly this size; see gtk_icon_info_load_icon().</doc>
29298             <type name="int" c:type="gint"/>
29299           </parameter>
29300           <parameter name="flags" transfer-ownership="none">
29301             <doc xml:whitespace="preserve">flags modifying the behavior of the icon lookup</doc>
29302             <type name="IconLookupFlags" c:type="GtkIconLookupFlags"/>
29303           </parameter>
29304         </parameters>
29305       </method>
29306       <method name="lookup_by_gicon"
29307               c:identifier="gtk_icon_theme_lookup_by_gicon"
29308               version="2.14">
29309         <doc xml:whitespace="preserve">Looks up an icon and returns a structure containing
29310 information such as the filename of the icon. 
29311 The icon can then be rendered into a pixbuf using
29312 gtk_icon_info_load_icon().
29313 information about the icon, or %NULL if the icon 
29314 wasn't found. Free with gtk_icon_info_free()</doc>
29315         <return-value transfer-ownership="full">
29316           <doc xml:whitespace="preserve">a #GtkIconInfo structure containing</doc>
29317           <type name="IconInfo" c:type="GtkIconInfo*"/>
29318         </return-value>
29319         <parameters>
29320           <parameter name="icon" transfer-ownership="none">
29321             <doc xml:whitespace="preserve">the #GIcon to look up</doc>
29322             <type name="Gio.Icon" c:type="GIcon*"/>
29323           </parameter>
29324           <parameter name="size" transfer-ownership="none">
29325             <doc xml:whitespace="preserve">desired icon size</doc>
29326             <type name="int" c:type="gint"/>
29327           </parameter>
29328           <parameter name="flags" transfer-ownership="none">
29329             <doc xml:whitespace="preserve">flags modifying the behavior of the icon lookup</doc>
29330             <type name="IconLookupFlags" c:type="GtkIconLookupFlags"/>
29331           </parameter>
29332         </parameters>
29333       </method>
29334       <method name="list_icons"
29335               c:identifier="gtk_icon_theme_list_icons"
29336               version="2.4">
29337         <doc xml:whitespace="preserve">Lists the icons in the current icon theme. Only a subset
29338 of the icons can be listed by providing a context string.
29339 The set of values for the context string is system dependent,
29340 but will typically include such values as "Applications" and
29341 "MimeTypes".
29342 icons in the theme. You must first free each element
29343 in the list with g_free(), then free the list itself
29344 with g_list_free().</doc>
29345         <return-value transfer-ownership="none">
29346           <doc xml:whitespace="preserve">a #GList list holding the names of all the</doc>
29347           <type name="GLib.List" c:type="GList*">
29348             <type name="utf8"/>
29349           </type>
29350         </return-value>
29351         <parameters>
29352           <parameter name="context" transfer-ownership="none">
29353             <doc xml:whitespace="preserve">a string identifying a particular type of icon, or %NULL to list all icons.</doc>
29354             <type name="utf8" c:type="gchar*"/>
29355           </parameter>
29356         </parameters>
29357       </method>
29358       <method name="list_contexts"
29359               c:identifier="gtk_icon_theme_list_contexts"
29360               version="2.12">
29361         <doc xml:whitespace="preserve">Gets the list of contexts available within the current
29362 hierarchy of icon themes
29363 contexts in the theme. You must first free each element
29364 in the list with g_free(), then free the list itself
29365 with g_list_free().</doc>
29366         <return-value transfer-ownership="full">
29367           <doc xml:whitespace="preserve">a #GList list holding the names of all the</doc>
29368           <type name="GLib.List" c:type="GList*">
29369             <type name="utf8"/>
29370           </type>
29371         </return-value>
29372       </method>
29373       <method name="get_example_icon_name"
29374               c:identifier="gtk_icon_theme_get_example_icon_name"
29375               version="2.4">
29376         <doc xml:whitespace="preserve">Gets the name of an icon that is representative of the
29377 current theme (for instance, to use when presenting
29378 a list of themes to the user.)
29379 Free with g_free().</doc>
29380         <return-value transfer-ownership="full">
29381           <doc xml:whitespace="preserve">the name of an example icon or %NULL.</doc>
29382           <type name="utf8" c:type="char*"/>
29383         </return-value>
29384       </method>
29385       <method name="rescan_if_needed"
29386               c:identifier="gtk_icon_theme_rescan_if_needed"
29387               version="2.4">
29388         <doc xml:whitespace="preserve">Checks to see if the icon theme has changed; if it has, any
29389 currently cached information is discarded and will be reloaded
29390 next time @icon_theme is accessed.
29391 to be reloaded.</doc>
29392         <return-value transfer-ownership="none">
29393           <doc xml:whitespace="preserve">%TRUE if the icon theme has changed and needed</doc>
29394           <type name="boolean" c:type="gboolean"/>
29395         </return-value>
29396       </method>
29397       <field name="parent_instance">
29398         <type name="GObject.Object" c:type="GObject"/>
29399       </field>
29400       <field name="priv">
29401         <type name="IconThemePrivate" c:type="GtkIconThemePrivate*"/>
29402       </field>
29403       <glib:signal name="changed">
29404         <return-value transfer-ownership="full">
29405           <type name="none" c:type="void"/>
29406         </return-value>
29407       </glib:signal>
29408     </class>
29409     <record name="IconThemeClass"
29410             c:type="GtkIconThemeClass"
29411             glib:is-gtype-struct-for="IconTheme">
29412       <field name="parent_class">
29413         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
29414       </field>
29415       <field name="changed">
29416         <callback name="changed" c:type="changed">
29417           <return-value transfer-ownership="none">
29418             <type name="none" c:type="void"/>
29419           </return-value>
29420           <parameters>
29421             <parameter name="icon_theme" transfer-ownership="none">
29422               <type name="IconTheme" c:type="GtkIconTheme*"/>
29423             </parameter>
29424           </parameters>
29425         </callback>
29426       </field>
29427     </record>
29428     <enumeration name="IconThemeError"
29429                  glib:type-name="GtkIconThemeError"
29430                  glib:get-type="gtk_icon_theme_error_get_type"
29431                  c:type="GtkIconThemeError"
29432                  glib:error-quark="gtk_icon_theme_error_quark">
29433       <doc xml:whitespace="preserve">Error codes for GtkIconTheme operations.</doc>
29434       <member name="not_found"
29435               value="0"
29436               c:identifier="GTK_ICON_THEME_NOT_FOUND"
29437               glib:nick="not-found"/>
29438       <member name="failed"
29439               value="1"
29440               c:identifier="GTK_ICON_THEME_FAILED"
29441               glib:nick="failed"/>
29442     </enumeration>
29443     <record name="IconThemePrivate" c:type="GtkIconThemePrivate">
29444     </record>
29445     <class name="IconView"
29446            c:type="GtkIconView"
29447            parent="Container"
29448            glib:type-name="GtkIconView"
29449            glib:get-type="gtk_icon_view_get_type"
29450            glib:type-struct="IconViewClass">
29451       <implements name="Atk.ImplementorIface"/>
29452       <implements name="Buildable"/>
29453       <implements name="CellLayout"/>
29454       <constructor name="new" c:identifier="gtk_icon_view_new" version="2.6">
29455         <doc xml:whitespace="preserve">Creates a new #GtkIconView widget</doc>
29456         <return-value transfer-ownership="full">
29457           <doc xml:whitespace="preserve">A newly created #GtkIconView widget</doc>
29458           <type name="IconView" c:type="GtkWidget*"/>
29459         </return-value>
29460       </constructor>
29461       <constructor name="new_with_model"
29462                    c:identifier="gtk_icon_view_new_with_model"
29463                    version="2.6 ">
29464         <doc xml:whitespace="preserve">Creates a new #GtkIconView widget with the model @model.</doc>
29465         <return-value transfer-ownership="full">
29466           <doc xml:whitespace="preserve">A newly created #GtkIconView widget.</doc>
29467           <type name="IconView" c:type="GtkWidget*"/>
29468         </return-value>
29469         <parameters>
29470           <parameter name="model" transfer-ownership="none">
29471             <doc xml:whitespace="preserve">The model.</doc>
29472             <type name="TreeModel" c:type="GtkTreeModel*"/>
29473           </parameter>
29474         </parameters>
29475       </constructor>
29476       <method name="set_model"
29477               c:identifier="gtk_icon_view_set_model"
29478               version="2.6 ">
29479         <doc xml:whitespace="preserve">Sets the model for a #GtkIconView.
29480 If the @icon_view already has a model set, it will remove
29481 it before setting the new model.  If @model is %NULL, then
29482 it will unset the old model.</doc>
29483         <return-value transfer-ownership="none">
29484           <type name="none" c:type="void"/>
29485         </return-value>
29486         <parameters>
29487           <parameter name="model" transfer-ownership="none" allow-none="1">
29488             <doc xml:whitespace="preserve">The model.</doc>
29489             <type name="TreeModel" c:type="GtkTreeModel*"/>
29490           </parameter>
29491         </parameters>
29492       </method>
29493       <method name="get_model"
29494               c:identifier="gtk_icon_view_get_model"
29495               version="2.6 ">
29496         <doc xml:whitespace="preserve">Returns the model the #GtkIconView is based on.  Returns %NULL if the
29497 model is unset.</doc>
29498         <return-value transfer-ownership="full">
29499           <doc xml:whitespace="preserve">A #GtkTreeModel, or %NULL if none is currently being used.</doc>
29500           <type name="TreeModel" c:type="GtkTreeModel*"/>
29501         </return-value>
29502       </method>
29503       <method name="set_text_column"
29504               c:identifier="gtk_icon_view_set_text_column"
29505               version="2.6 ">
29506         <doc xml:whitespace="preserve">Sets the column with text for @icon_view to be @column. The text
29507 column must be of type #G_TYPE_STRING.</doc>
29508         <return-value transfer-ownership="none">
29509           <type name="none" c:type="void"/>
29510         </return-value>
29511         <parameters>
29512           <parameter name="column" transfer-ownership="none">
29513             <doc xml:whitespace="preserve">A column in the currently used model, or -1 to display no text</doc>
29514             <type name="int" c:type="gint"/>
29515           </parameter>
29516         </parameters>
29517       </method>
29518       <method name="get_text_column"
29519               c:identifier="gtk_icon_view_get_text_column"
29520               version="2.6">
29521         <doc xml:whitespace="preserve">Returns the column with text for @icon_view.</doc>
29522         <return-value transfer-ownership="none">
29523           <doc xml:whitespace="preserve">the text column, or -1 if it's unset.</doc>
29524           <type name="int" c:type="gint"/>
29525         </return-value>
29526       </method>
29527       <method name="set_markup_column"
29528               c:identifier="gtk_icon_view_set_markup_column"
29529               version="2.6">
29530         <doc xml:whitespace="preserve">Sets the column with markup information for @icon_view to be
29531 If the markup column is set to something, it overrides
29532 the text column set by gtk_icon_view_set_text_column().</doc>
29533         <return-value transfer-ownership="none">
29534           <type name="none" c:type="void"/>
29535         </return-value>
29536         <parameters>
29537           <parameter name="column" transfer-ownership="none">
29538             <doc xml:whitespace="preserve">A column in the currently used model, or -1 to display no text</doc>
29539             <type name="int" c:type="gint"/>
29540           </parameter>
29541         </parameters>
29542       </method>
29543       <method name="get_markup_column"
29544               c:identifier="gtk_icon_view_get_markup_column"
29545               version="2.6">
29546         <doc xml:whitespace="preserve">Returns the column with markup text for @icon_view.</doc>
29547         <return-value transfer-ownership="none">
29548           <doc xml:whitespace="preserve">the markup column, or -1 if it's unset.</doc>
29549           <type name="int" c:type="gint"/>
29550         </return-value>
29551       </method>
29552       <method name="set_pixbuf_column"
29553               c:identifier="gtk_icon_view_set_pixbuf_column"
29554               version="2.6 ">
29555         <doc xml:whitespace="preserve">Sets the column with pixbufs for @icon_view to be @column. The pixbuf
29556 column must be of type #GDK_TYPE_PIXBUF</doc>
29557         <return-value transfer-ownership="none">
29558           <type name="none" c:type="void"/>
29559         </return-value>
29560         <parameters>
29561           <parameter name="column" transfer-ownership="none">
29562             <doc xml:whitespace="preserve">A column in the currently used model, or -1 to disable</doc>
29563             <type name="int" c:type="gint"/>
29564           </parameter>
29565         </parameters>
29566       </method>
29567       <method name="get_pixbuf_column"
29568               c:identifier="gtk_icon_view_get_pixbuf_column"
29569               version="2.6">
29570         <doc xml:whitespace="preserve">Returns the column with pixbufs for @icon_view.</doc>
29571         <return-value transfer-ownership="none">
29572           <doc xml:whitespace="preserve">the pixbuf column, or -1 if it's unset.</doc>
29573           <type name="int" c:type="gint"/>
29574         </return-value>
29575       </method>
29576       <method name="set_orientation"
29577               c:identifier="gtk_icon_view_set_orientation"
29578               version="2.6">
29579         <doc xml:whitespace="preserve">Sets the ::orientation property which determines whether the labels 
29580 are drawn beside the icons instead of below.</doc>
29581         <return-value transfer-ownership="none">
29582           <type name="none" c:type="void"/>
29583         </return-value>
29584         <parameters>
29585           <parameter name="orientation" transfer-ownership="none">
29586             <doc xml:whitespace="preserve">the relative position of texts and icons</doc>
29587             <type name="Orientation" c:type="GtkOrientation"/>
29588           </parameter>
29589         </parameters>
29590       </method>
29591       <method name="get_orientation"
29592               c:identifier="gtk_icon_view_get_orientation"
29593               version="2.6">
29594         <doc xml:whitespace="preserve">Returns the value of the ::orientation property which determines 
29595 whether the labels are drawn beside the icons instead of below.</doc>
29596         <return-value transfer-ownership="full">
29597           <doc xml:whitespace="preserve">the relative position of texts and icons</doc>
29598           <type name="Orientation" c:type="GtkOrientation"/>
29599         </return-value>
29600       </method>
29601       <method name="set_columns"
29602               c:identifier="gtk_icon_view_set_columns"
29603               version="2.6">
29604         <doc xml:whitespace="preserve">Sets the ::columns property which determines in how
29605 many columns the icons are arranged. If @columns is
29606 -1, the number of columns will be chosen automatically 
29607 to fill the available area.</doc>
29608         <return-value transfer-ownership="none">
29609           <type name="none" c:type="void"/>
29610         </return-value>
29611         <parameters>
29612           <parameter name="columns" transfer-ownership="none">
29613             <doc xml:whitespace="preserve">the number of columns</doc>
29614             <type name="int" c:type="gint"/>
29615           </parameter>
29616         </parameters>
29617       </method>
29618       <method name="get_columns"
29619               c:identifier="gtk_icon_view_get_columns"
29620               version="2.6">
29621         <doc xml:whitespace="preserve">Returns the value of the ::columns property.</doc>
29622         <return-value transfer-ownership="none">
29623           <doc xml:whitespace="preserve">the number of columns, or -1</doc>
29624           <type name="int" c:type="gint"/>
29625         </return-value>
29626       </method>
29627       <method name="set_item_width"
29628               c:identifier="gtk_icon_view_set_item_width"
29629               version="2.6">
29630         <doc xml:whitespace="preserve">Sets the ::item-width property which specifies the width 
29631 to use for each item. If it is set to -1, the icon view will 
29632 automatically determine a suitable item size.</doc>
29633         <return-value transfer-ownership="none">
29634           <type name="none" c:type="void"/>
29635         </return-value>
29636         <parameters>
29637           <parameter name="item_width" transfer-ownership="none">
29638             <doc xml:whitespace="preserve">the width for each item</doc>
29639             <type name="int" c:type="gint"/>
29640           </parameter>
29641         </parameters>
29642       </method>
29643       <method name="get_item_width"
29644               c:identifier="gtk_icon_view_get_item_width"
29645               version="2.6">
29646         <doc xml:whitespace="preserve">Returns the value of the ::item-width property.</doc>
29647         <return-value transfer-ownership="none">
29648           <doc xml:whitespace="preserve">the width of a single item, or -1</doc>
29649           <type name="int" c:type="gint"/>
29650         </return-value>
29651       </method>
29652       <method name="set_spacing"
29653               c:identifier="gtk_icon_view_set_spacing"
29654               version="2.6">
29655         <doc xml:whitespace="preserve">Sets the ::spacing property which specifies the space 
29656 which is inserted between the cells (i.e. the icon and 
29657 the text) of an item.</doc>
29658         <return-value transfer-ownership="none">
29659           <type name="none" c:type="void"/>
29660         </return-value>
29661         <parameters>
29662           <parameter name="spacing" transfer-ownership="none">
29663             <doc xml:whitespace="preserve">the spacing</doc>
29664             <type name="int" c:type="gint"/>
29665           </parameter>
29666         </parameters>
29667       </method>
29668       <method name="get_spacing"
29669               c:identifier="gtk_icon_view_get_spacing"
29670               version="2.6">
29671         <doc xml:whitespace="preserve">Returns the value of the ::spacing property.</doc>
29672         <return-value transfer-ownership="none">
29673           <doc xml:whitespace="preserve">the space between cells</doc>
29674           <type name="int" c:type="gint"/>
29675         </return-value>
29676       </method>
29677       <method name="set_row_spacing"
29678               c:identifier="gtk_icon_view_set_row_spacing"
29679               version="2.6">
29680         <doc xml:whitespace="preserve">Sets the ::row-spacing property which specifies the space 
29681 which is inserted between the rows of the icon view.</doc>
29682         <return-value transfer-ownership="none">
29683           <type name="none" c:type="void"/>
29684         </return-value>
29685         <parameters>
29686           <parameter name="row_spacing" transfer-ownership="none">
29687             <doc xml:whitespace="preserve">the row spacing</doc>
29688             <type name="int" c:type="gint"/>
29689           </parameter>
29690         </parameters>
29691       </method>
29692       <method name="get_row_spacing"
29693               c:identifier="gtk_icon_view_get_row_spacing"
29694               version="2.6">
29695         <doc xml:whitespace="preserve">Returns the value of the ::row-spacing property.</doc>
29696         <return-value transfer-ownership="none">
29697           <doc xml:whitespace="preserve">the space between rows</doc>
29698           <type name="int" c:type="gint"/>
29699         </return-value>
29700       </method>
29701       <method name="set_column_spacing"
29702               c:identifier="gtk_icon_view_set_column_spacing"
29703               version="2.6">
29704         <doc xml:whitespace="preserve">Sets the ::column-spacing property which specifies the space 
29705 which is inserted between the columns of the icon view.</doc>
29706         <return-value transfer-ownership="none">
29707           <type name="none" c:type="void"/>
29708         </return-value>
29709         <parameters>
29710           <parameter name="column_spacing" transfer-ownership="none">
29711             <doc xml:whitespace="preserve">the column spacing</doc>
29712             <type name="int" c:type="gint"/>
29713           </parameter>
29714         </parameters>
29715       </method>
29716       <method name="get_column_spacing"
29717               c:identifier="gtk_icon_view_get_column_spacing"
29718               version="2.6">
29719         <doc xml:whitespace="preserve">Returns the value of the ::column-spacing property.</doc>
29720         <return-value transfer-ownership="none">
29721           <doc xml:whitespace="preserve">the space between columns</doc>
29722           <type name="int" c:type="gint"/>
29723         </return-value>
29724       </method>
29725       <method name="set_margin"
29726               c:identifier="gtk_icon_view_set_margin"
29727               version="2.6">
29728         <doc xml:whitespace="preserve">Sets the ::margin property which specifies the space 
29729 which is inserted at the top, bottom, left and right 
29730 of the icon view.</doc>
29731         <return-value transfer-ownership="none">
29732           <type name="none" c:type="void"/>
29733         </return-value>
29734         <parameters>
29735           <parameter name="margin" transfer-ownership="none">
29736             <doc xml:whitespace="preserve">the margin</doc>
29737             <type name="int" c:type="gint"/>
29738           </parameter>
29739         </parameters>
29740       </method>
29741       <method name="get_margin"
29742               c:identifier="gtk_icon_view_get_margin"
29743               version="2.6">
29744         <doc xml:whitespace="preserve">Returns the value of the ::margin property.</doc>
29745         <return-value transfer-ownership="none">
29746           <doc xml:whitespace="preserve">the space at the borders</doc>
29747           <type name="int" c:type="gint"/>
29748         </return-value>
29749       </method>
29750       <method name="set_item_padding"
29751               c:identifier="gtk_icon_view_set_item_padding"
29752               version="2.18">
29753         <doc xml:whitespace="preserve">Sets the #GtkIconView:item-padding property which specifies the padding
29754 around each of the icon view's items.</doc>
29755         <return-value transfer-ownership="none">
29756           <type name="none" c:type="void"/>
29757         </return-value>
29758         <parameters>
29759           <parameter name="item_padding" transfer-ownership="none">
29760             <doc xml:whitespace="preserve">the item padding</doc>
29761             <type name="int" c:type="gint"/>
29762           </parameter>
29763         </parameters>
29764       </method>
29765       <method name="get_item_padding"
29766               c:identifier="gtk_icon_view_get_item_padding"
29767               version="2.18">
29768         <doc xml:whitespace="preserve">Returns the value of the ::item-padding property.</doc>
29769         <return-value transfer-ownership="none">
29770           <doc xml:whitespace="preserve">the padding around items</doc>
29771           <type name="int" c:type="gint"/>
29772         </return-value>
29773       </method>
29774       <method name="get_path_at_pos"
29775               c:identifier="gtk_icon_view_get_path_at_pos"
29776               version="2.6 ">
29777         <doc xml:whitespace="preserve">Finds the path at the point (@x, @y), relative to bin_window coordinates.
29778 See gtk_icon_view_get_item_at_pos(), if you are also interested in
29779 the cell at the specified position. 
29780 See gtk_icon_view_convert_widget_to_bin_window_coords() for converting
29781 widget coordinates to bin_window coordinates.
29782 if no icon exists at that position.</doc>
29783         <return-value transfer-ownership="full">
29784           <doc xml:whitespace="preserve">The #GtkTreePath corresponding to the icon or %NULL</doc>
29785           <type name="TreePath" c:type="GtkTreePath*"/>
29786         </return-value>
29787         <parameters>
29788           <parameter name="x" transfer-ownership="none">
29789             <doc xml:whitespace="preserve">The x position to be identified</doc>
29790             <type name="int" c:type="gint"/>
29791           </parameter>
29792           <parameter name="y" transfer-ownership="none">
29793             <doc xml:whitespace="preserve">The y position to be identified</doc>
29794             <type name="int" c:type="gint"/>
29795           </parameter>
29796         </parameters>
29797       </method>
29798       <method name="get_item_at_pos"
29799               c:identifier="gtk_icon_view_get_item_at_pos"
29800               version="2.8">
29801         <doc xml:whitespace="preserve">Finds the path at the point (@x, @y), relative to bin_window coordinates.
29802 In contrast to gtk_icon_view_get_path_at_pos(), this function also 
29803 obtains the cell at the specified position. The returned path should
29804 be freed with gtk_tree_path_free().
29805 See gtk_icon_view_convert_widget_to_bin_window_coords() for converting
29806 widget coordinates to bin_window coordinates.</doc>
29807         <return-value transfer-ownership="none">
29808           <doc xml:whitespace="preserve">%TRUE if an item exists at the specified position</doc>
29809           <type name="boolean" c:type="gboolean"/>
29810         </return-value>
29811         <parameters>
29812           <parameter name="x" transfer-ownership="none">
29813             <doc xml:whitespace="preserve">The x position to be identified</doc>
29814             <type name="int" c:type="gint"/>
29815           </parameter>
29816           <parameter name="y" transfer-ownership="none">
29817             <doc xml:whitespace="preserve">The y position to be identified</doc>
29818             <type name="int" c:type="gint"/>
29819           </parameter>
29820           <parameter name="path" transfer-ownership="none" allow-none="1">
29821             <doc xml:whitespace="preserve">Return location for the path, or %NULL</doc>
29822             <type name="TreePath" c:type="GtkTreePath**"/>
29823           </parameter>
29824           <parameter name="cell" transfer-ownership="none">
29825             <doc xml:whitespace="preserve">Return location for the renderer responsible for the cell at (@x, @y), or %NULL</doc>
29826             <type name="CellRenderer" c:type="GtkCellRenderer**"/>
29827           </parameter>
29828         </parameters>
29829       </method>
29830       <method name="get_visible_range"
29831               c:identifier="gtk_icon_view_get_visible_range"
29832               version="2.8">
29833         <doc xml:whitespace="preserve">Sets @start_path and @end_path to be the first and last visible path. 
29834 Note that there may be invisible paths in between.
29835 Both paths should be freed with gtk_tree_path_free() after use.</doc>
29836         <return-value transfer-ownership="none">
29837           <doc xml:whitespace="preserve">%TRUE, if valid paths were placed in @start_path and @end_path</doc>
29838           <type name="boolean" c:type="gboolean"/>
29839         </return-value>
29840         <parameters>
29841           <parameter name="start_path"
29842                      transfer-ownership="none"
29843                      allow-none="1">
29844             <doc xml:whitespace="preserve">Return location for start of region, or %NULL</doc>
29845             <type name="TreePath" c:type="GtkTreePath**"/>
29846           </parameter>
29847           <parameter name="end_path" transfer-ownership="none" allow-none="1">
29848             <doc xml:whitespace="preserve">Return location for end of region, or %NULL</doc>
29849             <type name="TreePath" c:type="GtkTreePath**"/>
29850           </parameter>
29851         </parameters>
29852       </method>
29853       <method name="selected_foreach"
29854               c:identifier="gtk_icon_view_selected_foreach"
29855               version="2.6 ">
29856         <doc xml:whitespace="preserve">Calls a function for each selected icon. Note that the model or
29857 selection cannot be modified from within this function.</doc>
29858         <return-value transfer-ownership="none">
29859           <type name="none" c:type="void"/>
29860         </return-value>
29861         <parameters>
29862           <parameter name="func"
29863                      transfer-ownership="none"
29864                      scope="call"
29865                      closure="2">
29866             <doc xml:whitespace="preserve">The funcion to call for each selected icon.</doc>
29867             <type name="IconViewForeachFunc" c:type="GtkIconViewForeachFunc"/>
29868           </parameter>
29869           <parameter name="data" transfer-ownership="none">
29870             <doc xml:whitespace="preserve">User data to pass to the function.</doc>
29871             <type name="any" c:type="gpointer"/>
29872           </parameter>
29873         </parameters>
29874       </method>
29875       <method name="set_selection_mode"
29876               c:identifier="gtk_icon_view_set_selection_mode"
29877               version="2.6 ">
29878         <doc xml:whitespace="preserve">Sets the selection mode of the @icon_view.</doc>
29879         <return-value transfer-ownership="none">
29880           <type name="none" c:type="void"/>
29881         </return-value>
29882         <parameters>
29883           <parameter name="mode" transfer-ownership="none">
29884             <doc xml:whitespace="preserve">The selection mode</doc>
29885             <type name="SelectionMode" c:type="GtkSelectionMode"/>
29886           </parameter>
29887         </parameters>
29888       </method>
29889       <method name="get_selection_mode"
29890               c:identifier="gtk_icon_view_get_selection_mode"
29891               version="2.6 ">
29892         <doc xml:whitespace="preserve">Gets the selection mode of the @icon_view.</doc>
29893         <return-value transfer-ownership="full">
29894           <doc xml:whitespace="preserve">the current selection mode</doc>
29895           <type name="SelectionMode" c:type="GtkSelectionMode"/>
29896         </return-value>
29897       </method>
29898       <method name="select_path"
29899               c:identifier="gtk_icon_view_select_path"
29900               version="2.6">
29901         <doc xml:whitespace="preserve">Selects the row at @path.</doc>
29902         <return-value transfer-ownership="none">
29903           <type name="none" c:type="void"/>
29904         </return-value>
29905         <parameters>
29906           <parameter name="path" transfer-ownership="none">
29907             <doc xml:whitespace="preserve">The #GtkTreePath to be selected.</doc>
29908             <type name="TreePath" c:type="GtkTreePath*"/>
29909           </parameter>
29910         </parameters>
29911       </method>
29912       <method name="unselect_path"
29913               c:identifier="gtk_icon_view_unselect_path"
29914               version="2.6">
29915         <doc xml:whitespace="preserve">Unselects the row at @path.</doc>
29916         <return-value transfer-ownership="none">
29917           <type name="none" c:type="void"/>
29918         </return-value>
29919         <parameters>
29920           <parameter name="path" transfer-ownership="none">
29921             <doc xml:whitespace="preserve">The #GtkTreePath to be unselected.</doc>
29922             <type name="TreePath" c:type="GtkTreePath*"/>
29923           </parameter>
29924         </parameters>
29925       </method>
29926       <method name="path_is_selected"
29927               c:identifier="gtk_icon_view_path_is_selected"
29928               version="2.6">
29929         <doc xml:whitespace="preserve">Returns %TRUE if the icon pointed to by @path is currently
29930 selected. If @path does not point to a valid location, %FALSE is returned.</doc>
29931         <return-value transfer-ownership="none">
29932           <doc xml:whitespace="preserve">%TRUE if @path is selected.</doc>
29933           <type name="boolean" c:type="gboolean"/>
29934         </return-value>
29935         <parameters>
29936           <parameter name="path" transfer-ownership="none">
29937             <doc xml:whitespace="preserve">A #GtkTreePath to check selection on.</doc>
29938             <type name="TreePath" c:type="GtkTreePath*"/>
29939           </parameter>
29940         </parameters>
29941       </method>
29942       <method name="get_selected_items"
29943               c:identifier="gtk_icon_view_get_selected_items"
29944               version="2.6">
29945         <doc xml:whitespace="preserve">Creates a list of paths of all selected items. Additionally, if you are
29946 planning on modifying the model after calling this function, you may
29947 want to convert the returned list into a list of #GtkTreeRowReference&lt;!-- --&gt;s.
29948 To do this, you can use gtk_tree_row_reference_new().
29949 To free the return value, use:
29950 |[
29951 g_list_foreach (list, (GFunc)gtk_tree_path_free, NULL);
29952 g_list_free (list);
29953 ]|</doc>
29954         <return-value transfer-ownership="full">
29955           <doc xml:whitespace="preserve">A #GList containing a #GtkTreePath for each selected row.</doc>
29956           <type name="GLib.List" c:type="GList*">
29957             <type name="TreePath"/>
29958           </type>
29959         </return-value>
29960       </method>
29961       <method name="select_all"
29962               c:identifier="gtk_icon_view_select_all"
29963               version="2.6">
29964         <doc xml:whitespace="preserve">Selects all the icons. @icon_view must has its selection mode set
29965 to #GTK_SELECTION_MULTIPLE.</doc>
29966         <return-value transfer-ownership="none">
29967           <type name="none" c:type="void"/>
29968         </return-value>
29969       </method>
29970       <method name="unselect_all"
29971               c:identifier="gtk_icon_view_unselect_all"
29972               version="2.6">
29973         <doc xml:whitespace="preserve">Unselects all the icons.</doc>
29974         <return-value transfer-ownership="none">
29975           <type name="none" c:type="void"/>
29976         </return-value>
29977       </method>
29978       <method name="item_activated"
29979               c:identifier="gtk_icon_view_item_activated"
29980               version="2.6">
29981         <doc xml:whitespace="preserve">Activates the item determined by @path.</doc>
29982         <return-value transfer-ownership="none">
29983           <type name="none" c:type="void"/>
29984         </return-value>
29985         <parameters>
29986           <parameter name="path" transfer-ownership="none">
29987             <doc xml:whitespace="preserve">The #GtkTreePath to be activated</doc>
29988             <type name="TreePath" c:type="GtkTreePath*"/>
29989           </parameter>
29990         </parameters>
29991       </method>
29992       <method name="set_cursor"
29993               c:identifier="gtk_icon_view_set_cursor"
29994               version="2.8">
29995         <doc xml:whitespace="preserve">Sets the current keyboard focus to be at @path, and selects it.  This is
29996 useful when you want to focus the user's attention on a particular item.
29997 If @cell is not %NULL, then focus is given to the cell specified by 
29998 it. Additionally, if @start_editing is %TRUE, then editing should be 
29999 started in the specified cell.  
30000 This function is often followed by &lt;literal&gt;gtk_widget_grab_focus 
30001 (icon_view)&lt;/literal&gt; in order to give keyboard focus to the widget.  
30002 Please note that editing can only happen when the widget is realized.</doc>
30003         <return-value transfer-ownership="none">
30004           <type name="none" c:type="void"/>
30005         </return-value>
30006         <parameters>
30007           <parameter name="path" transfer-ownership="none">
30008             <doc xml:whitespace="preserve">A #GtkTreePath</doc>
30009             <type name="TreePath" c:type="GtkTreePath*"/>
30010           </parameter>
30011           <parameter name="cell" transfer-ownership="none" allow-none="1">
30012             <doc xml:whitespace="preserve">One of the cell renderers of @icon_view, or %NULL</doc>
30013             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
30014           </parameter>
30015           <parameter name="start_editing" transfer-ownership="none">
30016             <doc xml:whitespace="preserve">%TRUE if the specified cell should start being edited.</doc>
30017             <type name="boolean" c:type="gboolean"/>
30018           </parameter>
30019         </parameters>
30020       </method>
30021       <method name="get_cursor"
30022               c:identifier="gtk_icon_view_get_cursor"
30023               version="2.8">
30024         <doc xml:whitespace="preserve">Fills in @path and @cell with the current cursor path and cell. 
30025 If the cursor isn't currently set, then *@path will be %NULL.  
30026 If no cell currently has focus, then *@cell will be %NULL.
30027 The returned #GtkTreePath must be freed with gtk_tree_path_free().</doc>
30028         <return-value transfer-ownership="none">
30029           <doc xml:whitespace="preserve">%TRUE if the cursor is set.</doc>
30030           <type name="boolean" c:type="gboolean"/>
30031         </return-value>
30032         <parameters>
30033           <parameter name="path" transfer-ownership="none" allow-none="1">
30034             <doc xml:whitespace="preserve">Return location for the current cursor path, or %NULL</doc>
30035             <type name="TreePath" c:type="GtkTreePath**"/>
30036           </parameter>
30037           <parameter name="cell" transfer-ownership="none" allow-none="1">
30038             <doc xml:whitespace="preserve">Return location the current focus cell, or %NULL</doc>
30039             <type name="CellRenderer" c:type="GtkCellRenderer**"/>
30040           </parameter>
30041         </parameters>
30042       </method>
30043       <method name="scroll_to_path"
30044               c:identifier="gtk_icon_view_scroll_to_path"
30045               version="2.8">
30046         <doc xml:whitespace="preserve">Moves the alignments of @icon_view to the position specified by @path.  
30047 where @column is placed.  Both are expected to be between 0.0 and 1.0. 
30048 0.0 means left/top alignment, 1.0 means right/bottom alignment, 0.5 means 
30049 center.
30050 If @use_align is %FALSE, then the alignment arguments are ignored, and the
30051 tree does the minimum amount of work to scroll the item onto the screen.
30052 This means that the item will be scrolled to the edge closest to its current
30053 position.  If the item is currently visible on the screen, nothing is done.
30054 This function only works if the model is set, and @path is a valid row on 
30055 the model. If the model changes before the @icon_view is realized, the 
30056 centered path will be modified to reflect this change.</doc>
30057         <return-value transfer-ownership="none">
30058           <type name="none" c:type="void"/>
30059         </return-value>
30060         <parameters>
30061           <parameter name="path" transfer-ownership="none">
30062             <doc xml:whitespace="preserve">The path of the item to move to.</doc>
30063             <type name="TreePath" c:type="GtkTreePath*"/>
30064           </parameter>
30065           <parameter name="use_align" transfer-ownership="none">
30066             <doc xml:whitespace="preserve">whether to use alignment arguments, or %FALSE.</doc>
30067             <type name="boolean" c:type="gboolean"/>
30068           </parameter>
30069           <parameter name="row_align" transfer-ownership="none">
30070             <doc xml:whitespace="preserve">The vertical alignment of the item specified by @path.</doc>
30071             <type name="float" c:type="gfloat"/>
30072           </parameter>
30073           <parameter name="col_align" transfer-ownership="none">
30074             <doc xml:whitespace="preserve">The horizontal alignment of the item specified by @path.</doc>
30075             <type name="float" c:type="gfloat"/>
30076           </parameter>
30077         </parameters>
30078       </method>
30079       <method name="enable_model_drag_source"
30080               c:identifier="gtk_icon_view_enable_model_drag_source"
30081               version="2.8">
30082         <doc xml:whitespace="preserve">Turns @icon_view into a drag source for automatic DND. Calling this
30083 method sets #GtkIconView:reorderable to %FALSE.</doc>
30084         <return-value transfer-ownership="none">
30085           <type name="none" c:type="void"/>
30086         </return-value>
30087         <parameters>
30088           <parameter name="start_button_mask" transfer-ownership="none">
30089             <doc xml:whitespace="preserve">Mask of allowed buttons to start drag</doc>
30090             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
30091           </parameter>
30092           <parameter name="targets" transfer-ownership="none">
30093             <doc xml:whitespace="preserve">the table of targets that the drag will support</doc>
30094             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
30095           </parameter>
30096           <parameter name="n_targets" transfer-ownership="none">
30097             <doc xml:whitespace="preserve">the number of items in @targets</doc>
30098             <type name="int" c:type="gint"/>
30099           </parameter>
30100           <parameter name="actions" transfer-ownership="none">
30101             <doc xml:whitespace="preserve">the bitmask of possible actions for a drag from this widget</doc>
30102             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
30103           </parameter>
30104         </parameters>
30105       </method>
30106       <method name="enable_model_drag_dest"
30107               c:identifier="gtk_icon_view_enable_model_drag_dest"
30108               version="2.8">
30109         <doc xml:whitespace="preserve">Turns @icon_view into a drop destination for automatic DND. Calling this
30110 method sets #GtkIconView:reorderable to %FALSE.</doc>
30111         <return-value transfer-ownership="none">
30112           <type name="none" c:type="void"/>
30113         </return-value>
30114         <parameters>
30115           <parameter name="targets" transfer-ownership="none">
30116             <doc xml:whitespace="preserve">the table of targets that the drag will support</doc>
30117             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
30118           </parameter>
30119           <parameter name="n_targets" transfer-ownership="none">
30120             <doc xml:whitespace="preserve">the number of items in @targets</doc>
30121             <type name="int" c:type="gint"/>
30122           </parameter>
30123           <parameter name="actions" transfer-ownership="none">
30124             <doc xml:whitespace="preserve">the bitmask of possible actions for a drag to this widget</doc>
30125             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
30126           </parameter>
30127         </parameters>
30128       </method>
30129       <method name="unset_model_drag_source"
30130               c:identifier="gtk_icon_view_unset_model_drag_source"
30131               version="2.8">
30132         <doc xml:whitespace="preserve">Undoes the effect of gtk_icon_view_enable_model_drag_source(). Calling this
30133 method sets #GtkIconView:reorderable to %FALSE.</doc>
30134         <return-value transfer-ownership="none">
30135           <type name="none" c:type="void"/>
30136         </return-value>
30137       </method>
30138       <method name="unset_model_drag_dest"
30139               c:identifier="gtk_icon_view_unset_model_drag_dest"
30140               version="2.8">
30141         <doc xml:whitespace="preserve">Undoes the effect of gtk_icon_view_enable_model_drag_dest(). Calling this
30142 method sets #GtkIconView:reorderable to %FALSE.</doc>
30143         <return-value transfer-ownership="none">
30144           <type name="none" c:type="void"/>
30145         </return-value>
30146       </method>
30147       <method name="set_reorderable"
30148               c:identifier="gtk_icon_view_set_reorderable"
30149               version="2.8">
30150         <doc xml:whitespace="preserve">This function is a convenience function to allow you to reorder models that
30151 support the #GtkTreeDragSourceIface and the #GtkTreeDragDestIface.  Both
30152 #GtkTreeStore and #GtkListStore support these.  If @reorderable is %TRUE, then
30153 the user can reorder the model by dragging and dropping rows.  The
30154 developer can listen to these changes by connecting to the model's
30155 row_inserted and row_deleted signals. The reordering is implemented by setting up
30156 the icon view as a drag source and destination. Therefore, drag and
30157 drop can not be used in a reorderable view for any other purpose.
30158 This function does not give you any degree of control over the order -- any
30159 reordering is allowed.  If more control is needed, you should probably
30160 handle drag and drop manually.</doc>
30161         <return-value transfer-ownership="none">
30162           <type name="none" c:type="void"/>
30163         </return-value>
30164         <parameters>
30165           <parameter name="reorderable" transfer-ownership="none">
30166             <doc xml:whitespace="preserve">%TRUE, if the list of items can be reordered.</doc>
30167             <type name="boolean" c:type="gboolean"/>
30168           </parameter>
30169         </parameters>
30170       </method>
30171       <method name="get_reorderable"
30172               c:identifier="gtk_icon_view_get_reorderable"
30173               version="2.8">
30174         <doc xml:whitespace="preserve">Retrieves whether the user can reorder the list via drag-and-drop. 
30175 See gtk_icon_view_set_reorderable().</doc>
30176         <return-value transfer-ownership="none">
30177           <doc xml:whitespace="preserve">%TRUE if the list can be reordered.</doc>
30178           <type name="boolean" c:type="gboolean"/>
30179         </return-value>
30180       </method>
30181       <method name="set_drag_dest_item"
30182               c:identifier="gtk_icon_view_set_drag_dest_item"
30183               version="2.8">
30184         <doc xml:whitespace="preserve">Sets the item that is highlighted for feedback.</doc>
30185         <return-value transfer-ownership="none">
30186           <type name="none" c:type="void"/>
30187         </return-value>
30188         <parameters>
30189           <parameter name="path" transfer-ownership="none" allow-none="1">
30190             <doc xml:whitespace="preserve">The path of the item to highlight, or %NULL.</doc>
30191             <type name="TreePath" c:type="GtkTreePath*"/>
30192           </parameter>
30193           <parameter name="pos" transfer-ownership="none">
30194             <doc xml:whitespace="preserve">Specifies where to drop, relative to the item</doc>
30195             <type name="IconViewDropPosition"
30196                   c:type="GtkIconViewDropPosition"/>
30197           </parameter>
30198         </parameters>
30199       </method>
30200       <method name="get_drag_dest_item"
30201               c:identifier="gtk_icon_view_get_drag_dest_item"
30202               version="2.8">
30203         <doc xml:whitespace="preserve">Gets information about the item that is highlighted for feedback.</doc>
30204         <return-value transfer-ownership="none">
30205           <type name="none" c:type="void"/>
30206         </return-value>
30207         <parameters>
30208           <parameter name="path" transfer-ownership="none" allow-none="1">
30209             <doc xml:whitespace="preserve">Return location for the path of the highlighted item, or %NULL.</doc>
30210             <type name="TreePath" c:type="GtkTreePath**"/>
30211           </parameter>
30212           <parameter name="pos" transfer-ownership="none" allow-none="1">
30213             <doc xml:whitespace="preserve">Return location for the drop position, or %NULL</doc>
30214             <type name="IconViewDropPosition"
30215                   c:type="GtkIconViewDropPosition*"/>
30216           </parameter>
30217         </parameters>
30218       </method>
30219       <method name="get_dest_item_at_pos"
30220               c:identifier="gtk_icon_view_get_dest_item_at_pos"
30221               version="2.8">
30222         <doc xml:whitespace="preserve">Determines the destination item for a given position.</doc>
30223         <return-value transfer-ownership="none">
30224           <doc xml:whitespace="preserve">whether there is an item at the given position.</doc>
30225           <type name="boolean" c:type="gboolean"/>
30226         </return-value>
30227         <parameters>
30228           <parameter name="drag_x" transfer-ownership="none">
30229             <doc xml:whitespace="preserve">the position to determine the destination item for</doc>
30230             <type name="int" c:type="gint"/>
30231           </parameter>
30232           <parameter name="drag_y" transfer-ownership="none">
30233             <doc xml:whitespace="preserve">the position to determine the destination item for</doc>
30234             <type name="int" c:type="gint"/>
30235           </parameter>
30236           <parameter name="path" transfer-ownership="none" allow-none="1">
30237             <doc xml:whitespace="preserve">Return location for the path of the item, or %NULL.</doc>
30238             <type name="TreePath" c:type="GtkTreePath**"/>
30239           </parameter>
30240           <parameter name="pos" transfer-ownership="none" allow-none="1">
30241             <doc xml:whitespace="preserve">Return location for the drop position, or %NULL</doc>
30242             <type name="IconViewDropPosition"
30243                   c:type="GtkIconViewDropPosition*"/>
30244           </parameter>
30245         </parameters>
30246       </method>
30247       <method name="create_drag_icon"
30248               c:identifier="gtk_icon_view_create_drag_icon"
30249               version="2.8">
30250         <doc xml:whitespace="preserve">Creates a #GdkPixmap representation of the item at @path.  
30251 This image is used for a drag icon.</doc>
30252         <return-value transfer-ownership="full">
30253           <doc xml:whitespace="preserve">a newly-allocated pixmap of the drag icon.</doc>
30254           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
30255         </return-value>
30256         <parameters>
30257           <parameter name="path" transfer-ownership="none">
30258             <doc xml:whitespace="preserve">a #GtkTreePath in @icon_view</doc>
30259             <type name="TreePath" c:type="GtkTreePath*"/>
30260           </parameter>
30261         </parameters>
30262       </method>
30263       <method name="convert_widget_to_bin_window_coords"
30264               c:identifier="gtk_icon_view_convert_widget_to_bin_window_coords"
30265               version="2.12">
30266         <doc xml:whitespace="preserve">Converts widget coordinates to coordinates for the bin_window,
30267 as expected by e.g. gtk_icon_view_get_path_at_pos().</doc>
30268         <return-value transfer-ownership="none">
30269           <type name="none" c:type="void"/>
30270         </return-value>
30271         <parameters>
30272           <parameter name="wx" transfer-ownership="none">
30273             <doc xml:whitespace="preserve">X coordinate relative to the widget</doc>
30274             <type name="int" c:type="gint"/>
30275           </parameter>
30276           <parameter name="wy" transfer-ownership="none">
30277             <doc xml:whitespace="preserve">Y coordinate relative to the widget</doc>
30278             <type name="int" c:type="gint"/>
30279           </parameter>
30280           <parameter name="bx"
30281                      direction="out"
30282                      caller-allocates="0"
30283                      transfer-ownership="full">
30284             <doc xml:whitespace="preserve">return location for bin_window X coordinate</doc>
30285             <type name="int" c:type="gint*"/>
30286           </parameter>
30287           <parameter name="by"
30288                      direction="out"
30289                      caller-allocates="0"
30290                      transfer-ownership="full">
30291             <doc xml:whitespace="preserve">return location for bin_window Y coordinate</doc>
30292             <type name="int" c:type="gint*"/>
30293           </parameter>
30294         </parameters>
30295       </method>
30296       <method name="set_tooltip_item"
30297               c:identifier="gtk_icon_view_set_tooltip_item"
30298               version="2.12">
30299         <doc xml:whitespace="preserve">Sets the tip area of @tooltip to be the area covered by the item at @path.
30300 See also gtk_icon_view_set_tooltip_column() for a simpler alternative.
30301 See also gtk_tooltip_set_tip_area().</doc>
30302         <return-value transfer-ownership="none">
30303           <type name="none" c:type="void"/>
30304         </return-value>
30305         <parameters>
30306           <parameter name="tooltip" transfer-ownership="none">
30307             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
30308             <type name="Tooltip" c:type="GtkTooltip*"/>
30309           </parameter>
30310           <parameter name="path" transfer-ownership="none">
30311             <doc xml:whitespace="preserve">a #GtkTreePath</doc>
30312             <type name="TreePath" c:type="GtkTreePath*"/>
30313           </parameter>
30314         </parameters>
30315       </method>
30316       <method name="set_tooltip_cell"
30317               c:identifier="gtk_icon_view_set_tooltip_cell"
30318               version="2.12">
30319         <doc xml:whitespace="preserve">Sets the tip area of @tooltip to the area which @cell occupies in
30320 the item pointed to by @path. See also gtk_tooltip_set_tip_area().
30321 See also gtk_icon_view_set_tooltip_column() for a simpler alternative.</doc>
30322         <return-value transfer-ownership="none">
30323           <type name="none" c:type="void"/>
30324         </return-value>
30325         <parameters>
30326           <parameter name="tooltip" transfer-ownership="none">
30327             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
30328             <type name="Tooltip" c:type="GtkTooltip*"/>
30329           </parameter>
30330           <parameter name="path" transfer-ownership="none">
30331             <doc xml:whitespace="preserve">a #GtkTreePath</doc>
30332             <type name="TreePath" c:type="GtkTreePath*"/>
30333           </parameter>
30334           <parameter name="cell" transfer-ownership="none" allow-none="1">
30335             <doc xml:whitespace="preserve">a #GtkCellRenderer or %NULL</doc>
30336             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
30337           </parameter>
30338         </parameters>
30339       </method>
30340       <method name="get_tooltip_context"
30341               c:identifier="gtk_icon_view_get_tooltip_context"
30342               version="2.12">
30343         <doc xml:whitespace="preserve">This function is supposed to be used in a #GtkWidget::query-tooltip
30344 signal handler for #GtkIconView.  The @x, @y and @keyboard_tip values
30345 which are received in the signal handler, should be passed to this
30346 function without modification.
30347 The return value indicates whether there is an icon view item at the given
30348 coordinates (%TRUE) or not (%FALSE) for mouse tooltips. For keyboard
30349 tooltips the item returned will be the cursor item. When %TRUE, then any of
30350 that row and the corresponding model. @x and @y will always be converted
30351 to be relative to @icon_view's bin_window if @keyboard_tooltip is %FALSE.</doc>
30352         <return-value transfer-ownership="none">
30353           <doc xml:whitespace="preserve">whether or not the given tooltip context points to a item</doc>
30354           <type name="boolean" c:type="gboolean"/>
30355         </return-value>
30356         <parameters>
30357           <parameter name="x"
30358                      direction="out"
30359                      caller-allocates="0"
30360                      transfer-ownership="full">
30361             <doc xml:whitespace="preserve">the x coordinate (relative to widget coordinates)</doc>
30362             <type name="int" c:type="gint*"/>
30363           </parameter>
30364           <parameter name="y"
30365                      direction="out"
30366                      caller-allocates="0"
30367                      transfer-ownership="full">
30368             <doc xml:whitespace="preserve">the y coordinate (relative to widget coordinates)</doc>
30369             <type name="int" c:type="gint*"/>
30370           </parameter>
30371           <parameter name="keyboard_tip" transfer-ownership="none">
30372             <doc xml:whitespace="preserve">whether this is a keyboard tooltip or not</doc>
30373             <type name="boolean" c:type="gboolean"/>
30374           </parameter>
30375           <parameter name="model" transfer-ownership="none" allow-none="1">
30376             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreeModel or %NULL</doc>
30377             <type name="TreeModel" c:type="GtkTreeModel**"/>
30378           </parameter>
30379           <parameter name="path" transfer-ownership="none" allow-none="1">
30380             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreePath or %NULL</doc>
30381             <type name="TreePath" c:type="GtkTreePath**"/>
30382           </parameter>
30383           <parameter name="iter" transfer-ownership="none" allow-none="1">
30384             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreeIter or %NULL</doc>
30385             <type name="TreeIter" c:type="GtkTreeIter*"/>
30386           </parameter>
30387         </parameters>
30388       </method>
30389       <method name="set_tooltip_column"
30390               c:identifier="gtk_icon_view_set_tooltip_column"
30391               version="2.12">
30392         <doc xml:whitespace="preserve">If you only plan to have simple (text-only) tooltips on full items, you
30393 can use this function to have #GtkIconView handle these automatically
30394 for you. @column should be set to the column in @icon_view's model
30395 containing the tooltip texts, or -1 to disable this feature.
30396 When enabled, #GtkWidget::has-tooltip will be set to %TRUE and</doc>
30397         <return-value transfer-ownership="none">
30398           <type name="none" c:type="void"/>
30399         </return-value>
30400         <parameters>
30401           <parameter name="column" transfer-ownership="none">
30402             <doc xml:whitespace="preserve">an integer, which is a valid column number for @icon_view's model</doc>
30403             <type name="int" c:type="gint"/>
30404           </parameter>
30405         </parameters>
30406       </method>
30407       <method name="get_tooltip_column"
30408               c:identifier="gtk_icon_view_get_tooltip_column">
30409         <return-value transfer-ownership="none">
30410           <type name="int" c:type="gint"/>
30411         </return-value>
30412       </method>
30413       <property name="column-spacing"
30414                 version="2.6"
30415                 writable="1"
30416                 transfer-ownership="none">
30417         <doc xml:whitespace="preserve">The column-spacing property specifies the space which is inserted between
30418 the columns of the icon view.</doc>
30419         <type name="int" c:type="gint"/>
30420       </property>
30421       <property name="columns"
30422                 version="2.6"
30423                 writable="1"
30424                 transfer-ownership="none">
30425         <doc xml:whitespace="preserve">The columns property contains the number of the columns in which the
30426 items should be displayed. If it is -1, the number of columns will
30427 be chosen automatically to fill the available area.</doc>
30428         <type name="int" c:type="gint"/>
30429       </property>
30430       <property name="item-padding"
30431                 version="2.18"
30432                 writable="1"
30433                 transfer-ownership="none">
30434         <doc xml:whitespace="preserve">The item-padding property specifies the padding around each
30435 of the icon view's item.</doc>
30436         <type name="int" c:type="gint"/>
30437       </property>
30438       <property name="item-width"
30439                 version="2.6"
30440                 writable="1"
30441                 transfer-ownership="none">
30442         <doc xml:whitespace="preserve">The item-width property specifies the width to use for each item. 
30443 If it is set to -1, the icon view will automatically determine a 
30444 suitable item size.</doc>
30445         <type name="int" c:type="gint"/>
30446       </property>
30447       <property name="margin"
30448                 version="2.6"
30449                 writable="1"
30450                 transfer-ownership="none">
30451         <doc xml:whitespace="preserve">The margin property specifies the space which is inserted 
30452 at the edges of the icon view.</doc>
30453         <type name="int" c:type="gint"/>
30454       </property>
30455       <property name="markup-column"
30456                 version="2.6"
30457                 writable="1"
30458                 transfer-ownership="none">
30459         <doc xml:whitespace="preserve">The ::markup-column property contains the number of the model column
30460 containing markup information to be displayed. The markup column must be 
30461 of type #G_TYPE_STRING. If this property and the :text-column property 
30462 are both set to column numbers, it overrides the text column.
30463 If both are set to -1, no texts are displayed.</doc>
30464         <type name="int" c:type="gint"/>
30465       </property>
30466       <property name="model" writable="1" transfer-ownership="none">
30467         <type name="TreeModel" c:type="GtkTreeModel"/>
30468       </property>
30469       <property name="orientation"
30470                 version="2.6"
30471                 writable="1"
30472                 transfer-ownership="none">
30473         <doc xml:whitespace="preserve">The orientation property specifies how the cells (i.e. the icon and 
30474 the text) of the item are positioned relative to each other.</doc>
30475         <type name="Orientation" c:type="GtkOrientation"/>
30476       </property>
30477       <property name="pixbuf-column"
30478                 version="2.6"
30479                 writable="1"
30480                 transfer-ownership="none">
30481         <doc xml:whitespace="preserve">The ::pixbuf-column property contains the number of the model column
30482 containing the pixbufs which are displayed. The pixbuf column must be 
30483 of type #GDK_TYPE_PIXBUF. Setting this property to -1 turns off the
30484 display of pixbufs.</doc>
30485         <type name="int" c:type="gint"/>
30486       </property>
30487       <property name="reorderable"
30488                 version="2.8"
30489                 writable="1"
30490                 transfer-ownership="none">
30491         <doc xml:whitespace="preserve">The reorderable property specifies if the items can be reordered
30492 by DND.</doc>
30493         <type name="boolean" c:type="gboolean"/>
30494       </property>
30495       <property name="row-spacing"
30496                 version="2.6"
30497                 writable="1"
30498                 transfer-ownership="none">
30499         <doc xml:whitespace="preserve">The row-spacing property specifies the space which is inserted between
30500 the rows of the icon view.</doc>
30501         <type name="int" c:type="gint"/>
30502       </property>
30503       <property name="selection-mode"
30504                 version="2.6"
30505                 writable="1"
30506                 transfer-ownership="none">
30507         <doc xml:whitespace="preserve">The ::selection-mode property specifies the selection mode of
30508 icon view. If the mode is #GTK_SELECTION_MULTIPLE, rubberband selection
30509 is enabled, for the other modes, only keyboard selection is possible.</doc>
30510         <type name="SelectionMode" c:type="GtkSelectionMode"/>
30511       </property>
30512       <property name="spacing"
30513                 version="2.6"
30514                 writable="1"
30515                 transfer-ownership="none">
30516         <doc xml:whitespace="preserve">The spacing property specifies the space which is inserted between
30517 the cells (i.e. the icon and the text) of an item.</doc>
30518         <type name="int" c:type="gint"/>
30519       </property>
30520       <property name="text-column"
30521                 version="2.6"
30522                 writable="1"
30523                 transfer-ownership="none">
30524         <doc xml:whitespace="preserve">The ::text-column property contains the number of the model column
30525 containing the texts which are displayed. The text column must be 
30526 of type #G_TYPE_STRING. If this property and the :markup-column 
30527 property are both set to -1, no texts are displayed.</doc>
30528         <type name="int" c:type="gint"/>
30529       </property>
30530       <property name="tooltip-column" writable="1" transfer-ownership="none">
30531         <type name="int" c:type="gint"/>
30532       </property>
30533       <field name="parent">
30534         <type name="Container" c:type="GtkContainer"/>
30535       </field>
30536       <field name="priv">
30537         <type name="IconViewPrivate" c:type="GtkIconViewPrivate*"/>
30538       </field>
30539       <glib:signal name="activate-cursor-item">
30540         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
30541 which gets emitted when the user activates the currently 
30542 focused item. 
30543 Applications should not connect to it, but may emit it with
30544 g_signal_emit_by_name() if they need to control activation
30545 programmatically.
30546 The default bindings for this signal are Space, Return and Enter.</doc>
30547         <return-value transfer-ownership="full">
30548           <type name="boolean" c:type="gboolean"/>
30549         </return-value>
30550       </glib:signal>
30551       <glib:signal name="item-activated">
30552         <doc xml:whitespace="preserve">The ::item-activated signal is emitted when the method
30553 gtk_icon_view_item_activated() is called or the user double 
30554 clicks an item. It is also emitted when a non-editable item
30555 pressed.</doc>
30556         <return-value transfer-ownership="full">
30557           <type name="none" c:type="void"/>
30558         </return-value>
30559         <parameters>
30560           <parameter name="path" transfer-ownership="none">
30561             <doc xml:whitespace="preserve">the #GtkTreePath for the activated item</doc>
30562             <type name="TreePath" c:type="GtkTreePath"/>
30563           </parameter>
30564         </parameters>
30565       </glib:signal>
30566       <glib:signal name="move-cursor">
30567         <doc xml:whitespace="preserve">The ::move-cursor signal is a
30568 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
30569 which gets emitted when the user initiates a cursor movement.
30570 Applications should not connect to it, but may emit it with
30571 g_signal_emit_by_name() if they need to control the cursor
30572 programmatically.
30573 The default bindings for this signal include
30574 &lt;itemizedlist&gt;
30575 &lt;listitem&gt;Arrow keys which move by individual steps&lt;/listitem&gt;
30576 &lt;listitem&gt;Home/End keys which move to the first/last item&lt;/listitem&gt;
30577 &lt;listitem&gt;PageUp/PageDown which move by "pages"&lt;/listitem&gt;
30578 &lt;/itemizedlist&gt;
30579 All of these will extend the selection when combined with
30580 the Shift modifier.</doc>
30581         <return-value transfer-ownership="full">
30582           <type name="boolean" c:type="gboolean"/>
30583         </return-value>
30584         <parameters>
30585           <parameter name="step" transfer-ownership="none">
30586             <doc xml:whitespace="preserve">the granularity of the move, as a #GtkMovementStep</doc>
30587             <type name="MovementStep" c:type="GtkMovementStep"/>
30588           </parameter>
30589           <parameter name="count" transfer-ownership="none">
30590             <doc xml:whitespace="preserve">the number of @step units to move</doc>
30591             <type name="int" c:type="gint"/>
30592           </parameter>
30593         </parameters>
30594       </glib:signal>
30595       <glib:signal name="select-all">
30596         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
30597 which gets emitted when the user selects all items.
30598 Applications should not connect to it, but may emit it with
30599 g_signal_emit_by_name() if they need to control selection
30600 programmatically.
30601 The default binding for this signal is Ctrl-a.</doc>
30602         <return-value transfer-ownership="full">
30603           <type name="none" c:type="void"/>
30604         </return-value>
30605       </glib:signal>
30606       <glib:signal name="select-cursor-item">
30607         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
30608 which gets emitted when the user selects the item that is currently
30609 focused.
30610 Applications should not connect to it, but may emit it with
30611 g_signal_emit_by_name() if they need to control selection
30612 programmatically.
30613 There is no default binding for this signal.</doc>
30614         <return-value transfer-ownership="full">
30615           <type name="none" c:type="void"/>
30616         </return-value>
30617       </glib:signal>
30618       <glib:signal name="selection-changed">
30619         <doc xml:whitespace="preserve">The ::selection-changed signal is emitted when the selection
30620 (i.e. the set of selected items) changes.</doc>
30621         <return-value transfer-ownership="full">
30622           <type name="none" c:type="void"/>
30623         </return-value>
30624       </glib:signal>
30625       <glib:signal name="set-scroll-adjustments">
30626         <return-value transfer-ownership="full">
30627           <type name="none" c:type="void"/>
30628         </return-value>
30629         <parameters>
30630           <parameter name="object" transfer-ownership="none">
30631             <type name="Adjustment" c:type="GtkAdjustment"/>
30632           </parameter>
30633           <parameter name="p0" transfer-ownership="none">
30634             <type name="Adjustment" c:type="GtkAdjustment"/>
30635           </parameter>
30636         </parameters>
30637       </glib:signal>
30638       <glib:signal name="toggle-cursor-item">
30639         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
30640 which gets emitted when the user toggles whether the currently
30641 focused item is selected or not. The exact effect of this 
30642 depend on the selection mode.
30643 Applications should not connect to it, but may emit it with
30644 g_signal_emit_by_name() if they need to control selection
30645 programmatically.
30646 There is no default binding for this signal is Ctrl-Space.</doc>
30647         <return-value transfer-ownership="full">
30648           <type name="none" c:type="void"/>
30649         </return-value>
30650       </glib:signal>
30651       <glib:signal name="unselect-all">
30652         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
30653 which gets emitted when the user unselects all items.
30654 Applications should not connect to it, but may emit it with
30655 g_signal_emit_by_name() if they need to control selection
30656 programmatically.
30657 The default binding for this signal is Ctrl-Shift-a.</doc>
30658         <return-value transfer-ownership="full">
30659           <type name="none" c:type="void"/>
30660         </return-value>
30661       </glib:signal>
30662     </class>
30663     <record name="IconViewClass"
30664             c:type="GtkIconViewClass"
30665             glib:is-gtype-struct-for="IconView">
30666       <field name="parent_class">
30667         <type name="ContainerClass" c:type="GtkContainerClass"/>
30668       </field>
30669       <field name="set_scroll_adjustments">
30670         <callback name="set_scroll_adjustments"
30671                   c:type="set_scroll_adjustments">
30672           <return-value transfer-ownership="none">
30673             <type name="none" c:type="void"/>
30674           </return-value>
30675           <parameters>
30676             <parameter name="icon_view" transfer-ownership="none">
30677               <type name="IconView" c:type="GtkIconView*"/>
30678             </parameter>
30679             <parameter name="hadjustment" transfer-ownership="none">
30680               <type name="Adjustment" c:type="GtkAdjustment*"/>
30681             </parameter>
30682             <parameter name="vadjustment" transfer-ownership="none">
30683               <type name="Adjustment" c:type="GtkAdjustment*"/>
30684             </parameter>
30685           </parameters>
30686         </callback>
30687       </field>
30688       <field name="item_activated">
30689         <callback name="item_activated" c:type="item_activated">
30690           <return-value transfer-ownership="none">
30691             <type name="none" c:type="void"/>
30692           </return-value>
30693           <parameters>
30694             <parameter name="icon_view" transfer-ownership="none">
30695               <type name="IconView" c:type="GtkIconView*"/>
30696             </parameter>
30697             <parameter name="path" transfer-ownership="none">
30698               <type name="TreePath" c:type="GtkTreePath*"/>
30699             </parameter>
30700           </parameters>
30701         </callback>
30702       </field>
30703       <field name="selection_changed">
30704         <callback name="selection_changed" c:type="selection_changed">
30705           <return-value transfer-ownership="none">
30706             <type name="none" c:type="void"/>
30707           </return-value>
30708           <parameters>
30709             <parameter name="icon_view" transfer-ownership="none">
30710               <type name="IconView" c:type="GtkIconView*"/>
30711             </parameter>
30712           </parameters>
30713         </callback>
30714       </field>
30715       <field name="select_all">
30716         <callback name="select_all" c:type="select_all">
30717           <return-value transfer-ownership="none">
30718             <type name="none" c:type="void"/>
30719           </return-value>
30720           <parameters>
30721             <parameter name="icon_view" transfer-ownership="none">
30722               <type name="IconView" c:type="GtkIconView*"/>
30723             </parameter>
30724           </parameters>
30725         </callback>
30726       </field>
30727       <field name="unselect_all">
30728         <callback name="unselect_all" c:type="unselect_all">
30729           <return-value transfer-ownership="none">
30730             <type name="none" c:type="void"/>
30731           </return-value>
30732           <parameters>
30733             <parameter name="icon_view" transfer-ownership="none">
30734               <type name="IconView" c:type="GtkIconView*"/>
30735             </parameter>
30736           </parameters>
30737         </callback>
30738       </field>
30739       <field name="select_cursor_item">
30740         <callback name="select_cursor_item" c:type="select_cursor_item">
30741           <return-value transfer-ownership="none">
30742             <type name="none" c:type="void"/>
30743           </return-value>
30744           <parameters>
30745             <parameter name="icon_view" transfer-ownership="none">
30746               <type name="IconView" c:type="GtkIconView*"/>
30747             </parameter>
30748           </parameters>
30749         </callback>
30750       </field>
30751       <field name="toggle_cursor_item">
30752         <callback name="toggle_cursor_item" c:type="toggle_cursor_item">
30753           <return-value transfer-ownership="none">
30754             <type name="none" c:type="void"/>
30755           </return-value>
30756           <parameters>
30757             <parameter name="icon_view" transfer-ownership="none">
30758               <type name="IconView" c:type="GtkIconView*"/>
30759             </parameter>
30760           </parameters>
30761         </callback>
30762       </field>
30763       <field name="move_cursor">
30764         <callback name="move_cursor" c:type="move_cursor">
30765           <return-value transfer-ownership="none">
30766             <type name="boolean" c:type="gboolean"/>
30767           </return-value>
30768           <parameters>
30769             <parameter name="icon_view" transfer-ownership="none">
30770               <type name="IconView" c:type="GtkIconView*"/>
30771             </parameter>
30772             <parameter name="step" transfer-ownership="none">
30773               <type name="MovementStep" c:type="GtkMovementStep"/>
30774             </parameter>
30775             <parameter name="count" transfer-ownership="none">
30776               <type name="int" c:type="gint"/>
30777             </parameter>
30778           </parameters>
30779         </callback>
30780       </field>
30781       <field name="activate_cursor_item">
30782         <callback name="activate_cursor_item" c:type="activate_cursor_item">
30783           <return-value transfer-ownership="none">
30784             <type name="boolean" c:type="gboolean"/>
30785           </return-value>
30786           <parameters>
30787             <parameter name="icon_view" transfer-ownership="none">
30788               <type name="IconView" c:type="GtkIconView*"/>
30789             </parameter>
30790           </parameters>
30791         </callback>
30792       </field>
30793     </record>
30794     <enumeration name="IconViewDropPosition"
30795                  glib:type-name="GtkIconViewDropPosition"
30796                  glib:get-type="gtk_icon_view_drop_position_get_type"
30797                  c:type="GtkIconViewDropPosition">
30798       <member name="no_drop"
30799               value="0"
30800               c:identifier="GTK_ICON_VIEW_NO_DROP"
30801               glib:nick="no-drop"/>
30802       <member name="drop_into"
30803               value="1"
30804               c:identifier="GTK_ICON_VIEW_DROP_INTO"
30805               glib:nick="drop-into"/>
30806       <member name="drop_left"
30807               value="2"
30808               c:identifier="GTK_ICON_VIEW_DROP_LEFT"
30809               glib:nick="drop-left"/>
30810       <member name="drop_right"
30811               value="3"
30812               c:identifier="GTK_ICON_VIEW_DROP_RIGHT"
30813               glib:nick="drop-right"/>
30814       <member name="drop_above"
30815               value="4"
30816               c:identifier="GTK_ICON_VIEW_DROP_ABOVE"
30817               glib:nick="drop-above"/>
30818       <member name="drop_below"
30819               value="5"
30820               c:identifier="GTK_ICON_VIEW_DROP_BELOW"
30821               glib:nick="drop-below"/>
30822     </enumeration>
30823     <callback name="IconViewForeachFunc" c:type="GtkIconViewForeachFunc">
30824       <return-value transfer-ownership="none">
30825         <type name="none" c:type="void"/>
30826       </return-value>
30827       <parameters>
30828         <parameter name="icon_view" transfer-ownership="none">
30829           <type name="IconView" c:type="GtkIconView*"/>
30830         </parameter>
30831         <parameter name="path" transfer-ownership="none">
30832           <type name="TreePath" c:type="GtkTreePath*"/>
30833         </parameter>
30834         <parameter name="data" transfer-ownership="none">
30835           <type name="any" c:type="gpointer"/>
30836         </parameter>
30837       </parameters>
30838     </callback>
30839     <record name="IconViewPrivate" c:type="GtkIconViewPrivate">
30840     </record>
30841     <class name="Image"
30842            c:type="GtkImage"
30843            parent="Misc"
30844            glib:type-name="GtkImage"
30845            glib:get-type="gtk_image_get_type"
30846            glib:type-struct="ImageClass">
30847       <doc xml:whitespace="preserve">This struct contain private data only and should be accessed by the functions
30848 below.</doc>
30849       <implements name="Atk.ImplementorIface"/>
30850       <implements name="Buildable"/>
30851       <constructor name="new" c:identifier="gtk_image_new">
30852         <doc xml:whitespace="preserve">Creates a new empty #GtkImage widget.</doc>
30853         <return-value transfer-ownership="full">
30854           <doc xml:whitespace="preserve">a newly created #GtkImage widget.</doc>
30855           <type name="Image" c:type="GtkWidget*"/>
30856         </return-value>
30857       </constructor>
30858       <constructor name="new_from_pixmap"
30859                    c:identifier="gtk_image_new_from_pixmap">
30860         <doc xml:whitespace="preserve">Creates a #GtkImage widget displaying @pixmap with a @mask.
30861 A #GdkPixmap is a server-side image buffer in the pixel format of the
30862 current display. The #GtkImage does not assume a reference to the
30863 pixmap or mask; you still need to unref them if you own references.
30864 #GtkImage will add its own reference rather than adopting yours.</doc>
30865         <return-value transfer-ownership="full">
30866           <doc xml:whitespace="preserve">a new #GtkImage</doc>
30867           <type name="Image" c:type="GtkWidget*"/>
30868         </return-value>
30869         <parameters>
30870           <parameter name="pixmap" transfer-ownership="none" allow-none="1">
30871             <doc xml:whitespace="preserve">a #GdkPixmap, or %NULL</doc>
30872             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
30873           </parameter>
30874           <parameter name="mask" transfer-ownership="none" allow-none="1">
30875             <doc xml:whitespace="preserve">a #GdkBitmap, or %NULL</doc>
30876             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
30877           </parameter>
30878         </parameters>
30879       </constructor>
30880       <constructor name="new_from_image"
30881                    c:identifier="gtk_image_new_from_image">
30882         <doc xml:whitespace="preserve">Creates a #GtkImage widget displaying a @image with a @mask.
30883 A #GdkImage is a client-side image buffer in the pixel format of the
30884 current display. The #GtkImage does not assume a reference to the
30885 image or mask; you still need to unref them if you own references.
30886 #GtkImage will add its own reference rather than adopting yours.</doc>
30887         <return-value transfer-ownership="full">
30888           <doc xml:whitespace="preserve">a new #GtkImage</doc>
30889           <type name="Image" c:type="GtkWidget*"/>
30890         </return-value>
30891         <parameters>
30892           <parameter name="image" transfer-ownership="none" allow-none="1">
30893             <doc xml:whitespace="preserve">a #GdkImage, or %NULL</doc>
30894             <type name="Gdk.Image" c:type="GdkImage*"/>
30895           </parameter>
30896           <parameter name="mask" transfer-ownership="none" allow-none="1">
30897             <doc xml:whitespace="preserve">a #GdkBitmap, or %NULL</doc>
30898             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
30899           </parameter>
30900         </parameters>
30901       </constructor>
30902       <constructor name="new_from_file" c:identifier="gtk_image_new_from_file">
30903         <doc xml:whitespace="preserve">Creates a new #GtkImage displaying the file @filename. If the file
30904 isn't found or can't be loaded, the resulting #GtkImage will
30905 display a "broken image" icon. This function never returns %NULL,
30906 it always returns a valid #GtkImage widget.
30907 If the file contains an animation, the image will contain an
30908 animation.
30909 If you need to detect failures to load the file, use
30910 gdk_pixbuf_new_from_file() to load the file yourself, then create
30911 the #GtkImage from the pixbuf. (Or for animations, use
30912 gdk_pixbuf_animation_new_from_file()).
30913 The storage type (gtk_image_get_storage_type()) of the returned
30914 image is not defined, it will be whatever is appropriate for
30915 displaying the file.</doc>
30916         <return-value transfer-ownership="full">
30917           <doc xml:whitespace="preserve">a new #GtkImage</doc>
30918           <type name="Image" c:type="GtkWidget*"/>
30919         </return-value>
30920         <parameters>
30921           <parameter name="filename" transfer-ownership="none">
30922             <doc xml:whitespace="preserve">a filename</doc>
30923             <type name="utf8" c:type="gchar*"/>
30924           </parameter>
30925         </parameters>
30926       </constructor>
30927       <constructor name="new_from_pixbuf"
30928                    c:identifier="gtk_image_new_from_pixbuf">
30929         <doc xml:whitespace="preserve">Creates a new #GtkImage displaying @pixbuf.
30930 The #GtkImage does not assume a reference to the
30931 pixbuf; you still need to unref it if you own references.
30932 #GtkImage will add its own reference rather than adopting yours.
30933 Note that this function just creates an #GtkImage from the pixbuf. The
30934 #GtkImage created will not react to state changes. Should you want that, 
30935 you should use gtk_image_new_from_icon_set().</doc>
30936         <return-value transfer-ownership="full">
30937           <doc xml:whitespace="preserve">a new #GtkImage</doc>
30938           <type name="Image" c:type="GtkWidget*"/>
30939         </return-value>
30940         <parameters>
30941           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
30942             <doc xml:whitespace="preserve">a #GdkPixbuf, or %NULL</doc>
30943             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
30944           </parameter>
30945         </parameters>
30946       </constructor>
30947       <constructor name="new_from_stock"
30948                    c:identifier="gtk_image_new_from_stock">
30949         <doc xml:whitespace="preserve">Creates a #GtkImage displaying a stock icon. Sample stock icon
30950 names are #GTK_STOCK_OPEN, #GTK_STOCK_QUIT. Sample stock sizes
30951 are #GTK_ICON_SIZE_MENU, #GTK_ICON_SIZE_SMALL_TOOLBAR. If the stock
30952 icon name isn't known, the image will be empty.
30953 You can register your own stock icon names, see
30954 gtk_icon_factory_add_default() and gtk_icon_factory_add().</doc>
30955         <return-value transfer-ownership="full">
30956           <doc xml:whitespace="preserve">a new #GtkImage displaying the stock icon</doc>
30957           <type name="Image" c:type="GtkWidget*"/>
30958         </return-value>
30959         <parameters>
30960           <parameter name="stock_id" transfer-ownership="none">
30961             <doc xml:whitespace="preserve">a stock icon name</doc>
30962             <type name="utf8" c:type="gchar*"/>
30963           </parameter>
30964           <parameter name="size" transfer-ownership="none">
30965             <doc xml:whitespace="preserve">a stock icon size</doc>
30966             <type name="int" c:type="GtkIconSize"/>
30967           </parameter>
30968         </parameters>
30969       </constructor>
30970       <constructor name="new_from_icon_set"
30971                    c:identifier="gtk_image_new_from_icon_set">
30972         <doc xml:whitespace="preserve">Creates a #GtkImage displaying an icon set. Sample stock sizes are
30973 #GTK_ICON_SIZE_MENU, #GTK_ICON_SIZE_SMALL_TOOLBAR. Instead of using
30974 this function, usually it's better to create a #GtkIconFactory, put
30975 your icon sets in the icon factory, add the icon factory to the
30976 list of default factories with gtk_icon_factory_add_default(), and
30977 then use gtk_image_new_from_stock(). This will allow themes to
30978 override the icon you ship with your application.
30979 The #GtkImage does not assume a reference to the
30980 icon set; you still need to unref it if you own references.
30981 #GtkImage will add its own reference rather than adopting yours.</doc>
30982         <return-value transfer-ownership="full">
30983           <doc xml:whitespace="preserve">a new #GtkImage</doc>
30984           <type name="Image" c:type="GtkWidget*"/>
30985         </return-value>
30986         <parameters>
30987           <parameter name="icon_set" transfer-ownership="none">
30988             <doc xml:whitespace="preserve">a #GtkIconSet</doc>
30989             <type name="IconSet" c:type="GtkIconSet*"/>
30990           </parameter>
30991           <parameter name="size" transfer-ownership="none">
30992             <doc xml:whitespace="preserve">a stock icon size</doc>
30993             <type name="int" c:type="GtkIconSize"/>
30994           </parameter>
30995         </parameters>
30996       </constructor>
30997       <constructor name="new_from_animation"
30998                    c:identifier="gtk_image_new_from_animation">
30999         <doc xml:whitespace="preserve">Creates a #GtkImage displaying the given animation.
31000 The #GtkImage does not assume a reference to the
31001 animation; you still need to unref it if you own references.
31002 #GtkImage will add its own reference rather than adopting yours.
31003 Note that the animation frames are shown using a timeout with
31004 #G_PRIORITY_DEFAULT. When using animations to indicate busyness,
31005 keep in mind that the animation will only be shown if the main loop
31006 is not busy with something that has a higher priority.</doc>
31007         <return-value transfer-ownership="full">
31008           <doc xml:whitespace="preserve">a new #GtkImage widget</doc>
31009           <type name="Image" c:type="GtkWidget*"/>
31010         </return-value>
31011         <parameters>
31012           <parameter name="animation" transfer-ownership="none">
31013             <doc xml:whitespace="preserve">an animation</doc>
31014             <type name="GdkPixbuf.PixbufAnimation"
31015                   c:type="GdkPixbufAnimation*"/>
31016           </parameter>
31017         </parameters>
31018       </constructor>
31019       <constructor name="new_from_icon_name"
31020                    c:identifier="gtk_image_new_from_icon_name"
31021                    version="2.6">
31022         <doc xml:whitespace="preserve">Creates a #GtkImage displaying an icon from the current icon theme.
31023 If the icon name isn't known, a "broken image" icon will be
31024 displayed instead.  If the current icon theme is changed, the icon
31025 will be updated appropriately.</doc>
31026         <return-value transfer-ownership="full">
31027           <doc xml:whitespace="preserve">a new #GtkImage displaying the themed icon</doc>
31028           <type name="Image" c:type="GtkWidget*"/>
31029         </return-value>
31030         <parameters>
31031           <parameter name="icon_name" transfer-ownership="none">
31032             <doc xml:whitespace="preserve">an icon name</doc>
31033             <type name="utf8" c:type="gchar*"/>
31034           </parameter>
31035           <parameter name="size" transfer-ownership="none">
31036             <doc xml:whitespace="preserve">a stock icon size</doc>
31037             <type name="int" c:type="GtkIconSize"/>
31038           </parameter>
31039         </parameters>
31040       </constructor>
31041       <constructor name="new_from_gicon"
31042                    c:identifier="gtk_image_new_from_gicon"
31043                    version="2.14">
31044         <doc xml:whitespace="preserve">Creates a #GtkImage displaying an icon from the current icon theme.
31045 If the icon name isn't known, a "broken image" icon will be
31046 displayed instead.  If the current icon theme is changed, the icon
31047 will be updated appropriately.</doc>
31048         <return-value transfer-ownership="full">
31049           <doc xml:whitespace="preserve">a new #GtkImage displaying the themed icon</doc>
31050           <type name="Image" c:type="GtkWidget*"/>
31051         </return-value>
31052         <parameters>
31053           <parameter name="icon" transfer-ownership="none">
31054             <doc xml:whitespace="preserve">an icon</doc>
31055             <type name="Gio.Icon" c:type="GIcon*"/>
31056           </parameter>
31057           <parameter name="size" transfer-ownership="none">
31058             <doc xml:whitespace="preserve">a stock icon size</doc>
31059             <type name="int" c:type="GtkIconSize"/>
31060           </parameter>
31061         </parameters>
31062       </constructor>
31063       <method name="clear" c:identifier="gtk_image_clear" version="2.8">
31064         <doc xml:whitespace="preserve">Resets the image to be empty.</doc>
31065         <return-value transfer-ownership="none">
31066           <type name="none" c:type="void"/>
31067         </return-value>
31068       </method>
31069       <method name="set_from_pixmap" c:identifier="gtk_image_set_from_pixmap">
31070         <doc xml:whitespace="preserve">See gtk_image_new_from_pixmap() for details.</doc>
31071         <return-value transfer-ownership="none">
31072           <type name="none" c:type="void"/>
31073         </return-value>
31074         <parameters>
31075           <parameter name="pixmap" transfer-ownership="none" allow-none="1">
31076             <doc xml:whitespace="preserve">a #GdkPixmap or %NULL</doc>
31077             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
31078           </parameter>
31079           <parameter name="mask" transfer-ownership="none" allow-none="1">
31080             <doc xml:whitespace="preserve">a #GdkBitmap or %NULL</doc>
31081             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
31082           </parameter>
31083         </parameters>
31084       </method>
31085       <method name="set_from_image" c:identifier="gtk_image_set_from_image">
31086         <doc xml:whitespace="preserve">See gtk_image_new_from_image() for details.</doc>
31087         <return-value transfer-ownership="none">
31088           <type name="none" c:type="void"/>
31089         </return-value>
31090         <parameters>
31091           <parameter name="gdk_image" transfer-ownership="none" allow-none="1">
31092             <doc xml:whitespace="preserve">a #GdkImage or %NULL</doc>
31093             <type name="Gdk.Image" c:type="GdkImage*"/>
31094           </parameter>
31095           <parameter name="mask" transfer-ownership="none" allow-none="1">
31096             <doc xml:whitespace="preserve">a #GdkBitmap or %NULL</doc>
31097             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
31098           </parameter>
31099         </parameters>
31100       </method>
31101       <method name="set_from_file" c:identifier="gtk_image_set_from_file">
31102         <doc xml:whitespace="preserve">See gtk_image_new_from_file() for details.</doc>
31103         <return-value transfer-ownership="none">
31104           <type name="none" c:type="void"/>
31105         </return-value>
31106         <parameters>
31107           <parameter name="filename" transfer-ownership="none" allow-none="1">
31108             <doc xml:whitespace="preserve">a filename or %NULL</doc>
31109             <type name="utf8" c:type="gchar*"/>
31110           </parameter>
31111         </parameters>
31112       </method>
31113       <method name="set_from_pixbuf" c:identifier="gtk_image_set_from_pixbuf">
31114         <doc xml:whitespace="preserve">See gtk_image_new_from_pixbuf() for details.</doc>
31115         <return-value transfer-ownership="none">
31116           <type name="none" c:type="void"/>
31117         </return-value>
31118         <parameters>
31119           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
31120             <doc xml:whitespace="preserve">a #GdkPixbuf or %NULL</doc>
31121             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
31122           </parameter>
31123         </parameters>
31124       </method>
31125       <method name="set_from_stock" c:identifier="gtk_image_set_from_stock">
31126         <doc xml:whitespace="preserve">See gtk_image_new_from_stock() for details.</doc>
31127         <return-value transfer-ownership="none">
31128           <type name="none" c:type="void"/>
31129         </return-value>
31130         <parameters>
31131           <parameter name="stock_id" transfer-ownership="none">
31132             <doc xml:whitespace="preserve">a stock icon name</doc>
31133             <type name="utf8" c:type="gchar*"/>
31134           </parameter>
31135           <parameter name="size" transfer-ownership="none">
31136             <doc xml:whitespace="preserve">a stock icon size</doc>
31137             <type name="int" c:type="GtkIconSize"/>
31138           </parameter>
31139         </parameters>
31140       </method>
31141       <method name="set_from_icon_set"
31142               c:identifier="gtk_image_set_from_icon_set">
31143         <doc xml:whitespace="preserve">See gtk_image_new_from_icon_set() for details.</doc>
31144         <return-value transfer-ownership="none">
31145           <type name="none" c:type="void"/>
31146         </return-value>
31147         <parameters>
31148           <parameter name="icon_set" transfer-ownership="none">
31149             <doc xml:whitespace="preserve">a #GtkIconSet</doc>
31150             <type name="IconSet" c:type="GtkIconSet*"/>
31151           </parameter>
31152           <parameter name="size" transfer-ownership="none">
31153             <doc xml:whitespace="preserve">a stock icon size</doc>
31154             <type name="int" c:type="GtkIconSize"/>
31155           </parameter>
31156         </parameters>
31157       </method>
31158       <method name="set_from_animation"
31159               c:identifier="gtk_image_set_from_animation">
31160         <doc xml:whitespace="preserve">Causes the #GtkImage to display the given animation (or display
31161 nothing, if you set the animation to %NULL).</doc>
31162         <return-value transfer-ownership="none">
31163           <type name="none" c:type="void"/>
31164         </return-value>
31165         <parameters>
31166           <parameter name="animation" transfer-ownership="none">
31167             <doc xml:whitespace="preserve">the #GdkPixbufAnimation</doc>
31168             <type name="GdkPixbuf.PixbufAnimation"
31169                   c:type="GdkPixbufAnimation*"/>
31170           </parameter>
31171         </parameters>
31172       </method>
31173       <method name="set_from_icon_name"
31174               c:identifier="gtk_image_set_from_icon_name"
31175               version="2.6">
31176         <doc xml:whitespace="preserve">See gtk_image_new_from_icon_name() for details.</doc>
31177         <return-value transfer-ownership="none">
31178           <type name="none" c:type="void"/>
31179         </return-value>
31180         <parameters>
31181           <parameter name="icon_name" transfer-ownership="none">
31182             <doc xml:whitespace="preserve">an icon name</doc>
31183             <type name="utf8" c:type="gchar*"/>
31184           </parameter>
31185           <parameter name="size" transfer-ownership="none">
31186             <doc xml:whitespace="preserve">an icon size</doc>
31187             <type name="int" c:type="GtkIconSize"/>
31188           </parameter>
31189         </parameters>
31190       </method>
31191       <method name="set_from_gicon"
31192               c:identifier="gtk_image_set_from_gicon"
31193               version="2.14">
31194         <doc xml:whitespace="preserve">See gtk_image_new_from_gicon() for details.</doc>
31195         <return-value transfer-ownership="none">
31196           <type name="none" c:type="void"/>
31197         </return-value>
31198         <parameters>
31199           <parameter name="icon" transfer-ownership="none">
31200             <doc xml:whitespace="preserve">an icon</doc>
31201             <type name="Gio.Icon" c:type="GIcon*"/>
31202           </parameter>
31203           <parameter name="size" transfer-ownership="none">
31204             <doc xml:whitespace="preserve">an icon size</doc>
31205             <type name="int" c:type="GtkIconSize"/>
31206           </parameter>
31207         </parameters>
31208       </method>
31209       <method name="set_pixel_size"
31210               c:identifier="gtk_image_set_pixel_size"
31211               version="2.6">
31212         <doc xml:whitespace="preserve">Sets the pixel size to use for named icons. If the pixel size is set
31213 to a value != -1, it is used instead of the icon size set by
31214 gtk_image_set_from_icon_name().</doc>
31215         <return-value transfer-ownership="none">
31216           <type name="none" c:type="void"/>
31217         </return-value>
31218         <parameters>
31219           <parameter name="pixel_size" transfer-ownership="none">
31220             <doc xml:whitespace="preserve">the new pixel size</doc>
31221             <type name="int" c:type="gint"/>
31222           </parameter>
31223         </parameters>
31224       </method>
31225       <method name="get_storage_type"
31226               c:identifier="gtk_image_get_storage_type">
31227         <doc xml:whitespace="preserve">Gets the type of representation being used by the #GtkImage
31228 to store image data. If the #GtkImage has no image data,
31229 the return value will be %GTK_IMAGE_EMPTY.</doc>
31230         <return-value transfer-ownership="full">
31231           <doc xml:whitespace="preserve">image representation being used</doc>
31232           <type name="ImageType" c:type="GtkImageType"/>
31233         </return-value>
31234       </method>
31235       <method name="get_pixmap" c:identifier="gtk_image_get_pixmap">
31236         <doc xml:whitespace="preserve">Gets the pixmap and mask being displayed by the #GtkImage.
31237 The storage type of the image must be %GTK_IMAGE_EMPTY or
31238 %GTK_IMAGE_PIXMAP (see gtk_image_get_storage_type()).
31239 The caller of this function does not own a reference to the
31240 returned pixmap and mask.</doc>
31241         <return-value transfer-ownership="none">
31242           <type name="none" c:type="void"/>
31243         </return-value>
31244         <parameters>
31245           <parameter name="pixmap"
31246                      direction="out"
31247                      caller-allocates="0"
31248                      transfer-ownership="none"
31249                      allow-none="1">
31250             <doc xml:whitespace="preserve">location to store the pixmap, or %NULL</doc>
31251             <type name="Gdk.Pixmap" c:type="GdkPixmap**"/>
31252           </parameter>
31253           <parameter name="mask"
31254                      direction="out"
31255                      caller-allocates="0"
31256                      transfer-ownership="none"
31257                      allow-none="1">
31258             <doc xml:whitespace="preserve">location to store the mask, or %NULL</doc>
31259             <type name="Gdk.Bitmap" c:type="GdkBitmap**"/>
31260           </parameter>
31261         </parameters>
31262       </method>
31263       <method name="get_image" c:identifier="gtk_image_get_image">
31264         <doc xml:whitespace="preserve">Gets the #GdkImage and mask being displayed by the #GtkImage.
31265 The storage type of the image must be %GTK_IMAGE_EMPTY or
31266 %GTK_IMAGE_IMAGE (see gtk_image_get_storage_type()).
31267 The caller of this function does not own a reference to the
31268 returned image and mask.</doc>
31269         <return-value transfer-ownership="none">
31270           <type name="none" c:type="void"/>
31271         </return-value>
31272         <parameters>
31273           <parameter name="gdk_image"
31274                      direction="out"
31275                      caller-allocates="0"
31276                      transfer-ownership="none"
31277                      allow-none="1">
31278             <doc xml:whitespace="preserve">return location for a #GtkImage, or %NULL</doc>
31279             <type name="Gdk.Image" c:type="GdkImage**"/>
31280           </parameter>
31281           <parameter name="mask"
31282                      direction="out"
31283                      caller-allocates="0"
31284                      transfer-ownership="none"
31285                      allow-none="1">
31286             <doc xml:whitespace="preserve">return location for a #GdkBitmap, or %NULL</doc>
31287             <type name="Gdk.Bitmap" c:type="GdkBitmap**"/>
31288           </parameter>
31289         </parameters>
31290       </method>
31291       <method name="get_pixbuf" c:identifier="gtk_image_get_pixbuf">
31292         <doc xml:whitespace="preserve">Gets the #GdkPixbuf being displayed by the #GtkImage.
31293 The storage type of the image must be %GTK_IMAGE_EMPTY or
31294 %GTK_IMAGE_PIXBUF (see gtk_image_get_storage_type()).
31295 The caller of this function does not own a reference to the
31296 returned pixbuf.
31297 the image is empty</doc>
31298         <return-value transfer-ownership="none">
31299           <doc xml:whitespace="preserve">the displayed pixbuf, or %NULL if</doc>
31300           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
31301         </return-value>
31302       </method>
31303       <method name="get_stock" c:identifier="gtk_image_get_stock">
31304         <doc xml:whitespace="preserve">Gets the stock icon name and size being displayed by the #GtkImage.
31305 The storage type of the image must be %GTK_IMAGE_EMPTY or
31306 %GTK_IMAGE_STOCK (see gtk_image_get_storage_type()).
31307 The returned string is owned by the #GtkImage and should not
31308 be freed.</doc>
31309         <return-value transfer-ownership="none">
31310           <type name="none" c:type="void"/>
31311         </return-value>
31312         <parameters>
31313           <parameter name="stock_id"
31314                      direction="out"
31315                      caller-allocates="0"
31316                      transfer-ownership="none"
31317                      allow-none="1">
31318             <doc xml:whitespace="preserve">place to store a stock icon name, or %NULL</doc>
31319             <type name="utf8" c:type="gchar**"/>
31320           </parameter>
31321           <parameter name="size"
31322                      direction="out"
31323                      caller-allocates="1"
31324                      transfer-ownership="none"
31325                      allow-none="1">
31326             <doc xml:whitespace="preserve">place to store a stock icon size, or %NULL</doc>
31327             <type name="int" c:type="GtkIconSize*"/>
31328           </parameter>
31329         </parameters>
31330       </method>
31331       <method name="get_icon_set" c:identifier="gtk_image_get_icon_set">
31332         <doc xml:whitespace="preserve">Gets the icon set and size being displayed by the #GtkImage.
31333 The storage type of the image must be %GTK_IMAGE_EMPTY or
31334 %GTK_IMAGE_ICON_SET (see gtk_image_get_storage_type()).</doc>
31335         <return-value transfer-ownership="none">
31336           <type name="none" c:type="void"/>
31337         </return-value>
31338         <parameters>
31339           <parameter name="icon_set"
31340                      direction="out"
31341                      caller-allocates="0"
31342                      transfer-ownership="none"
31343                      allow-none="1">
31344             <doc xml:whitespace="preserve">location to store a #GtkIconSet, or %NULL</doc>
31345             <type name="IconSet" c:type="GtkIconSet**"/>
31346           </parameter>
31347           <parameter name="size"
31348                      direction="out"
31349                      caller-allocates="1"
31350                      transfer-ownership="none"
31351                      allow-none="1">
31352             <doc xml:whitespace="preserve">location to store a stock icon size, or %NULL</doc>
31353             <type name="int" c:type="GtkIconSize*"/>
31354           </parameter>
31355         </parameters>
31356       </method>
31357       <method name="get_animation" c:identifier="gtk_image_get_animation">
31358         <doc xml:whitespace="preserve">Gets the #GdkPixbufAnimation being displayed by the #GtkImage.
31359 The storage type of the image must be %GTK_IMAGE_EMPTY or
31360 %GTK_IMAGE_ANIMATION (see gtk_image_get_storage_type()).
31361 The caller of this function does not own a reference to the
31362 returned animation.
31363 the image is empty</doc>
31364         <return-value transfer-ownership="none">
31365           <doc xml:whitespace="preserve">the displayed animation, or %NULL if</doc>
31366           <type name="GdkPixbuf.PixbufAnimation" c:type="GdkPixbufAnimation*"/>
31367         </return-value>
31368       </method>
31369       <method name="get_icon_name"
31370               c:identifier="gtk_image_get_icon_name"
31371               version="2.6">
31372         <doc xml:whitespace="preserve">Gets the icon name and size being displayed by the #GtkImage.
31373 The storage type of the image must be %GTK_IMAGE_EMPTY or
31374 %GTK_IMAGE_ICON_NAME (see gtk_image_get_storage_type()).
31375 The returned string is owned by the #GtkImage and should not
31376 be freed.</doc>
31377         <return-value transfer-ownership="none">
31378           <type name="none" c:type="void"/>
31379         </return-value>
31380         <parameters>
31381           <parameter name="icon_name"
31382                      direction="out"
31383                      caller-allocates="0"
31384                      transfer-ownership="none"
31385                      allow-none="1">
31386             <doc xml:whitespace="preserve">place to store an icon name, or %NULL</doc>
31387             <type name="utf8" c:type="gchar**"/>
31388           </parameter>
31389           <parameter name="size"
31390                      direction="out"
31391                      caller-allocates="1"
31392                      transfer-ownership="none"
31393                      allow-none="1">
31394             <doc xml:whitespace="preserve">place to store an icon size, or %NULL</doc>
31395             <type name="int" c:type="GtkIconSize*"/>
31396           </parameter>
31397         </parameters>
31398       </method>
31399       <method name="get_gicon"
31400               c:identifier="gtk_image_get_gicon"
31401               version="2.14">
31402         <doc xml:whitespace="preserve">Gets the #GIcon and size being displayed by the #GtkImage.
31403 The storage type of the image must be %GTK_IMAGE_EMPTY or
31404 %GTK_IMAGE_GICON (see gtk_image_get_storage_type()).
31405 The caller of this function does not own a reference to the
31406 returned #GIcon.</doc>
31407         <return-value transfer-ownership="none">
31408           <type name="none" c:type="void"/>
31409         </return-value>
31410         <parameters>
31411           <parameter name="gicon"
31412                      direction="out"
31413                      caller-allocates="0"
31414                      transfer-ownership="none"
31415                      allow-none="1">
31416             <doc xml:whitespace="preserve">place to store a #GIcon, or %NULL</doc>
31417             <type name="Gio.Icon" c:type="GIcon**"/>
31418           </parameter>
31419           <parameter name="size"
31420                      direction="out"
31421                      caller-allocates="1"
31422                      transfer-ownership="none"
31423                      allow-none="1">
31424             <doc xml:whitespace="preserve">place to store an icon size, or %NULL</doc>
31425             <type name="int" c:type="GtkIconSize*"/>
31426           </parameter>
31427         </parameters>
31428       </method>
31429       <method name="get_pixel_size"
31430               c:identifier="gtk_image_get_pixel_size"
31431               version="2.6">
31432         <doc xml:whitespace="preserve">Gets the pixel size used for named icons.</doc>
31433         <return-value transfer-ownership="none">
31434           <doc xml:whitespace="preserve">the pixel size used for named icons.</doc>
31435           <type name="int" c:type="gint"/>
31436         </return-value>
31437       </method>
31438       <method name="set"
31439               c:identifier="gtk_image_set"
31440               deprecated="Use gtk_image_set_from_image() instead."
31441               deprecated-version="2.0">
31442         <doc xml:whitespace="preserve">Sets the #GtkImage.</doc>
31443         <return-value transfer-ownership="none">
31444           <type name="none" c:type="void"/>
31445         </return-value>
31446         <parameters>
31447           <parameter name="val" transfer-ownership="none">
31448             <doc xml:whitespace="preserve">a #GdkImage</doc>
31449             <type name="Gdk.Image" c:type="GdkImage*"/>
31450           </parameter>
31451           <parameter name="mask" transfer-ownership="none">
31452             <doc xml:whitespace="preserve">a #GdkBitmap that indicates which parts of the image should be transparent.</doc>
31453             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
31454           </parameter>
31455         </parameters>
31456       </method>
31457       <method name="get"
31458               c:identifier="gtk_image_get"
31459               deprecated="Use gtk_image_get_image() instead."
31460               deprecated-version="2.0">
31461         <doc xml:whitespace="preserve">Gets the #GtkImage.</doc>
31462         <return-value transfer-ownership="none">
31463           <type name="none" c:type="void"/>
31464         </return-value>
31465         <parameters>
31466           <parameter name="val" transfer-ownership="none">
31467             <doc xml:whitespace="preserve">return location for a #GdkImage</doc>
31468             <type name="Gdk.Image" c:type="GdkImage**"/>
31469           </parameter>
31470           <parameter name="mask" transfer-ownership="none">
31471             <doc xml:whitespace="preserve">a #GdkBitmap that indicates which parts of the image should be transparent.</doc>
31472             <type name="Gdk.Bitmap" c:type="GdkBitmap**"/>
31473           </parameter>
31474         </parameters>
31475       </method>
31476       <property name="file" writable="1" transfer-ownership="none">
31477         <type name="utf8" c:type="gchararray"/>
31478       </property>
31479       <property name="gicon"
31480                 version="2.14"
31481                 writable="1"
31482                 transfer-ownership="none">
31483         <doc xml:whitespace="preserve">The GIcon displayed in the GtkImage. For themed icons,
31484 If the icon theme is changed, the image will be updated
31485 automatically.</doc>
31486         <type name="Gio.Icon" c:type="GIcon"/>
31487       </property>
31488       <property name="icon-name"
31489                 version="2.6"
31490                 writable="1"
31491                 transfer-ownership="none">
31492         <doc xml:whitespace="preserve">The name of the icon in the icon theme. If the icon theme is
31493 changed, the image will be updated automatically.</doc>
31494         <type name="utf8" c:type="gchararray"/>
31495       </property>
31496       <property name="icon-set" writable="1" transfer-ownership="none">
31497         <type name="IconSet" c:type="GtkIconSet"/>
31498       </property>
31499       <property name="icon-size" writable="1" transfer-ownership="none">
31500         <type name="int" c:type="gint"/>
31501       </property>
31502       <property name="image" writable="1" transfer-ownership="none">
31503         <type name="Gdk.Image" c:type="GdkImage"/>
31504       </property>
31505       <property name="mask" writable="1" transfer-ownership="none">
31506         <type name="Gdk.Pixmap" c:type="GdkPixmap"/>
31507       </property>
31508       <property name="pixbuf" writable="1" transfer-ownership="none">
31509         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf"/>
31510       </property>
31511       <property name="pixbuf-animation" writable="1" transfer-ownership="none">
31512         <type name="GdkPixbuf.PixbufAnimation" c:type="GdkPixbufAnimation"/>
31513       </property>
31514       <property name="pixel-size"
31515                 version="2.6"
31516                 writable="1"
31517                 transfer-ownership="none">
31518         <doc xml:whitespace="preserve">The "pixel-size" property can be used to specify a fixed size
31519 overriding the #GtkImage:icon-size property for images of type 
31520 %GTK_IMAGE_ICON_NAME.</doc>
31521         <type name="int" c:type="gint"/>
31522       </property>
31523       <property name="pixmap" writable="1" transfer-ownership="none">
31524         <type name="Gdk.Pixmap" c:type="GdkPixmap"/>
31525       </property>
31526       <property name="stock" writable="1" transfer-ownership="none">
31527         <type name="utf8" c:type="gchararray"/>
31528       </property>
31529       <property name="storage-type" transfer-ownership="none">
31530         <type name="ImageType" c:type="GtkImageType"/>
31531       </property>
31532       <field name="misc">
31533         <type name="Misc" c:type="GtkMisc"/>
31534       </field>
31535       <field name="storage_type">
31536         <type name="ImageType" c:type="GtkImageType"/>
31537       </field>
31538       <union name="data" c:type="data">
31539         <field name="pixmap" writable="1">
31540           <type name="ImagePixmapData" c:type="GtkImagePixmapData"/>
31541         </field>
31542         <field name="image" writable="1">
31543           <type name="ImageImageData" c:type="GtkImageImageData"/>
31544         </field>
31545         <field name="pixbuf" writable="1">
31546           <type name="ImagePixbufData" c:type="GtkImagePixbufData"/>
31547         </field>
31548         <field name="stock" writable="1">
31549           <type name="ImageStockData" c:type="GtkImageStockData"/>
31550         </field>
31551         <field name="icon_set" writable="1">
31552           <type name="ImageIconSetData" c:type="GtkImageIconSetData"/>
31553         </field>
31554         <field name="anim" writable="1">
31555           <type name="ImageAnimationData" c:type="GtkImageAnimationData"/>
31556         </field>
31557         <field name="name" writable="1">
31558           <type name="ImageIconNameData" c:type="GtkImageIconNameData"/>
31559         </field>
31560         <field name="gicon" writable="1">
31561           <type name="ImageGIconData" c:type="GtkImageGIconData"/>
31562         </field>
31563       </union>
31564       <field name="mask">
31565         <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
31566       </field>
31567       <field name="icon_size">
31568         <type name="IconSize" c:type="GtkIconSize"/>
31569       </field>
31570     </class>
31571     <record name="ImageAnimationData" c:type="GtkImageAnimationData">
31572       <field name="anim" writable="1">
31573         <type name="GdkPixbuf.PixbufAnimation" c:type="GdkPixbufAnimation*"/>
31574       </field>
31575       <field name="iter" writable="1">
31576         <type name="GdkPixbuf.PixbufAnimationIter"
31577               c:type="GdkPixbufAnimationIter*"/>
31578       </field>
31579       <field name="frame_timeout" writable="1">
31580         <type name="uint" c:type="guint"/>
31581       </field>
31582     </record>
31583     <record name="ImageClass"
31584             c:type="GtkImageClass"
31585             glib:is-gtype-struct-for="Image">
31586       <field name="parent_class">
31587         <type name="MiscClass" c:type="GtkMiscClass"/>
31588       </field>
31589       <field name="gtk_reserved1">
31590         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
31591           <return-value transfer-ownership="none">
31592             <type name="none" c:type="void"/>
31593           </return-value>
31594         </callback>
31595       </field>
31596       <field name="gtk_reserved2">
31597         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
31598           <return-value transfer-ownership="none">
31599             <type name="none" c:type="void"/>
31600           </return-value>
31601         </callback>
31602       </field>
31603       <field name="gtk_reserved3">
31604         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
31605           <return-value transfer-ownership="none">
31606             <type name="none" c:type="void"/>
31607           </return-value>
31608         </callback>
31609       </field>
31610       <field name="gtk_reserved4">
31611         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
31612           <return-value transfer-ownership="none">
31613             <type name="none" c:type="void"/>
31614           </return-value>
31615         </callback>
31616       </field>
31617     </record>
31618     <record name="ImageGIconData" c:type="GtkImageGIconData">
31619       <field name="icon" writable="1">
31620         <type name="Gio.Icon" c:type="GIcon*"/>
31621       </field>
31622       <field name="pixbuf" writable="1">
31623         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
31624       </field>
31625       <field name="theme_change_id" writable="1">
31626         <type name="uint" c:type="guint"/>
31627       </field>
31628     </record>
31629     <record name="ImageIconNameData" c:type="GtkImageIconNameData">
31630       <field name="icon_name" writable="1">
31631         <type name="utf8" c:type="gchar*"/>
31632       </field>
31633       <field name="pixbuf" writable="1">
31634         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
31635       </field>
31636       <field name="theme_change_id" writable="1">
31637         <type name="uint" c:type="guint"/>
31638       </field>
31639     </record>
31640     <record name="ImageIconSetData" c:type="GtkImageIconSetData">
31641       <field name="icon_set" writable="1">
31642         <type name="IconSet" c:type="GtkIconSet*"/>
31643       </field>
31644     </record>
31645     <record name="ImageImageData" c:type="GtkImageImageData">
31646       <field name="image" writable="1">
31647         <type name="Gdk.Image" c:type="GdkImage*"/>
31648       </field>
31649     </record>
31650     <class name="ImageMenuItem"
31651            c:type="GtkImageMenuItem"
31652            parent="MenuItem"
31653            glib:type-name="GtkImageMenuItem"
31654            glib:get-type="gtk_image_menu_item_get_type"
31655            glib:type-struct="ImageMenuItemClass">
31656       <implements name="Activatable"/>
31657       <implements name="Atk.ImplementorIface"/>
31658       <implements name="Buildable"/>
31659       <constructor name="new" c:identifier="gtk_image_menu_item_new">
31660         <doc xml:whitespace="preserve">Creates a new #GtkImageMenuItem with an empty label.</doc>
31661         <return-value transfer-ownership="full">
31662           <doc xml:whitespace="preserve">a new #GtkImageMenuItem.</doc>
31663           <type name="ImageMenuItem" c:type="GtkWidget*"/>
31664         </return-value>
31665       </constructor>
31666       <constructor name="new_with_label"
31667                    c:identifier="gtk_image_menu_item_new_with_label">
31668         <doc xml:whitespace="preserve">Creates a new #GtkImageMenuItem containing a label.</doc>
31669         <return-value transfer-ownership="full">
31670           <doc xml:whitespace="preserve">a new #GtkImageMenuItem.</doc>
31671           <type name="ImageMenuItem" c:type="GtkWidget*"/>
31672         </return-value>
31673         <parameters>
31674           <parameter name="label" transfer-ownership="none">
31675             <doc xml:whitespace="preserve">the text of the menu item.</doc>
31676             <type name="utf8" c:type="gchar*"/>
31677           </parameter>
31678         </parameters>
31679       </constructor>
31680       <constructor name="new_with_mnemonic"
31681                    c:identifier="gtk_image_menu_item_new_with_mnemonic">
31682         <doc xml:whitespace="preserve">Creates a new #GtkImageMenuItem containing a label. The label
31683 will be created using gtk_label_new_with_mnemonic(), so underscores
31684 in @label indicate the mnemonic for the menu item.</doc>
31685         <return-value transfer-ownership="full">
31686           <doc xml:whitespace="preserve">a new #GtkImageMenuItem</doc>
31687           <type name="ImageMenuItem" c:type="GtkWidget*"/>
31688         </return-value>
31689         <parameters>
31690           <parameter name="label" transfer-ownership="none">
31691             <doc xml:whitespace="preserve">the text of the menu item, with an underscore in front of the mnemonic character</doc>
31692             <type name="utf8" c:type="gchar*"/>
31693           </parameter>
31694         </parameters>
31695       </constructor>
31696       <constructor name="new_from_stock"
31697                    c:identifier="gtk_image_menu_item_new_from_stock">
31698         <doc xml:whitespace="preserve">Creates a new #GtkImageMenuItem containing the image and text from a 
31699 stock item. Some stock ids have preprocessor macros like #GTK_STOCK_OK 
31700 and #GTK_STOCK_APPLY.
31701 If you want this menu item to have changeable accelerators, then pass in
31702 %NULL for accel_group. Next call gtk_menu_item_set_accel_path() with an
31703 appropriate path for the menu item, use gtk_stock_lookup() to look up the
31704 standard accelerator for the stock item, and if one is found, call
31705 gtk_accel_map_add_entry() to register it.</doc>
31706         <return-value transfer-ownership="full">
31707           <doc xml:whitespace="preserve">a new #GtkImageMenuItem.</doc>
31708           <type name="ImageMenuItem" c:type="GtkWidget*"/>
31709         </return-value>
31710         <parameters>
31711           <parameter name="stock_id" transfer-ownership="none">
31712             <doc xml:whitespace="preserve">the name of the stock item.</doc>
31713             <type name="utf8" c:type="gchar*"/>
31714           </parameter>
31715           <parameter name="accel_group" transfer-ownership="none">
31716             <doc xml:whitespace="preserve">the #GtkAccelGroup to add the menu items accelerator to, or %NULL.</doc>
31717             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
31718           </parameter>
31719         </parameters>
31720       </constructor>
31721       <method name="set_always_show_image"
31722               c:identifier="gtk_image_menu_item_set_always_show_image"
31723               version="2.16">
31724         <doc xml:whitespace="preserve">If %TRUE, the menu item will ignore the #GtkSettings:gtk-menu-images 
31725 setting and always show the image, if available.
31726 Use this property if the menuitem would be useless or hard to use
31727 without the image.</doc>
31728         <return-value transfer-ownership="none">
31729           <type name="none" c:type="void"/>
31730         </return-value>
31731         <parameters>
31732           <parameter name="always_show" transfer-ownership="none">
31733             <doc xml:whitespace="preserve">%TRUE if the menuitem should always show the image</doc>
31734             <type name="boolean" c:type="gboolean"/>
31735           </parameter>
31736         </parameters>
31737       </method>
31738       <method name="get_always_show_image"
31739               c:identifier="gtk_image_menu_item_get_always_show_image"
31740               version="2.16">
31741         <doc xml:whitespace="preserve">Returns whether the menu item will ignore the #GtkSettings:gtk-menu-images
31742 setting and always show the image, if available.</doc>
31743         <return-value transfer-ownership="none">
31744           <doc xml:whitespace="preserve">%TRUE if the menu item will always show the image</doc>
31745           <type name="boolean" c:type="gboolean"/>
31746         </return-value>
31747       </method>
31748       <method name="set_image" c:identifier="gtk_image_menu_item_set_image">
31749         <return-value transfer-ownership="none">
31750           <type name="none" c:type="void"/>
31751         </return-value>
31752         <parameters>
31753           <parameter name="image" transfer-ownership="none">
31754             <type name="Widget" c:type="GtkWidget*"/>
31755           </parameter>
31756         </parameters>
31757       </method>
31758       <method name="get_image" c:identifier="gtk_image_menu_item_get_image">
31759         <doc xml:whitespace="preserve">Gets the widget that is currently set as the image of @image_menu_item.
31760 See gtk_image_menu_item_set_image().</doc>
31761         <return-value transfer-ownership="full">
31762           <doc xml:whitespace="preserve">the widget set as image of @image_menu_item.</doc>
31763           <type name="Widget" c:type="GtkWidget*"/>
31764         </return-value>
31765       </method>
31766       <method name="set_use_stock"
31767               c:identifier="gtk_image_menu_item_set_use_stock"
31768               version="2.16">
31769         <doc xml:whitespace="preserve">If %TRUE, the label set in the menuitem is used as a
31770 stock id to select the stock item for the item.</doc>
31771         <return-value transfer-ownership="none">
31772           <type name="none" c:type="void"/>
31773         </return-value>
31774         <parameters>
31775           <parameter name="use_stock" transfer-ownership="none">
31776             <doc xml:whitespace="preserve">%TRUE if the menuitem should use a stock item</doc>
31777             <type name="boolean" c:type="gboolean"/>
31778           </parameter>
31779         </parameters>
31780       </method>
31781       <method name="get_use_stock"
31782               c:identifier="gtk_image_menu_item_get_use_stock"
31783               version="2.16">
31784         <doc xml:whitespace="preserve">Checks whether the label set in the menuitem is used as a
31785 stock id to select the stock item for the item.
31786 stock id to select the stock item for the item</doc>
31787         <return-value transfer-ownership="none">
31788           <doc xml:whitespace="preserve">%TRUE if the label set in the menuitem is used as a</doc>
31789           <type name="boolean" c:type="gboolean"/>
31790         </return-value>
31791       </method>
31792       <method name="set_accel_group"
31793               c:identifier="gtk_image_menu_item_set_accel_group"
31794               version="2.16">
31795         <doc xml:whitespace="preserve">Specifies an @accel_group to add the menu items accelerator to
31796 (this only applies to stock items so a stock item must already
31797 be set, make sure to call gtk_image_menu_item_set_use_stock()
31798 and gtk_menu_item_set_label() with a valid stock item first).
31799 If you want this menu item to have changeable accelerators then
31800 you shouldnt need this (see gtk_image_menu_item_new_from_stock()).</doc>
31801         <return-value transfer-ownership="none">
31802           <type name="none" c:type="void"/>
31803         </return-value>
31804         <parameters>
31805           <parameter name="accel_group" transfer-ownership="none">
31806             <doc xml:whitespace="preserve">the #GtkAccelGroup</doc>
31807             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
31808           </parameter>
31809         </parameters>
31810       </method>
31811       <property name="accel-group"
31812                 version="2.16"
31813                 readable="0"
31814                 writable="1"
31815                 transfer-ownership="none">
31816         <doc xml:whitespace="preserve">The Accel Group to use for stock accelerator keys</doc>
31817         <type name="AccelGroup" c:type="GtkAccelGroup"/>
31818       </property>
31819       <property name="always-show-image"
31820                 version="2.16"
31821                 writable="1"
31822                 construct="1"
31823                 transfer-ownership="none">
31824         <doc xml:whitespace="preserve">If %TRUE, the menu item will ignore the #GtkSettings:gtk-menu-images 
31825 setting and always show the image, if available.
31826 Use this property if the menuitem would be useless or hard to use
31827 without the image.</doc>
31828         <type name="boolean" c:type="gboolean"/>
31829       </property>
31830       <property name="image" writable="1" transfer-ownership="none">
31831         <type name="Widget" c:type="GtkWidget"/>
31832       </property>
31833       <property name="use-stock"
31834                 version="2.16"
31835                 writable="1"
31836                 construct="1"
31837                 transfer-ownership="none">
31838         <doc xml:whitespace="preserve">If %TRUE, the label set in the menuitem is used as a
31839 stock id to select the stock item for the item.</doc>
31840         <type name="boolean" c:type="gboolean"/>
31841       </property>
31842       <field name="menu_item">
31843         <type name="MenuItem" c:type="GtkMenuItem"/>
31844       </field>
31845       <field name="image">
31846         <type name="Widget" c:type="GtkWidget*"/>
31847       </field>
31848     </class>
31849     <record name="ImageMenuItemClass"
31850             c:type="GtkImageMenuItemClass"
31851             glib:is-gtype-struct-for="ImageMenuItem">
31852       <field name="parent_class">
31853         <type name="MenuItemClass" c:type="GtkMenuItemClass"/>
31854       </field>
31855     </record>
31856     <record name="ImagePixbufData" c:type="GtkImagePixbufData">
31857       <field name="pixbuf" writable="1">
31858         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
31859       </field>
31860     </record>
31861     <record name="ImagePixmapData" c:type="GtkImagePixmapData">
31862       <field name="pixmap" writable="1">
31863         <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
31864       </field>
31865     </record>
31866     <record name="ImageStockData" c:type="GtkImageStockData">
31867       <field name="stock_id" writable="1">
31868         <type name="utf8" c:type="gchar*"/>
31869       </field>
31870     </record>
31871     <enumeration name="ImageType"
31872                  glib:type-name="GtkImageType"
31873                  glib:get-type="gtk_image_type_get_type"
31874                  c:type="GtkImageType">
31875       <doc xml:whitespace="preserve">Describes the image data representation used by a #GtkImage. If you
31876 want to get the image from the widget, you can only get the
31877 currently-stored representation. e.g.  if the
31878 gtk_image_get_storage_type() returns #GTK_IMAGE_PIXBUF, then you can
31879 call gtk_image_get_pixbuf() but not gtk_image_get_stock().  For empty
31880 images, you can request any storage type (call any of the "get"
31881 functions), but they will all return %NULL values.</doc>
31882       <member name="empty"
31883               value="0"
31884               c:identifier="GTK_IMAGE_EMPTY"
31885               glib:nick="empty"/>
31886       <member name="pixmap"
31887               value="1"
31888               c:identifier="GTK_IMAGE_PIXMAP"
31889               glib:nick="pixmap"/>
31890       <member name="image"
31891               value="2"
31892               c:identifier="GTK_IMAGE_IMAGE"
31893               glib:nick="image"/>
31894       <member name="pixbuf"
31895               value="3"
31896               c:identifier="GTK_IMAGE_PIXBUF"
31897               glib:nick="pixbuf"/>
31898       <member name="stock"
31899               value="4"
31900               c:identifier="GTK_IMAGE_STOCK"
31901               glib:nick="stock"/>
31902       <member name="icon_set"
31903               value="5"
31904               c:identifier="GTK_IMAGE_ICON_SET"
31905               glib:nick="icon-set"/>
31906       <member name="animation"
31907               value="6"
31908               c:identifier="GTK_IMAGE_ANIMATION"
31909               glib:nick="animation"/>
31910       <member name="icon_name"
31911               value="7"
31912               c:identifier="GTK_IMAGE_ICON_NAME"
31913               glib:nick="icon-name"/>
31914       <member name="gicon"
31915               value="8"
31916               c:identifier="GTK_IMAGE_GICON"
31917               glib:nick="gicon"/>
31918     </enumeration>
31919     <class name="InfoBar"
31920            c:type="GtkInfoBar"
31921            parent="HBox"
31922            glib:type-name="GtkInfoBar"
31923            glib:get-type="gtk_info_bar_get_type"
31924            glib:type-struct="InfoBarClass">
31925       <implements name="Atk.ImplementorIface"/>
31926       <implements name="Buildable"/>
31927       <implements name="Orientable"/>
31928       <constructor name="new" c:identifier="gtk_info_bar_new" version="2.18">
31929         <doc xml:whitespace="preserve">Creates a new #GtkInfoBar object.</doc>
31930         <return-value transfer-ownership="full">
31931           <doc xml:whitespace="preserve">a new #GtkInfoBar object</doc>
31932           <type name="InfoBar" c:type="GtkWidget*"/>
31933         </return-value>
31934       </constructor>
31935       <constructor name="new_with_buttons"
31936                    c:identifier="gtk_info_bar_new_with_buttons"
31937                    introspectable="0">
31938         <doc xml:whitespace="preserve">Creates a new #GtkInfoBar with buttons. Button text/response ID
31939 pairs should be listed, with a %NULL pointer ending the list.
31940 Button text can be either a stock ID such as %GTK_STOCK_OK, or
31941 some arbitrary text. A response ID can be any positive number,
31942 or one of the values in the #GtkResponseType enumeration. If the
31943 user clicks one of these dialog buttons, GtkInfoBar will emit
31944 the "response" signal with the corresponding response ID.</doc>
31945         <return-value transfer-ownership="full">
31946           <doc xml:whitespace="preserve">a new #GtkInfoBar</doc>
31947           <type name="InfoBar" c:type="GtkWidget*"/>
31948         </return-value>
31949         <parameters>
31950           <parameter name="first_button_text"
31951                      transfer-ownership="none"
31952                      allow-none="1">
31953             <doc xml:whitespace="preserve">stock ID or text to go in first button, or %NULL</doc>
31954             <type name="utf8" c:type="gchar*"/>
31955           </parameter>
31956           <parameter transfer-ownership="none">
31957             <varargs>
31958             </varargs>
31959           </parameter>
31960         </parameters>
31961       </constructor>
31962       <method name="get_action_area"
31963               c:identifier="gtk_info_bar_get_action_area"
31964               version="2.18">
31965         <doc xml:whitespace="preserve">Returns the action area of @info_bar.</doc>
31966         <return-value transfer-ownership="full">
31967           <doc xml:whitespace="preserve">the action area.</doc>
31968           <type name="Widget" c:type="GtkWidget*"/>
31969         </return-value>
31970       </method>
31971       <method name="get_content_area"
31972               c:identifier="gtk_info_bar_get_content_area"
31973               version="2.18">
31974         <doc xml:whitespace="preserve">Returns the content area of @info_bar.</doc>
31975         <return-value transfer-ownership="full">
31976           <doc xml:whitespace="preserve">the content area.</doc>
31977           <type name="Widget" c:type="GtkWidget*"/>
31978         </return-value>
31979       </method>
31980       <method name="add_action_widget"
31981               c:identifier="gtk_info_bar_add_action_widget"
31982               version="2.18">
31983         <doc xml:whitespace="preserve">Add an activatable widget to the action area of a #GtkInfoBar,
31984 connecting a signal handler that will emit the #GtkInfoBar::response
31985 signal on the message area when the widget is activated. The widget
31986 is appended to the end of the message areas action area.</doc>
31987         <return-value transfer-ownership="none">
31988           <type name="none" c:type="void"/>
31989         </return-value>
31990         <parameters>
31991           <parameter name="child" transfer-ownership="none">
31992             <doc xml:whitespace="preserve">an activatable widget</doc>
31993             <type name="Widget" c:type="GtkWidget*"/>
31994           </parameter>
31995           <parameter name="response_id" transfer-ownership="none">
31996             <doc xml:whitespace="preserve">response ID for @child</doc>
31997             <type name="int" c:type="gint"/>
31998           </parameter>
31999         </parameters>
32000       </method>
32001       <method name="add_button"
32002               c:identifier="gtk_info_bar_add_button"
32003               version="2.18">
32004         <doc xml:whitespace="preserve">Adds a button with the given text (or a stock button, if button_text
32005 is a stock ID) and sets things up so that clicking the button will emit
32006 the "response" signal with the given response_id. The button is appended
32007 to the end of the info bars's action area. The button widget is
32008 returned, but usually you don't need it.</doc>
32009         <return-value transfer-ownership="full">
32010           <doc xml:whitespace="preserve">the button widget that was added</doc>
32011           <type name="Widget" c:type="GtkWidget*"/>
32012         </return-value>
32013         <parameters>
32014           <parameter name="button_text" transfer-ownership="none">
32015             <doc xml:whitespace="preserve">text of button, or stock ID</doc>
32016             <type name="utf8" c:type="gchar*"/>
32017           </parameter>
32018           <parameter name="response_id" transfer-ownership="none">
32019             <doc xml:whitespace="preserve">response ID for the button</doc>
32020             <type name="int" c:type="gint"/>
32021           </parameter>
32022         </parameters>
32023       </method>
32024       <method name="add_buttons"
32025               c:identifier="gtk_info_bar_add_buttons"
32026               version="2.18"
32027               introspectable="0">
32028         <doc xml:whitespace="preserve">Adds more buttons, same as calling gtk_info_bar_add_button()
32029 repeatedly. The variable argument list should be %NULL-terminated
32030 as with gtk_info_bar_new_with_buttons(). Each button must have both
32031 text and response ID.</doc>
32032         <return-value transfer-ownership="none">
32033           <type name="none" c:type="void"/>
32034         </return-value>
32035         <parameters>
32036           <parameter name="first_button_text" transfer-ownership="none">
32037             <doc xml:whitespace="preserve">button text or stock ID</doc>
32038             <type name="utf8" c:type="gchar*"/>
32039           </parameter>
32040           <parameter transfer-ownership="none">
32041             <varargs>
32042             </varargs>
32043           </parameter>
32044         </parameters>
32045       </method>
32046       <method name="set_response_sensitive"
32047               c:identifier="gtk_info_bar_set_response_sensitive"
32048               version="2.18">
32049         <doc xml:whitespace="preserve">Calls gtk_widget_set_sensitive (widget, setting) for each
32050 widget in the info bars's action area with the given response_id.
32051 A convenient way to sensitize/desensitize dialog buttons.</doc>
32052         <return-value transfer-ownership="none">
32053           <type name="none" c:type="void"/>
32054         </return-value>
32055         <parameters>
32056           <parameter name="response_id" transfer-ownership="none">
32057             <doc xml:whitespace="preserve">a response ID</doc>
32058             <type name="int" c:type="gint"/>
32059           </parameter>
32060           <parameter name="setting" transfer-ownership="none">
32061             <doc xml:whitespace="preserve">TRUE for sensitive</doc>
32062             <type name="boolean" c:type="gboolean"/>
32063           </parameter>
32064         </parameters>
32065       </method>
32066       <method name="set_default_response"
32067               c:identifier="gtk_info_bar_set_default_response"
32068               version="2.18">
32069         <doc xml:whitespace="preserve">Sets the last widget in the info bar's action area with
32070 the given response_id as the default widget for the dialog.
32071 Pressing "Enter" normally activates the default widget.
32072 Note that this function currently requires @info_bar to
32073 be added to a widget hierarchy.</doc>
32074         <return-value transfer-ownership="none">
32075           <type name="none" c:type="void"/>
32076         </return-value>
32077         <parameters>
32078           <parameter name="response_id" transfer-ownership="none">
32079             <doc xml:whitespace="preserve">a response ID</doc>
32080             <type name="int" c:type="gint"/>
32081           </parameter>
32082         </parameters>
32083       </method>
32084       <method name="response"
32085               c:identifier="gtk_info_bar_response"
32086               version="2.18">
32087         <doc xml:whitespace="preserve">Emits the 'response' signal with the given @response_id.</doc>
32088         <return-value transfer-ownership="none">
32089           <type name="none" c:type="void"/>
32090         </return-value>
32091         <parameters>
32092           <parameter name="response_id" transfer-ownership="none">
32093             <doc xml:whitespace="preserve">a response ID</doc>
32094             <type name="int" c:type="gint"/>
32095           </parameter>
32096         </parameters>
32097       </method>
32098       <method name="set_message_type"
32099               c:identifier="gtk_info_bar_set_message_type"
32100               version="2.18">
32101         <doc xml:whitespace="preserve">Sets the message type of the message area.
32102 GTK+ uses this type to determine what color to use
32103 when drawing the message area.</doc>
32104         <return-value transfer-ownership="none">
32105           <type name="none" c:type="void"/>
32106         </return-value>
32107         <parameters>
32108           <parameter name="message_type" transfer-ownership="none">
32109             <doc xml:whitespace="preserve">a #GtkMessageType</doc>
32110             <type name="MessageType" c:type="GtkMessageType"/>
32111           </parameter>
32112         </parameters>
32113       </method>
32114       <method name="get_message_type"
32115               c:identifier="gtk_info_bar_get_message_type"
32116               version="2.18">
32117         <doc xml:whitespace="preserve">Returns the message type of the message area.</doc>
32118         <return-value transfer-ownership="full">
32119           <doc xml:whitespace="preserve">the message type of the message area.</doc>
32120           <type name="MessageType" c:type="GtkMessageType"/>
32121         </return-value>
32122       </method>
32123       <property name="message-type"
32124                 version="2.18"
32125                 writable="1"
32126                 construct="1"
32127                 transfer-ownership="none">
32128         <doc xml:whitespace="preserve">The type of the message.
32129 The type is used to determine the colors to use in the info bar.
32130 The following symbolic color names can by used to customize
32131 these colors:
32132 "info_fg_color", "info_bg_color",
32133 "warning_fg_color", "warning_bg_color",
32134 "question_fg_color", "question_bg_color",
32135 "error_fg_color", "error_bg_color".
32136 "other_fg_color", "other_bg_color".
32137 If the type is #GTK_MESSAGE_OTHER, no info bar is painted but the
32138 colors are still set.</doc>
32139         <type name="MessageType" c:type="GtkMessageType"/>
32140       </property>
32141       <field name="parent">
32142         <type name="HBox" c:type="GtkHBox"/>
32143       </field>
32144       <field name="priv">
32145         <type name="InfoBarPrivate" c:type="GtkInfoBarPrivate*"/>
32146       </field>
32147       <glib:signal name="close" version="2.18">
32148         <doc xml:whitespace="preserve">The ::close signal is a
32149 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
32150 which gets emitted when the user uses a keybinding to dismiss
32151 the info bar.
32152 The default binding for this signal is the Escape key.</doc>
32153         <return-value transfer-ownership="full">
32154           <type name="none" c:type="void"/>
32155         </return-value>
32156       </glib:signal>
32157       <glib:signal name="response" version="2.18">
32158         <doc xml:whitespace="preserve">Emitted when an action widget is clicked or the application programmer
32159 calls gtk_dialog_response(). The @response_id depends on which action
32160 widget was clicked.</doc>
32161         <return-value transfer-ownership="full">
32162           <type name="none" c:type="void"/>
32163         </return-value>
32164         <parameters>
32165           <parameter name="response_id" transfer-ownership="none">
32166             <doc xml:whitespace="preserve">the response ID</doc>
32167             <type name="int" c:type="gint"/>
32168           </parameter>
32169         </parameters>
32170       </glib:signal>
32171     </class>
32172     <record name="InfoBarClass"
32173             c:type="GtkInfoBarClass"
32174             glib:is-gtype-struct-for="InfoBar">
32175       <field name="parent_class">
32176         <type name="HBoxClass" c:type="GtkHBoxClass"/>
32177       </field>
32178       <field name="response">
32179         <callback name="response" c:type="response">
32180           <return-value transfer-ownership="none">
32181             <type name="none" c:type="void"/>
32182           </return-value>
32183           <parameters>
32184             <parameter name="info_bar" transfer-ownership="none">
32185               <type name="InfoBar" c:type="GtkInfoBar*"/>
32186             </parameter>
32187             <parameter name="response_id" transfer-ownership="none">
32188               <type name="int" c:type="gint"/>
32189             </parameter>
32190           </parameters>
32191         </callback>
32192       </field>
32193       <field name="close">
32194         <callback name="close" c:type="close">
32195           <return-value transfer-ownership="none">
32196             <type name="none" c:type="void"/>
32197           </return-value>
32198           <parameters>
32199             <parameter name="info_bar" transfer-ownership="none">
32200               <type name="InfoBar" c:type="GtkInfoBar*"/>
32201             </parameter>
32202           </parameters>
32203         </callback>
32204       </field>
32205       <field name="gtk_reserved1">
32206         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
32207           <return-value transfer-ownership="none">
32208             <type name="none" c:type="void"/>
32209           </return-value>
32210         </callback>
32211       </field>
32212       <field name="gtk_reserved2">
32213         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
32214           <return-value transfer-ownership="none">
32215             <type name="none" c:type="void"/>
32216           </return-value>
32217         </callback>
32218       </field>
32219       <field name="gtk_reserved3">
32220         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
32221           <return-value transfer-ownership="none">
32222             <type name="none" c:type="void"/>
32223           </return-value>
32224         </callback>
32225       </field>
32226       <field name="gtk_reserved4">
32227         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
32228           <return-value transfer-ownership="none">
32229             <type name="none" c:type="void"/>
32230           </return-value>
32231         </callback>
32232       </field>
32233       <field name="gtk_reserved5">
32234         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
32235           <return-value transfer-ownership="none">
32236             <type name="none" c:type="void"/>
32237           </return-value>
32238         </callback>
32239       </field>
32240       <field name="gtk_reserved6">
32241         <callback name="gtk_reserved6" c:type="_gtk_reserved6">
32242           <return-value transfer-ownership="none">
32243             <type name="none" c:type="void"/>
32244           </return-value>
32245         </callback>
32246       </field>
32247     </record>
32248     <record name="InfoBarPrivate" c:type="GtkInfoBarPrivate">
32249     </record>
32250     <class name="InputDialog"
32251            c:type="GtkInputDialog"
32252            parent="Dialog"
32253            glib:type-name="GtkInputDialog"
32254            glib:get-type="gtk_input_dialog_get_type"
32255            glib:type-struct="InputDialogClass">
32256       <implements name="Atk.ImplementorIface"/>
32257       <implements name="Buildable"/>
32258       <constructor name="new" c:identifier="gtk_input_dialog_new">
32259         <return-value transfer-ownership="full">
32260           <type name="InputDialog" c:type="GtkWidget*"/>
32261         </return-value>
32262       </constructor>
32263       <field name="dialog">
32264         <type name="Dialog" c:type="GtkDialog"/>
32265       </field>
32266       <field name="axis_list">
32267         <type name="Widget" c:type="GtkWidget*"/>
32268       </field>
32269       <field name="axis_listbox">
32270         <type name="Widget" c:type="GtkWidget*"/>
32271       </field>
32272       <field name="mode_optionmenu">
32273         <type name="Widget" c:type="GtkWidget*"/>
32274       </field>
32275       <field name="close_button">
32276         <type name="Widget" c:type="GtkWidget*"/>
32277       </field>
32278       <field name="save_button">
32279         <type name="Widget" c:type="GtkWidget*"/>
32280       </field>
32281       <field name="axis_items">
32282         <array zero-terminated="0" c:type="GtkWidget*">
32283           <type name="Widget"/>
32284         </array>
32285       </field>
32286       <field name="current_device">
32287         <type name="Gdk.Device" c:type="GdkDevice*"/>
32288       </field>
32289       <field name="keys_list">
32290         <type name="Widget" c:type="GtkWidget*"/>
32291       </field>
32292       <field name="keys_listbox">
32293         <type name="Widget" c:type="GtkWidget*"/>
32294       </field>
32295       <glib:signal name="disable-device">
32296         <return-value transfer-ownership="full">
32297           <type name="none" c:type="void"/>
32298         </return-value>
32299         <parameters>
32300           <parameter name="object" transfer-ownership="none">
32301             <type name="Gdk.Device" c:type="GdkDevice"/>
32302           </parameter>
32303         </parameters>
32304       </glib:signal>
32305       <glib:signal name="enable-device">
32306         <return-value transfer-ownership="full">
32307           <type name="none" c:type="void"/>
32308         </return-value>
32309         <parameters>
32310           <parameter name="object" transfer-ownership="none">
32311             <type name="Gdk.Device" c:type="GdkDevice"/>
32312           </parameter>
32313         </parameters>
32314       </glib:signal>
32315     </class>
32316     <record name="InputDialogClass"
32317             c:type="GtkInputDialogClass"
32318             glib:is-gtype-struct-for="InputDialog">
32319       <field name="parent_class">
32320         <type name="DialogClass" c:type="GtkDialogClass"/>
32321       </field>
32322       <field name="enable_device">
32323         <callback name="enable_device" c:type="enable_device">
32324           <return-value transfer-ownership="none">
32325             <type name="none" c:type="void"/>
32326           </return-value>
32327           <parameters>
32328             <parameter name="inputd" transfer-ownership="none">
32329               <type name="InputDialog" c:type="GtkInputDialog*"/>
32330             </parameter>
32331             <parameter name="device" transfer-ownership="none">
32332               <type name="Gdk.Device" c:type="GdkDevice*"/>
32333             </parameter>
32334           </parameters>
32335         </callback>
32336       </field>
32337       <field name="disable_device">
32338         <callback name="disable_device" c:type="disable_device">
32339           <return-value transfer-ownership="none">
32340             <type name="none" c:type="void"/>
32341           </return-value>
32342           <parameters>
32343             <parameter name="inputd" transfer-ownership="none">
32344               <type name="InputDialog" c:type="GtkInputDialog*"/>
32345             </parameter>
32346             <parameter name="device" transfer-ownership="none">
32347               <type name="Gdk.Device" c:type="GdkDevice*"/>
32348             </parameter>
32349           </parameters>
32350         </callback>
32351       </field>
32352       <field name="gtk_reserved1">
32353         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
32354           <return-value transfer-ownership="none">
32355             <type name="none" c:type="void"/>
32356           </return-value>
32357         </callback>
32358       </field>
32359       <field name="gtk_reserved2">
32360         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
32361           <return-value transfer-ownership="none">
32362             <type name="none" c:type="void"/>
32363           </return-value>
32364         </callback>
32365       </field>
32366       <field name="gtk_reserved3">
32367         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
32368           <return-value transfer-ownership="none">
32369             <type name="none" c:type="void"/>
32370           </return-value>
32371         </callback>
32372       </field>
32373       <field name="gtk_reserved4">
32374         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
32375           <return-value transfer-ownership="none">
32376             <type name="none" c:type="void"/>
32377           </return-value>
32378         </callback>
32379       </field>
32380     </record>
32381     <class name="Invisible"
32382            c:type="GtkInvisible"
32383            parent="Widget"
32384            glib:type-name="GtkInvisible"
32385            glib:get-type="gtk_invisible_get_type"
32386            glib:type-struct="InvisibleClass">
32387       <implements name="Atk.ImplementorIface"/>
32388       <implements name="Buildable"/>
32389       <constructor name="new" c:identifier="gtk_invisible_new">
32390         <doc xml:whitespace="preserve">Creates a new #GtkInvisible.</doc>
32391         <return-value transfer-ownership="full">
32392           <doc xml:whitespace="preserve">a new #GtkInvisible.</doc>
32393           <type name="Invisible" c:type="GtkWidget*"/>
32394         </return-value>
32395       </constructor>
32396       <constructor name="new_for_screen"
32397                    c:identifier="gtk_invisible_new_for_screen"
32398                    version="2.2">
32399         <doc xml:whitespace="preserve">Creates a new #GtkInvisible object for a specified screen</doc>
32400         <return-value transfer-ownership="full">
32401           <doc xml:whitespace="preserve">a newly created #GtkInvisible object</doc>
32402           <type name="Invisible" c:type="GtkWidget*"/>
32403         </return-value>
32404         <parameters>
32405           <parameter name="screen" transfer-ownership="none">
32406             <doc xml:whitespace="preserve">a #GdkScreen which identifies on which the new #GtkInvisible will be created.</doc>
32407             <type name="Gdk.Screen" c:type="GdkScreen*"/>
32408           </parameter>
32409         </parameters>
32410       </constructor>
32411       <method name="set_screen"
32412               c:identifier="gtk_invisible_set_screen"
32413               version="2.2">
32414         <doc xml:whitespace="preserve">Sets the #GdkScreen where the #GtkInvisible object will be displayed.</doc>
32415         <return-value transfer-ownership="none">
32416           <type name="none" c:type="void"/>
32417         </return-value>
32418         <parameters>
32419           <parameter name="screen" transfer-ownership="none">
32420             <doc xml:whitespace="preserve">a #GdkScreen.</doc>
32421             <type name="Gdk.Screen" c:type="GdkScreen*"/>
32422           </parameter>
32423         </parameters>
32424       </method>
32425       <method name="get_screen"
32426               c:identifier="gtk_invisible_get_screen"
32427               version="2.2">
32428         <doc xml:whitespace="preserve">Returns the #GdkScreen object associated with @invisible</doc>
32429         <return-value transfer-ownership="full">
32430           <doc xml:whitespace="preserve">the associated #GdkScreen.</doc>
32431           <type name="Gdk.Screen" c:type="GdkScreen*"/>
32432         </return-value>
32433       </method>
32434       <property name="screen" writable="1" transfer-ownership="none">
32435         <type name="Gdk.Screen" c:type="GdkScreen"/>
32436       </property>
32437       <field name="widget">
32438         <type name="Widget" c:type="GtkWidget"/>
32439       </field>
32440       <field name="has_user_ref_count">
32441         <type name="boolean" c:type="gboolean"/>
32442       </field>
32443       <field name="screen">
32444         <type name="Gdk.Screen" c:type="GdkScreen*"/>
32445       </field>
32446     </class>
32447     <record name="InvisibleClass"
32448             c:type="GtkInvisibleClass"
32449             glib:is-gtype-struct-for="Invisible">
32450       <field name="parent_class">
32451         <type name="WidgetClass" c:type="GtkWidgetClass"/>
32452       </field>
32453       <field name="gtk_reserved1">
32454         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
32455           <return-value transfer-ownership="none">
32456             <type name="none" c:type="void"/>
32457           </return-value>
32458         </callback>
32459       </field>
32460       <field name="gtk_reserved2">
32461         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
32462           <return-value transfer-ownership="none">
32463             <type name="none" c:type="void"/>
32464           </return-value>
32465         </callback>
32466       </field>
32467       <field name="gtk_reserved3">
32468         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
32469           <return-value transfer-ownership="none">
32470             <type name="none" c:type="void"/>
32471           </return-value>
32472         </callback>
32473       </field>
32474       <field name="gtk_reserved4">
32475         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
32476           <return-value transfer-ownership="none">
32477             <type name="none" c:type="void"/>
32478           </return-value>
32479         </callback>
32480       </field>
32481     </record>
32482     <class name="Item"
32483            c:type="GtkItem"
32484            parent="Bin"
32485            abstract="1"
32486            glib:type-name="GtkItem"
32487            glib:get-type="gtk_item_get_type"
32488            glib:type-struct="ItemClass">
32489       <implements name="Atk.ImplementorIface"/>
32490       <implements name="Buildable"/>
32491       <function name="factories_path_delete"
32492                 c:identifier="gtk_item_factories_path_delete"
32493                 deprecated="Use #GtkUIManager instead."
32494                 deprecated-version="2.4">
32495         <doc xml:whitespace="preserve">Deletes all widgets constructed from the specified path.</doc>
32496         <return-value transfer-ownership="none">
32497           <type name="none" c:type="void"/>
32498         </return-value>
32499         <parameters>
32500           <parameter name="ifactory_path" transfer-ownership="none">
32501             <doc xml:whitespace="preserve">a factory path to prepend to @path. May be %NULL if @path starts with a factory path</doc>
32502             <type name="utf8" c:type="gchar*"/>
32503           </parameter>
32504           <parameter name="path" transfer-ownership="none">
32505             <doc xml:whitespace="preserve">a path</doc>
32506             <type name="utf8" c:type="gchar*"/>
32507           </parameter>
32508         </parameters>
32509       </function>
32510       <method name="select" c:identifier="gtk_item_select">
32511         <return-value transfer-ownership="none">
32512           <type name="none" c:type="void"/>
32513         </return-value>
32514       </method>
32515       <method name="deselect" c:identifier="gtk_item_deselect">
32516         <return-value transfer-ownership="none">
32517           <type name="none" c:type="void"/>
32518         </return-value>
32519       </method>
32520       <method name="toggle" c:identifier="gtk_item_toggle">
32521         <return-value transfer-ownership="none">
32522           <type name="none" c:type="void"/>
32523         </return-value>
32524       </method>
32525       <field name="bin">
32526         <type name="Bin" c:type="GtkBin"/>
32527       </field>
32528       <glib:signal name="deselect">
32529         <return-value transfer-ownership="full">
32530           <type name="none" c:type="void"/>
32531         </return-value>
32532       </glib:signal>
32533       <glib:signal name="select">
32534         <return-value transfer-ownership="full">
32535           <type name="none" c:type="void"/>
32536         </return-value>
32537       </glib:signal>
32538       <glib:signal name="toggle">
32539         <return-value transfer-ownership="full">
32540           <type name="none" c:type="void"/>
32541         </return-value>
32542       </glib:signal>
32543     </class>
32544     <record name="ItemClass"
32545             c:type="GtkItemClass"
32546             glib:is-gtype-struct-for="Item">
32547       <field name="parent_class">
32548         <type name="BinClass" c:type="GtkBinClass"/>
32549       </field>
32550       <field name="select">
32551         <callback name="select" c:type="select">
32552           <return-value transfer-ownership="none">
32553             <type name="none" c:type="void"/>
32554           </return-value>
32555           <parameters>
32556             <parameter name="item" transfer-ownership="none">
32557               <type name="Item" c:type="GtkItem*"/>
32558             </parameter>
32559           </parameters>
32560         </callback>
32561       </field>
32562       <field name="deselect">
32563         <callback name="deselect" c:type="deselect">
32564           <return-value transfer-ownership="none">
32565             <type name="none" c:type="void"/>
32566           </return-value>
32567           <parameters>
32568             <parameter name="item" transfer-ownership="none">
32569               <type name="Item" c:type="GtkItem*"/>
32570             </parameter>
32571           </parameters>
32572         </callback>
32573       </field>
32574       <field name="toggle">
32575         <callback name="toggle" c:type="toggle">
32576           <return-value transfer-ownership="none">
32577             <type name="none" c:type="void"/>
32578           </return-value>
32579           <parameters>
32580             <parameter name="item" transfer-ownership="none">
32581               <type name="Item" c:type="GtkItem*"/>
32582             </parameter>
32583           </parameters>
32584         </callback>
32585       </field>
32586       <field name="gtk_reserved1">
32587         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
32588           <return-value transfer-ownership="none">
32589             <type name="none" c:type="void"/>
32590           </return-value>
32591         </callback>
32592       </field>
32593       <field name="gtk_reserved2">
32594         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
32595           <return-value transfer-ownership="none">
32596             <type name="none" c:type="void"/>
32597           </return-value>
32598         </callback>
32599       </field>
32600       <field name="gtk_reserved3">
32601         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
32602           <return-value transfer-ownership="none">
32603             <type name="none" c:type="void"/>
32604           </return-value>
32605         </callback>
32606       </field>
32607       <field name="gtk_reserved4">
32608         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
32609           <return-value transfer-ownership="none">
32610             <type name="none" c:type="void"/>
32611           </return-value>
32612         </callback>
32613       </field>
32614     </record>
32615     <class name="ItemFactory"
32616            c:type="GtkItemFactory"
32617            parent="Object"
32618            glib:type-name="GtkItemFactory"
32619            glib:get-type="gtk_item_factory_get_type"
32620            glib:type-struct="ItemFactoryClass">
32621       <constructor name="new"
32622                    c:identifier="gtk_item_factory_new"
32623                    deprecated="Use #GtkUIManager instead."
32624                    deprecated-version="2.4">
32625         <doc xml:whitespace="preserve">Creates a new #GtkItemFactory.
32626 Beware that the returned object does not have a floating reference.</doc>
32627         <return-value transfer-ownership="full">
32628           <doc xml:whitespace="preserve">a new #GtkItemFactory</doc>
32629           <type name="ItemFactory" c:type="GtkItemFactory*"/>
32630         </return-value>
32631         <parameters>
32632           <parameter name="container_type" transfer-ownership="none">
32633             <doc xml:whitespace="preserve">the kind of menu to create; can be #GTK_TYPE_MENU_BAR, #GTK_TYPE_MENU or #GTK_TYPE_OPTION_MENU</doc>
32634             <type name="GType" c:type="GType"/>
32635           </parameter>
32636           <parameter name="path" transfer-ownership="none">
32637             <doc xml:whitespace="preserve">the factory path of the new item factory, a string of the form &lt;literal&gt;"&amp;lt;name&amp;gt;"&lt;/literal&gt;</doc>
32638             <type name="utf8" c:type="gchar*"/>
32639           </parameter>
32640           <parameter name="accel_group"
32641                      transfer-ownership="none"
32642                      allow-none="1">
32643             <doc xml:whitespace="preserve">a #GtkAccelGroup to which the accelerators for the menu items will be added, or %NULL to create a new one</doc>
32644             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
32645           </parameter>
32646         </parameters>
32647       </constructor>
32648       <function name="add_foreign"
32649                 c:identifier="gtk_item_factory_add_foreign"
32650                 deprecated="The recommended API for this purpose are the functions "
32651                 deprecated-version="2.4">
32652         <doc xml:whitespace="preserve">Installs an accelerator for @accel_widget in @accel_group, that causes
32653 the ::activate signal to be emitted if the accelerator is activated.
32654 This function can be used to make widgets participate in the accel
32655 saving/restoring functionality provided by gtk_accel_map_save() and
32656 gtk_accel_map_load(), even if they haven't been created by an item
32657 factory. 
32658 gtk_menu_item_set_accel_path() and gtk_widget_set_accel_path(); don't 
32659 use gtk_item_factory_add_foreign() in new code, since it is likely to
32660 be removed in the future.</doc>
32661         <return-value transfer-ownership="none">
32662           <type name="none" c:type="void"/>
32663         </return-value>
32664         <parameters>
32665           <parameter name="accel_widget" transfer-ownership="none">
32666             <doc xml:whitespace="preserve">widget to install an accelerator on</doc>
32667             <type name="Widget" c:type="GtkWidget*"/>
32668           </parameter>
32669           <parameter name="full_path" transfer-ownership="none">
32670             <type name="utf8" c:type="gchar*"/>
32671           </parameter>
32672           <parameter name="accel_group" transfer-ownership="none">
32673             <doc xml:whitespace="preserve">the accelerator group to install the accelerator in</doc>
32674             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
32675           </parameter>
32676           <parameter name="keyval" transfer-ownership="none">
32677             <doc xml:whitespace="preserve">key value of the accelerator</doc>
32678             <type name="uint" c:type="guint"/>
32679           </parameter>
32680           <parameter name="modifiers" transfer-ownership="none">
32681             <doc xml:whitespace="preserve">modifier combination of the accelerator</doc>
32682             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
32683           </parameter>
32684         </parameters>
32685       </function>
32686       <function name="from_widget"
32687                 c:identifier="gtk_item_factory_from_widget"
32688                 deprecated="Use #GtkUIManager instead."
32689                 deprecated-version="2.4">
32690         <doc xml:whitespace="preserve">Obtains the item factory from which a widget was created.</doc>
32691         <return-value transfer-ownership="full">
32692           <doc xml:whitespace="preserve">the item factory from which @widget was created, or %NULL</doc>
32693           <type name="ItemFactory" c:type="GtkItemFactory*"/>
32694         </return-value>
32695         <parameters>
32696           <parameter name="widget" transfer-ownership="none">
32697             <doc xml:whitespace="preserve">a widget</doc>
32698             <type name="Widget" c:type="GtkWidget*"/>
32699           </parameter>
32700         </parameters>
32701       </function>
32702       <function name="path_from_widget"
32703                 c:identifier="gtk_item_factory_path_from_widget"
32704                 deprecated="Use #GtkUIManager instead."
32705                 deprecated-version="2.4">
32706         <doc xml:whitespace="preserve">If @widget has been created by an item factory, returns the full path
32707 to it. (The full path of a widget is the concatenation of the factory 
32708 path specified in gtk_item_factory_new() with the path specified in the 
32709 #GtkItemFactoryEntry from which the widget was created.)</doc>
32710         <return-value transfer-ownership="none">
32711           <doc xml:whitespace="preserve">the full path to @widget if it has been created by an item factory, %NULL otherwise. This value is owned by GTK+ and must not be modified or freed.</doc>
32712           <type name="utf8" c:type="gchar*"/>
32713         </return-value>
32714         <parameters>
32715           <parameter name="widget" transfer-ownership="none">
32716             <doc xml:whitespace="preserve">a widget</doc>
32717             <type name="Widget" c:type="GtkWidget*"/>
32718           </parameter>
32719         </parameters>
32720       </function>
32721       <function name="popup_data_from_widget"
32722                 c:identifier="gtk_item_factory_popup_data_from_widget"
32723                 deprecated="Use #GtkUIManager instead."
32724                 deprecated-version="2.4">
32725         <doc xml:whitespace="preserve">Obtains the @popup_data which was passed to 
32726 gtk_item_factory_popup_with_data(). This data is available until the menu
32727 is popped down again.</doc>
32728         <return-value transfer-ownership="none">
32729           <doc xml:whitespace="preserve">@popup_data associated with the item factory from which @widget was created, or %NULL if @widget wasn't created by an item factory</doc>
32730           <type name="any" c:type="gpointer"/>
32731         </return-value>
32732         <parameters>
32733           <parameter name="widget" transfer-ownership="none">
32734             <doc xml:whitespace="preserve">a widget</doc>
32735             <type name="Widget" c:type="GtkWidget*"/>
32736           </parameter>
32737         </parameters>
32738       </function>
32739       <function name="from_path"
32740                 c:identifier="gtk_item_factory_from_path"
32741                 deprecated="Use #GtkUIManager instead."
32742                 deprecated-version="2.4">
32743         <doc xml:whitespace="preserve">Finds an item factory which has been constructed using the 
32744 &lt;literal&gt;"&amp;lt;name&amp;gt;"&lt;/literal&gt; prefix of @path as the @path argument 
32745 for gtk_item_factory_new().</doc>
32746         <return-value transfer-ownership="full">
32747           <doc xml:whitespace="preserve">the #GtkItemFactory created for the given factory path, or %NULL</doc>
32748           <type name="ItemFactory" c:type="GtkItemFactory*"/>
32749         </return-value>
32750         <parameters>
32751           <parameter name="path" transfer-ownership="none">
32752             <doc xml:whitespace="preserve">a string starting with a factory path of the form &lt;literal&gt;"&amp;lt;name&amp;gt;"&lt;/literal&gt;</doc>
32753             <type name="utf8" c:type="gchar*"/>
32754           </parameter>
32755         </parameters>
32756       </function>
32757       <function name="create_menu_entries"
32758                 c:identifier="gtk_item_factory_create_menu_entries"
32759                 deprecated="Use #GtkUIManager instead."
32760                 deprecated-version="2.4">
32761         <doc xml:whitespace="preserve">Creates the menu items from the @entries.</doc>
32762         <return-value transfer-ownership="none">
32763           <type name="none" c:type="void"/>
32764         </return-value>
32765         <parameters>
32766           <parameter name="n_entries" transfer-ownership="none">
32767             <doc xml:whitespace="preserve">the length of @entries</doc>
32768             <type name="uint" c:type="guint"/>
32769           </parameter>
32770           <parameter name="entries" transfer-ownership="none">
32771             <doc xml:whitespace="preserve">an array of #GtkMenuEntry&lt;!-- --&gt;s</doc>
32772             <type name="MenuEntry" c:type="GtkMenuEntry*"/>
32773           </parameter>
32774         </parameters>
32775       </function>
32776       <method name="construct"
32777               c:identifier="gtk_item_factory_construct"
32778               deprecated="Use #GtkUIManager instead."
32779               deprecated-version="2.4">
32780         <doc xml:whitespace="preserve">Initializes an item factory.</doc>
32781         <return-value transfer-ownership="none">
32782           <type name="none" c:type="void"/>
32783         </return-value>
32784         <parameters>
32785           <parameter name="container_type" transfer-ownership="none">
32786             <doc xml:whitespace="preserve">the kind of menu to create; can be #GTK_TYPE_MENU_BAR, #GTK_TYPE_MENU or #GTK_TYPE_OPTION_MENU</doc>
32787             <type name="GType" c:type="GType"/>
32788           </parameter>
32789           <parameter name="path" transfer-ownership="none">
32790             <doc xml:whitespace="preserve">the factory path of @ifactory, a string of the form &lt;literal&gt;"&amp;lt;name&amp;gt;"&lt;/literal&gt;</doc>
32791             <type name="utf8" c:type="gchar*"/>
32792           </parameter>
32793           <parameter name="accel_group" transfer-ownership="none">
32794             <doc xml:whitespace="preserve">a #GtkAccelGroup to which the accelerators for the menu items will be added, or %NULL to create a new one</doc>
32795             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
32796           </parameter>
32797         </parameters>
32798       </method>
32799       <method name="get_item" c:identifier="gtk_item_factory_get_item">
32800         <return-value transfer-ownership="full">
32801           <type name="Widget" c:type="GtkWidget*"/>
32802         </return-value>
32803         <parameters>
32804           <parameter name="path" transfer-ownership="none">
32805             <type name="utf8" c:type="gchar*"/>
32806           </parameter>
32807         </parameters>
32808       </method>
32809       <method name="get_widget"
32810               c:identifier="gtk_item_factory_get_widget"
32811               deprecated="Use #GtkUIManager instead."
32812               deprecated-version="2.4">
32813         <doc xml:whitespace="preserve">Obtains the widget which corresponds to @path. 
32814 If the widget corresponding to @path is a menu item which opens a 
32815 submenu, then the submenu is returned. If you are interested in the menu 
32816 item, use gtk_item_factory_get_item() instead.</doc>
32817         <return-value transfer-ownership="full">
32818           <doc xml:whitespace="preserve">the widget for the given path, or %NULL if @path doesn't lead to a widget</doc>
32819           <type name="Widget" c:type="GtkWidget*"/>
32820         </return-value>
32821         <parameters>
32822           <parameter name="path" transfer-ownership="none">
32823             <doc xml:whitespace="preserve">the path to the widget</doc>
32824             <type name="utf8" c:type="gchar*"/>
32825           </parameter>
32826         </parameters>
32827       </method>
32828       <method name="get_widget_by_action"
32829               c:identifier="gtk_item_factory_get_widget_by_action"
32830               deprecated="Use #GtkUIManager instead."
32831               deprecated-version="2.4">
32832         <doc xml:whitespace="preserve">Obtains the widget which was constructed from the #GtkItemFactoryEntry
32833 with the given @action.
32834 If there are multiple items with the same action, the result is 
32835 undefined.</doc>
32836         <return-value transfer-ownership="full">
32837           <doc xml:whitespace="preserve">the widget which corresponds to the given action, or %NULL if no widget was found</doc>
32838           <type name="Widget" c:type="GtkWidget*"/>
32839         </return-value>
32840         <parameters>
32841           <parameter name="action" transfer-ownership="none">
32842             <doc xml:whitespace="preserve">an action as specified in the @callback_action field of #GtkItemFactoryEntry</doc>
32843             <type name="uint" c:type="guint"/>
32844           </parameter>
32845         </parameters>
32846       </method>
32847       <method name="get_item_by_action"
32848               c:identifier="gtk_item_factory_get_item_by_action"
32849               deprecated="Use #GtkUIManager instead."
32850               deprecated-version="2.4">
32851         <doc xml:whitespace="preserve">Obtains the menu item which was constructed from the first 
32852 #GtkItemFactoryEntry with the given @action.</doc>
32853         <return-value transfer-ownership="full">
32854           <doc xml:whitespace="preserve">the menu item which corresponds to the given action, or %NULL if no menu item was found</doc>
32855           <type name="Widget" c:type="GtkWidget*"/>
32856         </return-value>
32857         <parameters>
32858           <parameter name="action" transfer-ownership="none">
32859             <doc xml:whitespace="preserve">an action as specified in the @callback_action field of #GtkItemFactoryEntry</doc>
32860             <type name="uint" c:type="guint"/>
32861           </parameter>
32862         </parameters>
32863       </method>
32864       <method name="create_item"
32865               c:identifier="gtk_item_factory_create_item"
32866               deprecated="Use #GtkUIManager instead."
32867               deprecated-version="2.4">
32868         <doc xml:whitespace="preserve">Creates an item for @entry.</doc>
32869         <return-value transfer-ownership="none">
32870           <type name="none" c:type="void"/>
32871         </return-value>
32872         <parameters>
32873           <parameter name="entry" transfer-ownership="none">
32874             <doc xml:whitespace="preserve">the #GtkItemFactoryEntry to create an item for</doc>
32875             <type name="ItemFactoryEntry" c:type="GtkItemFactoryEntry*"/>
32876           </parameter>
32877           <parameter name="callback_data" transfer-ownership="none">
32878             <doc xml:whitespace="preserve">data passed to the callback function of @entry</doc>
32879             <type name="any" c:type="gpointer"/>
32880           </parameter>
32881           <parameter name="callback_type" transfer-ownership="none">
32882             <doc xml:whitespace="preserve">1 if the callback function of @entry is of type #GtkItemFactoryCallback1, 2 if it is of type #GtkItemFactoryCallback2</doc>
32883             <type name="uint" c:type="guint"/>
32884           </parameter>
32885         </parameters>
32886       </method>
32887       <method name="create_items"
32888               c:identifier="gtk_item_factory_create_items"
32889               deprecated="Use #GtkUIManager instead."
32890               deprecated-version="2.4">
32891         <doc xml:whitespace="preserve">Creates the menu items from the @entries.</doc>
32892         <return-value transfer-ownership="none">
32893           <type name="none" c:type="void"/>
32894         </return-value>
32895         <parameters>
32896           <parameter name="n_entries" transfer-ownership="none">
32897             <doc xml:whitespace="preserve">the length of @entries</doc>
32898             <type name="uint" c:type="guint"/>
32899           </parameter>
32900           <parameter name="entries" transfer-ownership="none">
32901             <doc xml:whitespace="preserve">an array of #GtkItemFactoryEntry&lt;!-- --&gt;s whose @callback members must by of type #GtkItemFactoryCallback1</doc>
32902             <type name="ItemFactoryEntry" c:type="GtkItemFactoryEntry*"/>
32903           </parameter>
32904           <parameter name="callback_data" transfer-ownership="none">
32905             <doc xml:whitespace="preserve">data passed to the callback functions of all entries</doc>
32906             <type name="any" c:type="gpointer"/>
32907           </parameter>
32908         </parameters>
32909       </method>
32910       <method name="delete_item"
32911               c:identifier="gtk_item_factory_delete_item"
32912               deprecated="Use #GtkUIManager instead."
32913               deprecated-version="2.4">
32914         <doc xml:whitespace="preserve">Deletes the menu item which was created for @path by the given
32915 item factory.</doc>
32916         <return-value transfer-ownership="none">
32917           <type name="none" c:type="void"/>
32918         </return-value>
32919         <parameters>
32920           <parameter name="path" transfer-ownership="none">
32921             <doc xml:whitespace="preserve">a path</doc>
32922             <type name="utf8" c:type="gchar*"/>
32923           </parameter>
32924         </parameters>
32925       </method>
32926       <method name="delete_entry"
32927               c:identifier="gtk_item_factory_delete_entry"
32928               deprecated="Use #GtkUIManager instead."
32929               deprecated-version="2.4">
32930         <doc xml:whitespace="preserve">Deletes the menu item which was created from @entry by the given
32931 item factory.</doc>
32932         <return-value transfer-ownership="none">
32933           <type name="none" c:type="void"/>
32934         </return-value>
32935         <parameters>
32936           <parameter name="entry" transfer-ownership="none">
32937             <doc xml:whitespace="preserve">a #GtkItemFactoryEntry</doc>
32938             <type name="ItemFactoryEntry" c:type="GtkItemFactoryEntry*"/>
32939           </parameter>
32940         </parameters>
32941       </method>
32942       <method name="delete_entries"
32943               c:identifier="gtk_item_factory_delete_entries"
32944               deprecated="Use #GtkUIManager instead."
32945               deprecated-version="2.4">
32946         <doc xml:whitespace="preserve">Deletes the menu items which were created from the @entries by the given
32947 item factory.</doc>
32948         <return-value transfer-ownership="none">
32949           <type name="none" c:type="void"/>
32950         </return-value>
32951         <parameters>
32952           <parameter name="n_entries" transfer-ownership="none">
32953             <doc xml:whitespace="preserve">the length of @entries</doc>
32954             <type name="uint" c:type="guint"/>
32955           </parameter>
32956           <parameter name="entries" transfer-ownership="none">
32957             <doc xml:whitespace="preserve">an array of #GtkItemFactoryEntry&lt;!-- --&gt;s</doc>
32958             <type name="ItemFactoryEntry" c:type="GtkItemFactoryEntry*"/>
32959           </parameter>
32960         </parameters>
32961       </method>
32962       <method name="popup"
32963               c:identifier="gtk_item_factory_popup"
32964               deprecated="Use #GtkUIManager instead."
32965               deprecated-version="2.4">
32966         <doc xml:whitespace="preserve">Pops up the menu constructed from the item factory at (@x, @y).
32967 The @mouse_button parameter should be the mouse button pressed to initiate
32968 the menu popup. If the menu popup was initiated by something other than
32969 a mouse button press, such as a mouse button release or a keypress,
32970 The @time_ parameter should be the time stamp of the event that
32971 initiated the popup. If such an event is not available, use
32972 gtk_get_current_event_time() instead.
32973 The operation of the @mouse_button and the @time_ parameter is the same
32974 as the @button and @activation_time parameters for gtk_menu_popup().</doc>
32975         <return-value transfer-ownership="none">
32976           <type name="none" c:type="void"/>
32977         </return-value>
32978         <parameters>
32979           <parameter name="x" transfer-ownership="none">
32980             <doc xml:whitespace="preserve">the x position</doc>
32981             <type name="uint" c:type="guint"/>
32982           </parameter>
32983           <parameter name="y" transfer-ownership="none">
32984             <doc xml:whitespace="preserve">the y position</doc>
32985             <type name="uint" c:type="guint"/>
32986           </parameter>
32987           <parameter name="mouse_button" transfer-ownership="none">
32988             <doc xml:whitespace="preserve">the mouse button which was pressed to initiate the popup</doc>
32989             <type name="uint" c:type="guint"/>
32990           </parameter>
32991           <parameter name="time_" transfer-ownership="none">
32992             <doc xml:whitespace="preserve">the time at which the activation event occurred</doc>
32993             <type name="uint32" c:type="guint32"/>
32994           </parameter>
32995         </parameters>
32996       </method>
32997       <method name="popup_with_data"
32998               c:identifier="gtk_item_factory_popup_with_data"
32999               deprecated="Use #GtkUIManager instead."
33000               deprecated-version="2.4">
33001         <doc xml:whitespace="preserve">Pops up the menu constructed from the item factory at (@x, @y). Callbacks
33002 can access the @popup_data while the menu is posted via 
33003 gtk_item_factory_popup_data() and gtk_item_factory_popup_data_from_widget().
33004 The @mouse_button parameter should be the mouse button pressed to initiate
33005 the menu popup. If the menu popup was initiated by something other than
33006 a mouse button press, such as a mouse button release or a keypress,
33007 The @time_ parameter should be the time stamp of the event that
33008 initiated the popup. If such an event is not available, use
33009 gtk_get_current_event_time() instead.
33010 The operation of the @mouse_button and the @time_ parameters is the same
33011 as the @button and @activation_time parameters for gtk_menu_popup().</doc>
33012         <return-value transfer-ownership="none">
33013           <type name="none" c:type="void"/>
33014         </return-value>
33015         <parameters>
33016           <parameter name="popup_data" transfer-ownership="none">
33017             <doc xml:whitespace="preserve">data available for callbacks while the menu is posted</doc>
33018             <type name="any" c:type="gpointer"/>
33019           </parameter>
33020           <parameter name="destroy" transfer-ownership="none" scope="call">
33021             <doc xml:whitespace="preserve">a #GDestroyNotify function to be called on @popup_data when the menu is unposted</doc>
33022             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
33023           </parameter>
33024           <parameter name="x" transfer-ownership="none">
33025             <doc xml:whitespace="preserve">the x position</doc>
33026             <type name="uint" c:type="guint"/>
33027           </parameter>
33028           <parameter name="y" transfer-ownership="none">
33029             <doc xml:whitespace="preserve">the y position</doc>
33030             <type name="uint" c:type="guint"/>
33031           </parameter>
33032           <parameter name="mouse_button" transfer-ownership="none">
33033             <doc xml:whitespace="preserve">the mouse button which was pressed to initiate the popup</doc>
33034             <type name="uint" c:type="guint"/>
33035           </parameter>
33036           <parameter name="time_" transfer-ownership="none">
33037             <doc xml:whitespace="preserve">the time at which the activation event occurred</doc>
33038             <type name="uint32" c:type="guint32"/>
33039           </parameter>
33040         </parameters>
33041       </method>
33042       <method name="popup_data"
33043               c:identifier="gtk_item_factory_popup_data"
33044               deprecated="Use #GtkUIManager instead."
33045               deprecated-version="2.4">
33046         <doc xml:whitespace="preserve">Obtains the @popup_data which was passed to 
33047 gtk_item_factory_popup_with_data(). This data is available until the menu
33048 is popped down again.</doc>
33049         <return-value transfer-ownership="none">
33050           <doc xml:whitespace="preserve">@popup_data associated with @ifactory</doc>
33051           <type name="any" c:type="gpointer"/>
33052         </return-value>
33053       </method>
33054       <method name="set_translate_func"
33055               c:identifier="gtk_item_factory_set_translate_func"
33056               deprecated="Use #GtkUIManager instead."
33057               deprecated-version="2.4">
33058         <doc xml:whitespace="preserve">Sets a function to be used for translating the path elements before they
33059 are displayed.</doc>
33060         <return-value transfer-ownership="none">
33061           <type name="none" c:type="void"/>
33062         </return-value>
33063         <parameters>
33064           <parameter name="func"
33065                      transfer-ownership="none"
33066                      scope="notified"
33067                      closure="2"
33068                      destroy="3">
33069             <doc xml:whitespace="preserve">the #GtkTranslateFunc function to be used to translate path elements</doc>
33070             <type name="TranslateFunc" c:type="GtkTranslateFunc"/>
33071           </parameter>
33072           <parameter name="data" transfer-ownership="none">
33073             <doc xml:whitespace="preserve">data to pass to @func and @notify</doc>
33074             <type name="any" c:type="gpointer"/>
33075           </parameter>
33076           <parameter name="notify" transfer-ownership="none" scope="call">
33077             <doc xml:whitespace="preserve">a #GDestroyNotify function to be called when @ifactory is destroyed and when the translation function is changed again</doc>
33078             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
33079           </parameter>
33080         </parameters>
33081       </method>
33082       <method name="create_items_ac"
33083               c:identifier="gtk_item_factory_create_items_ac"
33084               deprecated="Use #GtkUIManager instead."
33085               deprecated-version="2.4">
33086         <doc xml:whitespace="preserve">Creates the menu items from the @entries.</doc>
33087         <return-value transfer-ownership="none">
33088           <type name="none" c:type="void"/>
33089         </return-value>
33090         <parameters>
33091           <parameter name="n_entries" transfer-ownership="none">
33092             <doc xml:whitespace="preserve">the length of @entries</doc>
33093             <type name="uint" c:type="guint"/>
33094           </parameter>
33095           <parameter name="entries" transfer-ownership="none">
33096             <doc xml:whitespace="preserve">an array of #GtkItemFactoryEntry&lt;!-- --&gt;s</doc>
33097             <type name="ItemFactoryEntry" c:type="GtkItemFactoryEntry*"/>
33098           </parameter>
33099           <parameter name="callback_data" transfer-ownership="none">
33100             <doc xml:whitespace="preserve">data passed to the callback functions of all entries</doc>
33101             <type name="any" c:type="gpointer"/>
33102           </parameter>
33103           <parameter name="callback_type" transfer-ownership="none">
33104             <doc xml:whitespace="preserve">1 if the callback functions in @entries are of type #GtkItemFactoryCallback1, 2 if they are of type #GtkItemFactoryCallback2</doc>
33105             <type name="uint" c:type="guint"/>
33106           </parameter>
33107         </parameters>
33108       </method>
33109       <field name="object">
33110         <type name="Object" c:type="GtkObject"/>
33111       </field>
33112       <field name="path">
33113         <type name="utf8" c:type="gchar*"/>
33114       </field>
33115       <field name="accel_group">
33116         <type name="AccelGroup" c:type="GtkAccelGroup*"/>
33117       </field>
33118       <field name="widget">
33119         <type name="Widget" c:type="GtkWidget*"/>
33120       </field>
33121       <field name="items">
33122         <type name="GLib.SList" c:type="GSList*">
33123           <type name="any" c:type="gpointer"/>
33124         </type>
33125       </field>
33126       <field name="translate_func">
33127         <type name="TranslateFunc" c:type="GtkTranslateFunc"/>
33128       </field>
33129       <field name="translate_data">
33130         <type name="any" c:type="gpointer"/>
33131       </field>
33132       <field name="translate_notify">
33133         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
33134       </field>
33135     </class>
33136     <callback name="ItemFactoryCallback" c:type="GtkItemFactoryCallback">
33137       <return-value transfer-ownership="none">
33138         <type name="none" c:type="void"/>
33139       </return-value>
33140     </callback>
33141     <callback name="ItemFactoryCallback1" c:type="GtkItemFactoryCallback1">
33142       <return-value transfer-ownership="none">
33143         <type name="none" c:type="void"/>
33144       </return-value>
33145       <parameters>
33146         <parameter name="callback_data" transfer-ownership="none">
33147           <type name="any" c:type="gpointer"/>
33148         </parameter>
33149         <parameter name="callback_action" transfer-ownership="none">
33150           <type name="uint" c:type="guint"/>
33151         </parameter>
33152         <parameter name="widget" transfer-ownership="none">
33153           <type name="Widget" c:type="GtkWidget*"/>
33154         </parameter>
33155       </parameters>
33156     </callback>
33157     <callback name="ItemFactoryCallback2" c:type="GtkItemFactoryCallback2">
33158       <return-value transfer-ownership="none">
33159         <type name="none" c:type="void"/>
33160       </return-value>
33161       <parameters>
33162         <parameter name="widget" transfer-ownership="none">
33163           <type name="Widget" c:type="GtkWidget*"/>
33164         </parameter>
33165         <parameter name="callback_data" transfer-ownership="none">
33166           <type name="any" c:type="gpointer"/>
33167         </parameter>
33168         <parameter name="callback_action" transfer-ownership="none">
33169           <type name="uint" c:type="guint"/>
33170         </parameter>
33171       </parameters>
33172     </callback>
33173     <record name="ItemFactoryClass"
33174             c:type="GtkItemFactoryClass"
33175             glib:is-gtype-struct-for="ItemFactory">
33176       <field name="object_class">
33177         <type name="ObjectClass" c:type="GtkObjectClass"/>
33178       </field>
33179       <field name="item_ht">
33180         <type name="GLib.HashTable" c:type="GHashTable*"/>
33181       </field>
33182       <field name="gtk_reserved1">
33183         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
33184           <return-value transfer-ownership="none">
33185             <type name="none" c:type="void"/>
33186           </return-value>
33187         </callback>
33188       </field>
33189       <field name="gtk_reserved2">
33190         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
33191           <return-value transfer-ownership="none">
33192             <type name="none" c:type="void"/>
33193           </return-value>
33194         </callback>
33195       </field>
33196       <field name="gtk_reserved3">
33197         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
33198           <return-value transfer-ownership="none">
33199             <type name="none" c:type="void"/>
33200           </return-value>
33201         </callback>
33202       </field>
33203       <field name="gtk_reserved4">
33204         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
33205           <return-value transfer-ownership="none">
33206             <type name="none" c:type="void"/>
33207           </return-value>
33208         </callback>
33209       </field>
33210     </record>
33211     <record name="ItemFactoryEntry" c:type="GtkItemFactoryEntry">
33212       <field name="path" writable="1">
33213         <type name="utf8" c:type="gchar*"/>
33214       </field>
33215       <field name="accelerator" writable="1">
33216         <type name="utf8" c:type="gchar*"/>
33217       </field>
33218       <field name="callback" writable="1">
33219         <type name="ItemFactoryCallback" c:type="GtkItemFactoryCallback"/>
33220       </field>
33221       <field name="callback_action" writable="1">
33222         <type name="uint" c:type="guint"/>
33223       </field>
33224       <field name="item_type" writable="1">
33225         <type name="utf8" c:type="gchar*"/>
33226       </field>
33227       <field name="extra_data" writable="1">
33228         <type name="any" c:type="gconstpointer"/>
33229       </field>
33230     </record>
33231     <record name="ItemFactoryItem" c:type="GtkItemFactoryItem">
33232       <field name="path" writable="1">
33233         <type name="utf8" c:type="gchar*"/>
33234       </field>
33235       <field name="widgets" writable="1">
33236         <type name="GLib.SList" c:type="GSList*">
33237           <type name="any" c:type="gpointer"/>
33238         </type>
33239       </field>
33240     </record>
33241     <enumeration name="Justification"
33242                  glib:type-name="GtkJustification"
33243                  glib:get-type="gtk_justification_get_type"
33244                  c:type="GtkJustification">
33245       <member name="left"
33246               value="0"
33247               c:identifier="GTK_JUSTIFY_LEFT"
33248               glib:nick="left"/>
33249       <member name="right"
33250               value="1"
33251               c:identifier="GTK_JUSTIFY_RIGHT"
33252               glib:nick="right"/>
33253       <member name="center"
33254               value="2"
33255               c:identifier="GTK_JUSTIFY_CENTER"
33256               glib:nick="center"/>
33257       <member name="fill"
33258               value="3"
33259               c:identifier="GTK_JUSTIFY_FILL"
33260               glib:nick="fill"/>
33261     </enumeration>
33262     <callback name="KeySnoopFunc" c:type="GtkKeySnoopFunc">
33263       <return-value transfer-ownership="none">
33264         <type name="int" c:type="gint"/>
33265       </return-value>
33266       <parameters>
33267         <parameter name="grab_widget" transfer-ownership="none">
33268           <type name="Widget" c:type="GtkWidget*"/>
33269         </parameter>
33270         <parameter name="event" transfer-ownership="none">
33271           <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
33272         </parameter>
33273         <parameter name="func_data" transfer-ownership="none">
33274           <type name="any" c:type="gpointer"/>
33275         </parameter>
33276       </parameters>
33277     </callback>
33278     <class name="Label"
33279            c:type="GtkLabel"
33280            parent="Misc"
33281            glib:type-name="GtkLabel"
33282            glib:get-type="gtk_label_get_type"
33283            glib:type-struct="LabelClass">
33284       <implements name="Atk.ImplementorIface"/>
33285       <implements name="Buildable"/>
33286       <constructor name="new" c:identifier="gtk_label_new">
33287         <doc xml:whitespace="preserve">Creates a new label with the given text inside it. You can
33288 pass %NULL to get an empty label widget.</doc>
33289         <return-value transfer-ownership="full">
33290           <doc xml:whitespace="preserve">the new #GtkLabel</doc>
33291           <type name="Label" c:type="GtkWidget*"/>
33292         </return-value>
33293         <parameters>
33294           <parameter name="str" transfer-ownership="none">
33295             <doc xml:whitespace="preserve">The text of the label</doc>
33296             <type name="utf8" c:type="gchar*"/>
33297           </parameter>
33298         </parameters>
33299       </constructor>
33300       <constructor name="new_with_mnemonic"
33301                    c:identifier="gtk_label_new_with_mnemonic">
33302         <doc xml:whitespace="preserve">Creates a new #GtkLabel, containing the text in @str.
33303 If characters in @str are preceded by an underscore, they are
33304 underlined. If you need a literal underscore character in a label, use
33305 '__' (two underscores). The first underlined character represents a 
33306 keyboard accelerator called a mnemonic. The mnemonic key can be used 
33307 to activate another widget, chosen automatically, or explicitly using
33308 gtk_label_set_mnemonic_widget().
33309 If gtk_label_set_mnemonic_widget() is not called, then the first 
33310 activatable ancestor of the #GtkLabel will be chosen as the mnemonic 
33311 widget. For instance, if the label is inside a button or menu item, 
33312 the button or menu item will automatically become the mnemonic widget 
33313 and be activated by the mnemonic.</doc>
33314         <return-value transfer-ownership="full">
33315           <doc xml:whitespace="preserve">the new #GtkLabel</doc>
33316           <type name="Label" c:type="GtkWidget*"/>
33317         </return-value>
33318         <parameters>
33319           <parameter name="str" transfer-ownership="none">
33320             <doc xml:whitespace="preserve">The text of the label, with an underscore in front of the mnemonic character</doc>
33321             <type name="utf8" c:type="gchar*"/>
33322           </parameter>
33323         </parameters>
33324       </constructor>
33325       <method name="set_text" c:identifier="gtk_label_set_text">
33326         <doc xml:whitespace="preserve">Sets the text within the #GtkLabel widget. It overwrites any text that
33327 was there before.  
33328 This will also clear any previously set mnemonic accelerators.</doc>
33329         <return-value transfer-ownership="none">
33330           <type name="none" c:type="void"/>
33331         </return-value>
33332         <parameters>
33333           <parameter name="str" transfer-ownership="none">
33334             <doc xml:whitespace="preserve">The text you want to set</doc>
33335             <type name="utf8" c:type="gchar*"/>
33336           </parameter>
33337         </parameters>
33338       </method>
33339       <method name="get_text" c:identifier="gtk_label_get_text">
33340         <doc xml:whitespace="preserve">Fetches the text from a label widget, as displayed on the
33341 screen. This does not include any embedded underlines
33342 indicating mnemonics or Pango markup. (See gtk_label_get_label())
33343 string used by the label, and must not be modified.</doc>
33344         <return-value transfer-ownership="none">
33345           <doc xml:whitespace="preserve">the text in the label widget. This is the internal</doc>
33346           <type name="utf8" c:type="gchar*"/>
33347         </return-value>
33348       </method>
33349       <method name="set_attributes" c:identifier="gtk_label_set_attributes">
33350         <doc xml:whitespace="preserve">Sets a #PangoAttrList; the attributes in the list are applied to the
33351 label text. 
33352 &lt;note&gt;&lt;para&gt;The attributes set with this function will be applied
33353 and merged with any other attributes previously effected by way
33354 of the #GtkLabel:use-underline or #GtkLabel:use-markup properties.
33355 While it is not recommended to mix markup strings with manually set
33356 attributes, if you must; know that the attributes will be applied
33357 to the label after the markup string is parsed.&lt;/para&gt;&lt;/note&gt;</doc>
33358         <return-value transfer-ownership="none">
33359           <type name="none" c:type="void"/>
33360         </return-value>
33361         <parameters>
33362           <parameter name="attrs" transfer-ownership="none">
33363             <doc xml:whitespace="preserve">a #PangoAttrList</doc>
33364             <type name="Pango.AttrList" c:type="PangoAttrList*"/>
33365           </parameter>
33366         </parameters>
33367       </method>
33368       <method name="get_attributes" c:identifier="gtk_label_get_attributes">
33369         <doc xml:whitespace="preserve">Gets the attribute list that was set on the label using
33370 gtk_label_set_attributes(), if any. This function does
33371 not reflect attributes that come from the labels markup
33372 (see gtk_label_set_markup()). If you want to get the
33373 effective attributes for the label, use
33374 pango_layout_get_attribute (gtk_label_get_layout (label)).</doc>
33375         <return-value transfer-ownership="full">
33376           <doc xml:whitespace="preserve">the attribute list, or %NULL if none was set.</doc>
33377           <type name="Pango.AttrList" c:type="PangoAttrList*"/>
33378         </return-value>
33379       </method>
33380       <method name="set_label" c:identifier="gtk_label_set_label">
33381         <doc xml:whitespace="preserve">Sets the text of the label. The label is interpreted as
33382 including embedded underlines and/or Pango markup depending
33383 on the values of the #GtkLabel:use-underline" and
33384 #GtkLabel:use-markup properties.</doc>
33385         <return-value transfer-ownership="none">
33386           <type name="none" c:type="void"/>
33387         </return-value>
33388         <parameters>
33389           <parameter name="str" transfer-ownership="none">
33390             <doc xml:whitespace="preserve">the new text to set for the label</doc>
33391             <type name="utf8" c:type="gchar*"/>
33392           </parameter>
33393         </parameters>
33394       </method>
33395       <method name="get_label" c:identifier="gtk_label_get_label">
33396         <doc xml:whitespace="preserve">Fetches the text from a label widget including any embedded
33397 underlines indicating mnemonics and Pango markup. (See
33398 gtk_label_get_text()).
33399 owned by the widget and must not be modified or freed.</doc>
33400         <return-value transfer-ownership="none">
33401           <doc xml:whitespace="preserve">the text of the label widget. This string is</doc>
33402           <type name="utf8" c:type="gchar*"/>
33403         </return-value>
33404       </method>
33405       <method name="set_markup" c:identifier="gtk_label_set_markup">
33406         <doc xml:whitespace="preserve">Parses @str which is marked up with the &lt;link
33407 linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;, setting the
33408 label's text and attribute list based on the parse results. If the @str is
33409 external data, you may need to escape it with g_markup_escape_text() or
33410 g_markup_printf_escaped()&lt;!-- --&gt;:
33411 |[
33412 char *markup;
33413 markup = g_markup_printf_escaped ("&amp;lt;span style=\"italic\"&amp;gt;&amp;percnt;s&amp;lt;/span&amp;gt;", str);
33414 gtk_label_set_markup (GTK_LABEL (label), markup);
33415 g_free (markup);
33416 ]|</doc>
33417         <return-value transfer-ownership="none">
33418           <type name="none" c:type="void"/>
33419         </return-value>
33420         <parameters>
33421           <parameter name="str" transfer-ownership="none">
33422             <doc xml:whitespace="preserve">a markup string (see &lt;link linkend="PangoMarkupFormat"&gt;Pango markup format&lt;/link&gt;)</doc>
33423             <type name="utf8" c:type="gchar*"/>
33424           </parameter>
33425         </parameters>
33426       </method>
33427       <method name="set_use_markup" c:identifier="gtk_label_set_use_markup">
33428         <doc xml:whitespace="preserve">Sets whether the text of the label contains markup in &lt;link
33429 linkend="PangoMarkupFormat"&gt;Pango's text markup
33430 language&lt;/link&gt;. See gtk_label_set_markup().</doc>
33431         <return-value transfer-ownership="none">
33432           <type name="none" c:type="void"/>
33433         </return-value>
33434         <parameters>
33435           <parameter name="setting" transfer-ownership="none">
33436             <doc xml:whitespace="preserve">%TRUE if the label's text should be parsed for markup.</doc>
33437             <type name="boolean" c:type="gboolean"/>
33438           </parameter>
33439         </parameters>
33440       </method>
33441       <method name="get_use_markup" c:identifier="gtk_label_get_use_markup">
33442         <doc xml:whitespace="preserve">Returns whether the label's text is interpreted as marked up with
33443 the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup
33444 language&lt;/link&gt;. See gtk_label_set_use_markup ().</doc>
33445         <return-value transfer-ownership="none">
33446           <doc xml:whitespace="preserve">%TRUE if the label's text will be parsed for markup.</doc>
33447           <type name="boolean" c:type="gboolean"/>
33448         </return-value>
33449       </method>
33450       <method name="set_use_underline"
33451               c:identifier="gtk_label_set_use_underline">
33452         <doc xml:whitespace="preserve">If true, an underline in the text indicates the next character should be
33453 used for the mnemonic accelerator key.</doc>
33454         <return-value transfer-ownership="none">
33455           <type name="none" c:type="void"/>
33456         </return-value>
33457         <parameters>
33458           <parameter name="setting" transfer-ownership="none">
33459             <doc xml:whitespace="preserve">%TRUE if underlines in the text indicate mnemonics</doc>
33460             <type name="boolean" c:type="gboolean"/>
33461           </parameter>
33462         </parameters>
33463       </method>
33464       <method name="get_use_underline"
33465               c:identifier="gtk_label_get_use_underline">
33466         <doc xml:whitespace="preserve">Returns whether an embedded underline in the label indicates a
33467 mnemonic. See gtk_label_set_use_underline().
33468 the mnemonic accelerator keys.</doc>
33469         <return-value transfer-ownership="none">
33470           <doc xml:whitespace="preserve">%TRUE whether an embedded underline in the label indicates</doc>
33471           <type name="boolean" c:type="gboolean"/>
33472         </return-value>
33473       </method>
33474       <method name="set_markup_with_mnemonic"
33475               c:identifier="gtk_label_set_markup_with_mnemonic">
33476         <doc xml:whitespace="preserve">Parses @str which is marked up with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;,
33477 setting the label's text and attribute list based on the parse results.
33478 If characters in @str are preceded by an underscore, they are underlined
33479 indicating that they represent a keyboard accelerator called a mnemonic.
33480 The mnemonic key can be used to activate another widget, chosen 
33481 automatically, or explicitly using gtk_label_set_mnemonic_widget().</doc>
33482         <return-value transfer-ownership="none">
33483           <type name="none" c:type="void"/>
33484         </return-value>
33485         <parameters>
33486           <parameter name="str" transfer-ownership="none">
33487             <doc xml:whitespace="preserve">a markup string (see &lt;link linkend="PangoMarkupFormat"&gt;Pango markup format&lt;/link&gt;)</doc>
33488             <type name="utf8" c:type="gchar*"/>
33489           </parameter>
33490         </parameters>
33491       </method>
33492       <method name="get_mnemonic_keyval"
33493               c:identifier="gtk_label_get_mnemonic_keyval">
33494         <doc xml:whitespace="preserve">If the label has been set so that it has an mnemonic key this function
33495 returns the keyval used for the mnemonic accelerator. If there is no
33496 mnemonic set up it returns #GDK_VoidSymbol.</doc>
33497         <return-value transfer-ownership="none">
33498           <doc xml:whitespace="preserve">GDK keyval usable for accelerators, or #GDK_VoidSymbol</doc>
33499           <type name="uint" c:type="guint"/>
33500         </return-value>
33501       </method>
33502       <method name="set_mnemonic_widget"
33503               c:identifier="gtk_label_set_mnemonic_widget">
33504         <doc xml:whitespace="preserve">If the label has been set so that it has an mnemonic key (using
33505 i.e. gtk_label_set_markup_with_mnemonic(),
33506 gtk_label_set_text_with_mnemonic(), gtk_label_new_with_mnemonic()
33507 or the "use_underline" property) the label can be associated with a
33508 widget that is the target of the mnemonic. When the label is inside
33509 a widget (like a #GtkButton or a #GtkNotebook tab) it is
33510 automatically associated with the correct widget, but sometimes
33511 (i.e. when the target is a #GtkEntry next to the label) you need to
33512 set it explicitly using this function.
33513 The target widget will be accelerated by emitting the 
33514 GtkWidget::mnemonic-activate signal on it. The default handler for 
33515 this signal will activate the widget if there are no mnemonic collisions 
33516 and toggle focus between the colliding widgets otherwise.</doc>
33517         <return-value transfer-ownership="none">
33518           <type name="none" c:type="void"/>
33519         </return-value>
33520         <parameters>
33521           <parameter name="widget" transfer-ownership="none" allow-none="1">
33522             <doc xml:whitespace="preserve">the target #GtkWidget</doc>
33523             <type name="Widget" c:type="GtkWidget*"/>
33524           </parameter>
33525         </parameters>
33526       </method>
33527       <method name="get_mnemonic_widget"
33528               c:identifier="gtk_label_get_mnemonic_widget">
33529         <doc xml:whitespace="preserve">Retrieves the target of the mnemonic (keyboard shortcut) of this
33530 label. See gtk_label_set_mnemonic_widget().
33531 has been set and the default algorithm will be used.</doc>
33532         <return-value transfer-ownership="full">
33533           <doc xml:whitespace="preserve">the target of the label's mnemonic, or %NULL if none</doc>
33534           <type name="Widget" c:type="GtkWidget*"/>
33535         </return-value>
33536       </method>
33537       <method name="set_text_with_mnemonic"
33538               c:identifier="gtk_label_set_text_with_mnemonic">
33539         <doc xml:whitespace="preserve">Sets the label's text from the string @str.
33540 If characters in @str are preceded by an underscore, they are underlined
33541 indicating that they represent a keyboard accelerator called a mnemonic.
33542 The mnemonic key can be used to activate another widget, chosen 
33543 automatically, or explicitly using gtk_label_set_mnemonic_widget().</doc>
33544         <return-value transfer-ownership="none">
33545           <type name="none" c:type="void"/>
33546         </return-value>
33547         <parameters>
33548           <parameter name="str" transfer-ownership="none">
33549             <doc xml:whitespace="preserve">a string</doc>
33550             <type name="utf8" c:type="gchar*"/>
33551           </parameter>
33552         </parameters>
33553       </method>
33554       <method name="set_justify" c:identifier="gtk_label_set_justify">
33555         <doc xml:whitespace="preserve">Sets the alignment of the lines in the text of the label relative to
33556 each other. %GTK_JUSTIFY_LEFT is the default value when the
33557 widget is first created with gtk_label_new(). If you instead want
33558 to set the alignment of the label as a whole, use
33559 gtk_misc_set_alignment() instead. gtk_label_set_justify() has no
33560 effect on labels containing only a single line.</doc>
33561         <return-value transfer-ownership="none">
33562           <type name="none" c:type="void"/>
33563         </return-value>
33564         <parameters>
33565           <parameter name="jtype" transfer-ownership="none">
33566             <doc xml:whitespace="preserve">a #GtkJustification</doc>
33567             <type name="Justification" c:type="GtkJustification"/>
33568           </parameter>
33569         </parameters>
33570       </method>
33571       <method name="get_justify" c:identifier="gtk_label_get_justify">
33572         <doc xml:whitespace="preserve">Returns the justification of the label. See gtk_label_set_justify().</doc>
33573         <return-value transfer-ownership="full">
33574           <doc xml:whitespace="preserve">#GtkJustification</doc>
33575           <type name="Justification" c:type="GtkJustification"/>
33576         </return-value>
33577       </method>
33578       <method name="set_ellipsize"
33579               c:identifier="gtk_label_set_ellipsize"
33580               version="2.6">
33581         <doc xml:whitespace="preserve">if there is not enough space to render the entire string.</doc>
33582         <return-value transfer-ownership="none">
33583           <type name="none" c:type="void"/>
33584         </return-value>
33585         <parameters>
33586           <parameter name="mode" transfer-ownership="none">
33587             <doc xml:whitespace="preserve">a #PangoEllipsizeMode</doc>
33588             <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
33589           </parameter>
33590         </parameters>
33591       </method>
33592       <method name="get_ellipsize"
33593               c:identifier="gtk_label_get_ellipsize"
33594               version="2.6">
33595         <doc xml:whitespace="preserve">Returns the ellipsizing position of the label. See gtk_label_set_ellipsize().</doc>
33596         <return-value transfer-ownership="full">
33597           <doc xml:whitespace="preserve">#PangoEllipsizeMode</doc>
33598           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
33599         </return-value>
33600       </method>
33601       <method name="set_width_chars"
33602               c:identifier="gtk_label_set_width_chars"
33603               version="2.6">
33604         <doc xml:whitespace="preserve">Sets the desired width in characters of @label to @n_chars.</doc>
33605         <return-value transfer-ownership="none">
33606           <type name="none" c:type="void"/>
33607         </return-value>
33608         <parameters>
33609           <parameter name="n_chars" transfer-ownership="none">
33610             <doc xml:whitespace="preserve">the new desired width, in characters.</doc>
33611             <type name="int" c:type="gint"/>
33612           </parameter>
33613         </parameters>
33614       </method>
33615       <method name="get_width_chars"
33616               c:identifier="gtk_label_get_width_chars"
33617               version="2.6">
33618         <doc xml:whitespace="preserve">Retrieves the desired width of @label, in characters. See
33619 gtk_label_set_width_chars().</doc>
33620         <return-value transfer-ownership="none">
33621           <doc xml:whitespace="preserve">the width of the label in characters.</doc>
33622           <type name="int" c:type="gint"/>
33623         </return-value>
33624       </method>
33625       <method name="set_max_width_chars"
33626               c:identifier="gtk_label_set_max_width_chars"
33627               version="2.6">
33628         <doc xml:whitespace="preserve">Sets the desired maximum width in characters of @label to @n_chars.</doc>
33629         <return-value transfer-ownership="none">
33630           <type name="none" c:type="void"/>
33631         </return-value>
33632         <parameters>
33633           <parameter name="n_chars" transfer-ownership="none">
33634             <doc xml:whitespace="preserve">the new desired maximum width, in characters.</doc>
33635             <type name="int" c:type="gint"/>
33636           </parameter>
33637         </parameters>
33638       </method>
33639       <method name="get_max_width_chars"
33640               c:identifier="gtk_label_get_max_width_chars"
33641               version="2.6">
33642         <doc xml:whitespace="preserve">Retrieves the desired maximum width of @label, in characters. See
33643 gtk_label_set_width_chars().</doc>
33644         <return-value transfer-ownership="none">
33645           <doc xml:whitespace="preserve">the maximum width of the label in characters.</doc>
33646           <type name="int" c:type="gint"/>
33647         </return-value>
33648       </method>
33649       <method name="set_pattern" c:identifier="gtk_label_set_pattern">
33650         <return-value transfer-ownership="none">
33651           <type name="none" c:type="void"/>
33652         </return-value>
33653         <parameters>
33654           <parameter name="pattern" transfer-ownership="none">
33655             <type name="utf8" c:type="gchar*"/>
33656           </parameter>
33657         </parameters>
33658       </method>
33659       <method name="set_line_wrap" c:identifier="gtk_label_set_line_wrap">
33660         <doc xml:whitespace="preserve">Toggles line wrapping within the #GtkLabel widget. %TRUE makes it break
33661 lines if text exceeds the widget's size. %FALSE lets the text get cut off
33662 by the edge of the widget if it exceeds the widget size.
33663 Note that setting line wrapping to %TRUE does not make the label
33664 wrap at its parent container's width, because GTK+ widgets
33665 conceptually can't make their requisition depend on the parent
33666 container's size. For a label that wraps at a specific position,
33667 set the label's width using gtk_widget_set_size_request().</doc>
33668         <return-value transfer-ownership="none">
33669           <type name="none" c:type="void"/>
33670         </return-value>
33671         <parameters>
33672           <parameter name="wrap" transfer-ownership="none">
33673             <doc xml:whitespace="preserve">the setting</doc>
33674             <type name="boolean" c:type="gboolean"/>
33675           </parameter>
33676         </parameters>
33677       </method>
33678       <method name="get_line_wrap" c:identifier="gtk_label_get_line_wrap">
33679         <doc xml:whitespace="preserve">Returns whether lines in the label are automatically wrapped. 
33680 See gtk_label_set_line_wrap().</doc>
33681         <return-value transfer-ownership="none">
33682           <doc xml:whitespace="preserve">%TRUE if the lines of the label are automatically wrapped.</doc>
33683           <type name="boolean" c:type="gboolean"/>
33684         </return-value>
33685       </method>
33686       <method name="set_line_wrap_mode"
33687               c:identifier="gtk_label_set_line_wrap_mode"
33688               version="2.10">
33689         <doc xml:whitespace="preserve">If line wrapping is on (see gtk_label_set_line_wrap()) this controls how
33690 the line wrapping is done. The default is %PANGO_WRAP_WORD which means
33691 wrap on word boundaries.</doc>
33692         <return-value transfer-ownership="none">
33693           <type name="none" c:type="void"/>
33694         </return-value>
33695         <parameters>
33696           <parameter name="wrap_mode" transfer-ownership="none">
33697             <doc xml:whitespace="preserve">the line wrapping mode</doc>
33698             <type name="Pango.WrapMode" c:type="PangoWrapMode"/>
33699           </parameter>
33700         </parameters>
33701       </method>
33702       <method name="get_line_wrap_mode"
33703               c:identifier="gtk_label_get_line_wrap_mode"
33704               version="2.10">
33705         <doc xml:whitespace="preserve">Returns line wrap mode used by the label. See gtk_label_set_line_wrap_mode().</doc>
33706         <return-value transfer-ownership="full">
33707           <doc xml:whitespace="preserve">%TRUE if the lines of the label are automatically wrapped.</doc>
33708           <type name="Pango.WrapMode" c:type="PangoWrapMode"/>
33709         </return-value>
33710       </method>
33711       <method name="set_selectable" c:identifier="gtk_label_set_selectable">
33712         <doc xml:whitespace="preserve">Selectable labels allow the user to select text from the label, for
33713 copy-and-paste.</doc>
33714         <return-value transfer-ownership="none">
33715           <type name="none" c:type="void"/>
33716         </return-value>
33717         <parameters>
33718           <parameter name="setting" transfer-ownership="none">
33719             <doc xml:whitespace="preserve">%TRUE to allow selecting text in the label</doc>
33720             <type name="boolean" c:type="gboolean"/>
33721           </parameter>
33722         </parameters>
33723       </method>
33724       <method name="get_selectable" c:identifier="gtk_label_get_selectable">
33725         <doc xml:whitespace="preserve">Gets the value set by gtk_label_set_selectable().</doc>
33726         <return-value transfer-ownership="none">
33727           <doc xml:whitespace="preserve">%TRUE if the user can copy text from the label</doc>
33728           <type name="boolean" c:type="gboolean"/>
33729         </return-value>
33730       </method>
33731       <method name="set_angle"
33732               c:identifier="gtk_label_set_angle"
33733               version="2.6">
33734         <doc xml:whitespace="preserve">Sets the angle of rotation for the label. An angle of 90 reads from
33735 from bottom to top, an angle of 270, from top to bottom. The angle
33736 setting for the label is ignored if the label is selectable,
33737 wrapped, or ellipsized.</doc>
33738         <return-value transfer-ownership="none">
33739           <type name="none" c:type="void"/>
33740         </return-value>
33741         <parameters>
33742           <parameter name="angle" transfer-ownership="none">
33743             <doc xml:whitespace="preserve">the angle that the baseline of the label makes with the horizontal, in degrees, measured counterclockwise</doc>
33744             <type name="double" c:type="gdouble"/>
33745           </parameter>
33746         </parameters>
33747       </method>
33748       <method name="get_angle"
33749               c:identifier="gtk_label_get_angle"
33750               version="2.6">
33751         <doc xml:whitespace="preserve">Gets the angle of rotation for the label. See
33752 gtk_label_set_angle().</doc>
33753         <return-value transfer-ownership="none">
33754           <doc xml:whitespace="preserve">the angle of rotation for the label</doc>
33755           <type name="double" c:type="gdouble"/>
33756         </return-value>
33757       </method>
33758       <method name="select_region" c:identifier="gtk_label_select_region">
33759         <doc xml:whitespace="preserve">Selects a range of characters in the label, if the label is selectable.
33760 See gtk_label_set_selectable(). If the label is not selectable,
33761 this function has no effect. If @start_offset or</doc>
33762         <return-value transfer-ownership="none">
33763           <type name="none" c:type="void"/>
33764         </return-value>
33765         <parameters>
33766           <parameter name="start_offset" transfer-ownership="none">
33767             <doc xml:whitespace="preserve">start offset (in characters not bytes)</doc>
33768             <type name="int" c:type="gint"/>
33769           </parameter>
33770           <parameter name="end_offset" transfer-ownership="none">
33771             <doc xml:whitespace="preserve">end offset (in characters not bytes)</doc>
33772             <type name="int" c:type="gint"/>
33773           </parameter>
33774         </parameters>
33775       </method>
33776       <method name="get_selection_bounds"
33777               c:identifier="gtk_label_get_selection_bounds">
33778         <doc xml:whitespace="preserve">Gets the selected range of characters in the label, returning %TRUE
33779 if there's a selection.</doc>
33780         <return-value transfer-ownership="none">
33781           <doc xml:whitespace="preserve">%TRUE if selection is non-empty</doc>
33782           <type name="boolean" c:type="gboolean"/>
33783         </return-value>
33784         <parameters>
33785           <parameter name="start"
33786                      direction="out"
33787                      caller-allocates="0"
33788                      transfer-ownership="full">
33789             <doc xml:whitespace="preserve">return location for start of selection, as a character offset</doc>
33790             <type name="int" c:type="gint*"/>
33791           </parameter>
33792           <parameter name="end"
33793                      direction="out"
33794                      caller-allocates="0"
33795                      transfer-ownership="full">
33796             <doc xml:whitespace="preserve">return location for end of selection, as a character offset</doc>
33797             <type name="int" c:type="gint*"/>
33798           </parameter>
33799         </parameters>
33800       </method>
33801       <method name="get_layout" c:identifier="gtk_label_get_layout">
33802         <doc xml:whitespace="preserve">Gets the #PangoLayout used to display the label.
33803 The layout is useful to e.g. convert text positions to
33804 pixel positions, in combination with gtk_label_get_layout_offsets().
33805 The returned layout is owned by the label so need not be
33806 freed by the caller.</doc>
33807         <return-value transfer-ownership="none">
33808           <doc xml:whitespace="preserve">the #PangoLayout for this label</doc>
33809           <type name="Pango.Layout" c:type="PangoLayout*"/>
33810         </return-value>
33811       </method>
33812       <method name="get_layout_offsets"
33813               c:identifier="gtk_label_get_layout_offsets">
33814         <doc xml:whitespace="preserve">Obtains the coordinates where the label will draw the #PangoLayout
33815 representing the text in the label; useful to convert mouse events
33816 into coordinates inside the #PangoLayout, e.g. to take some action
33817 if some part of the label is clicked. Of course you will need to
33818 create a #GtkEventBox to receive the events, and pack the label
33819 inside it, since labels are a #GTK_NO_WINDOW widget. Remember
33820 when using the #PangoLayout functions you need to convert to
33821 and from pixels using PANGO_PIXELS() or #PANGO_SCALE.</doc>
33822         <return-value transfer-ownership="none">
33823           <type name="none" c:type="void"/>
33824         </return-value>
33825         <parameters>
33826           <parameter name="x"
33827                      direction="out"
33828                      caller-allocates="0"
33829                      transfer-ownership="full"
33830                      allow-none="1">
33831             <doc xml:whitespace="preserve">location to store X offset of layout, or %NULL</doc>
33832             <type name="int" c:type="gint*"/>
33833           </parameter>
33834           <parameter name="y"
33835                      direction="out"
33836                      caller-allocates="0"
33837                      transfer-ownership="full"
33838                      allow-none="1">
33839             <doc xml:whitespace="preserve">location to store Y offset of layout, or %NULL</doc>
33840             <type name="int" c:type="gint*"/>
33841           </parameter>
33842         </parameters>
33843       </method>
33844       <method name="set_single_line_mode"
33845               c:identifier="gtk_label_set_single_line_mode"
33846               version="2.6">
33847         <doc xml:whitespace="preserve">Sets whether the label is in single line mode.</doc>
33848         <return-value transfer-ownership="none">
33849           <type name="none" c:type="void"/>
33850         </return-value>
33851         <parameters>
33852           <parameter name="single_line_mode" transfer-ownership="none">
33853             <doc xml:whitespace="preserve">%TRUE if the label should be in single line mode</doc>
33854             <type name="boolean" c:type="gboolean"/>
33855           </parameter>
33856         </parameters>
33857       </method>
33858       <method name="get_single_line_mode"
33859               c:identifier="gtk_label_get_single_line_mode"
33860               version="2.6">
33861         <doc xml:whitespace="preserve">Returns whether the label is in single line mode.</doc>
33862         <return-value transfer-ownership="none">
33863           <doc xml:whitespace="preserve">%TRUE when the label is in single line mode.</doc>
33864           <type name="boolean" c:type="gboolean"/>
33865         </return-value>
33866       </method>
33867       <method name="get_current_uri"
33868               c:identifier="gtk_label_get_current_uri"
33869               version="2.18">
33870         <doc xml:whitespace="preserve">Returns the URI for the currently active link in the label.
33871 The active link is the one under the mouse pointer or, in a
33872 selectable label, the link in which the text cursor is currently
33873 positioned.
33874 This function is intended for use in a #GtkLabel::activate-link handler
33875 or for use in a #GtkWidget::query-tooltip handler.
33876 not be freed or modified.</doc>
33877         <return-value transfer-ownership="none">
33878           <doc xml:whitespace="preserve">the currently active URI. The string is owned by GTK+ and must</doc>
33879           <type name="utf8" c:type="gchar*"/>
33880         </return-value>
33881       </method>
33882       <method name="set_track_visited_links"
33883               c:identifier="gtk_label_set_track_visited_links"
33884               version="2.18">
33885         <doc xml:whitespace="preserve">Sets whether the label should keep track of clicked
33886 links (and use a different color for them).</doc>
33887         <return-value transfer-ownership="none">
33888           <type name="none" c:type="void"/>
33889         </return-value>
33890         <parameters>
33891           <parameter name="track_links" transfer-ownership="none">
33892             <doc xml:whitespace="preserve">%TRUE to track visited links</doc>
33893             <type name="boolean" c:type="gboolean"/>
33894           </parameter>
33895         </parameters>
33896       </method>
33897       <method name="get_track_visited_links"
33898               c:identifier="gtk_label_get_track_visited_links"
33899               version="2.18">
33900         <doc xml:whitespace="preserve">Returns whether the label is currently keeping track
33901 of clicked links.</doc>
33902         <return-value transfer-ownership="none">
33903           <doc xml:whitespace="preserve">%TRUE if clicked links are remembered</doc>
33904           <type name="boolean" c:type="gboolean"/>
33905         </return-value>
33906       </method>
33907       <method name="get" c:identifier="gtk_label_get">
33908         <return-value transfer-ownership="none">
33909           <type name="none" c:type="void"/>
33910         </return-value>
33911         <parameters>
33912           <parameter name="str" transfer-ownership="none">
33913             <array c:type="gchar**">
33914               <type name="utf8"/>
33915             </array>
33916           </parameter>
33917         </parameters>
33918       </method>
33919       <method name="parse_uline" c:identifier="gtk_label_parse_uline">
33920         <return-value transfer-ownership="none">
33921           <type name="uint" c:type="guint"/>
33922         </return-value>
33923         <parameters>
33924           <parameter name="string" transfer-ownership="none">
33925             <type name="utf8" c:type="gchar*"/>
33926           </parameter>
33927         </parameters>
33928       </method>
33929       <property name="angle"
33930                 version="2.6"
33931                 writable="1"
33932                 transfer-ownership="none">
33933         <doc xml:whitespace="preserve">The angle that the baseline of the label makes with the horizontal,
33934 in degrees, measured counterclockwise. An angle of 90 reads from
33935 from bottom to top, an angle of 270, from top to bottom. Ignored
33936 if the label is selectable, wrapped, or ellipsized.</doc>
33937         <type name="double" c:type="gdouble"/>
33938       </property>
33939       <property name="attributes" writable="1" transfer-ownership="none">
33940         <type name="Pango.AttrList" c:type="PangoAttrList"/>
33941       </property>
33942       <property name="cursor-position" transfer-ownership="none">
33943         <type name="int" c:type="gint"/>
33944       </property>
33945       <property name="ellipsize"
33946                 version="2.6"
33947                 writable="1"
33948                 transfer-ownership="none">
33949         <doc xml:whitespace="preserve">The preferred place to ellipsize the string, if the label does 
33950 not have enough room to display the entire string, specified as a 
33951 #PangoEllisizeMode. 
33952 Note that setting this property to a value other than 
33953 %PANGO_ELLIPSIZE_NONE has the side-effect that the label requests 
33954 only enough space to display the ellipsis "...". In particular, this 
33955 means that ellipsizing labels do not work well in notebook tabs, unless 
33956 the tab's #GtkNotebook:tab-expand property is set to %TRUE. Other ways
33957 to set a label's width are gtk_widget_set_size_request() and
33958 gtk_label_set_width_chars().</doc>
33959         <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
33960       </property>
33961       <property name="justify" writable="1" transfer-ownership="none">
33962         <type name="Justification" c:type="GtkJustification"/>
33963       </property>
33964       <property name="label" writable="1" transfer-ownership="none">
33965         <type name="utf8" c:type="gchararray"/>
33966       </property>
33967       <property name="max-width-chars"
33968                 version="2.6"
33969                 writable="1"
33970                 transfer-ownership="none">
33971         <doc xml:whitespace="preserve">The desired maximum width of the label, in characters. If this property 
33972 is set to -1, the width will be calculated automatically, otherwise the 
33973 label will request space for no more than the requested number of 
33974 characters. If the #GtkLabel:width-chars property is set to a positive 
33975 value, then the "max-width-chars" property is ignored.</doc>
33976         <type name="int" c:type="gint"/>
33977       </property>
33978       <property name="mnemonic-keyval" transfer-ownership="none">
33979         <type name="uint" c:type="guint"/>
33980       </property>
33981       <property name="mnemonic-widget" writable="1" transfer-ownership="none">
33982         <type name="Widget" c:type="GtkWidget"/>
33983       </property>
33984       <property name="pattern"
33985                 readable="0"
33986                 writable="1"
33987                 transfer-ownership="none">
33988         <type name="utf8" c:type="gchararray"/>
33989       </property>
33990       <property name="selectable" writable="1" transfer-ownership="none">
33991         <type name="boolean" c:type="gboolean"/>
33992       </property>
33993       <property name="selection-bound" transfer-ownership="none">
33994         <type name="int" c:type="gint"/>
33995       </property>
33996       <property name="single-line-mode"
33997                 version="2.6"
33998                 writable="1"
33999                 transfer-ownership="none">
34000         <doc xml:whitespace="preserve">Whether the label is in single line mode. In single line mode,
34001 the height of the label does not depend on the actual text, it
34002 is always set to ascent + descent of the font. This can be an
34003 advantage in situations where resizing the label because of text 
34004 changes would be distracting, e.g. in a statusbar.</doc>
34005         <type name="boolean" c:type="gboolean"/>
34006       </property>
34007       <property name="track-visited-links"
34008                 version="2.18"
34009                 writable="1"
34010                 transfer-ownership="none">
34011         <doc xml:whitespace="preserve">Set this property to %TRUE to make the label track which links
34012 have been clicked. It will then apply the ::visited-link-color
34013 color, instead of ::link-color.</doc>
34014         <type name="boolean" c:type="gboolean"/>
34015       </property>
34016       <property name="use-markup" writable="1" transfer-ownership="none">
34017         <type name="boolean" c:type="gboolean"/>
34018       </property>
34019       <property name="use-underline" writable="1" transfer-ownership="none">
34020         <type name="boolean" c:type="gboolean"/>
34021       </property>
34022       <property name="width-chars"
34023                 version="2.6"
34024                 writable="1"
34025                 transfer-ownership="none">
34026         <doc xml:whitespace="preserve">The desired width of the label, in characters. If this property is set to
34027 -1, the width will be calculated automatically, otherwise the label will
34028 request either 3 characters or the property value, whichever is greater.
34029 If the "width-chars" property is set to a positive value, then the 
34030 #GtkLabel:max-width-chars property is ignored.</doc>
34031         <type name="int" c:type="gint"/>
34032       </property>
34033       <property name="wrap" writable="1" transfer-ownership="none">
34034         <type name="boolean" c:type="gboolean"/>
34035       </property>
34036       <property name="wrap-mode"
34037                 version="2.10"
34038                 writable="1"
34039                 transfer-ownership="none">
34040         <doc xml:whitespace="preserve">If line wrapping is on (see the #GtkLabel:wrap property) this controls 
34041 how the line wrapping is done. The default is %PANGO_WRAP_WORD, which 
34042 means wrap on word boundaries.</doc>
34043         <type name="Pango.WrapMode" c:type="PangoWrapMode"/>
34044       </property>
34045       <field name="misc">
34046         <type name="Misc" c:type="GtkMisc"/>
34047       </field>
34048       <field name="label">
34049         <type name="utf8" c:type="gchar*"/>
34050       </field>
34051       <field name="jtype" bits="2">
34052         <type name="uint" c:type="guint"/>
34053       </field>
34054       <field name="wrap" bits="1">
34055         <type name="uint" c:type="guint"/>
34056       </field>
34057       <field name="use_underline" bits="1">
34058         <type name="uint" c:type="guint"/>
34059       </field>
34060       <field name="use_markup" bits="1">
34061         <type name="uint" c:type="guint"/>
34062       </field>
34063       <field name="ellipsize" bits="3">
34064         <type name="uint" c:type="guint"/>
34065       </field>
34066       <field name="single_line_mode" bits="1">
34067         <type name="uint" c:type="guint"/>
34068       </field>
34069       <field name="have_transform" bits="1">
34070         <type name="uint" c:type="guint"/>
34071       </field>
34072       <field name="in_click" bits="1">
34073         <type name="uint" c:type="guint"/>
34074       </field>
34075       <field name="wrap_mode" bits="3">
34076         <type name="uint" c:type="guint"/>
34077       </field>
34078       <field name="pattern_set" bits="1">
34079         <type name="uint" c:type="guint"/>
34080       </field>
34081       <field name="track_links" bits="1">
34082         <type name="uint" c:type="guint"/>
34083       </field>
34084       <field name="mnemonic_keyval">
34085         <type name="uint" c:type="guint"/>
34086       </field>
34087       <field name="text">
34088         <type name="utf8" c:type="gchar*"/>
34089       </field>
34090       <field name="attrs">
34091         <type name="Pango.AttrList" c:type="PangoAttrList*"/>
34092       </field>
34093       <field name="effective_attrs">
34094         <type name="Pango.AttrList" c:type="PangoAttrList*"/>
34095       </field>
34096       <field name="layout">
34097         <type name="Pango.Layout" c:type="PangoLayout*"/>
34098       </field>
34099       <field name="mnemonic_widget">
34100         <type name="Widget" c:type="GtkWidget*"/>
34101       </field>
34102       <field name="mnemonic_window">
34103         <type name="Window" c:type="GtkWindow*"/>
34104       </field>
34105       <field name="select_info">
34106         <type name="LabelSelectionInfo" c:type="GtkLabelSelectionInfo*"/>
34107       </field>
34108       <glib:signal name="activate-current-link" version="2.18">
34109         <doc xml:whitespace="preserve">A &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
34110 which gets emitted when the user activates a link in the label.
34111 Applications may also emit the signal with g_signal_emit_by_name()
34112 if they need to control activation of URIs programmatically.
34113 The default bindings for this signal are all forms of the Enter key.</doc>
34114         <return-value transfer-ownership="full">
34115           <type name="none" c:type="void"/>
34116         </return-value>
34117       </glib:signal>
34118       <glib:signal name="activate-link" version="2.18">
34119         <doc xml:whitespace="preserve">The signal which gets emitted to activate a URI.
34120 Applications may connect to it to override the default behaviour,
34121 which is to call gtk_show_uri().</doc>
34122         <return-value transfer-ownership="full">
34123           <doc xml:whitespace="preserve">%TRUE if the link has been activated</doc>
34124           <type name="boolean" c:type="gboolean"/>
34125         </return-value>
34126         <parameters>
34127           <parameter name="uri" transfer-ownership="none">
34128             <doc xml:whitespace="preserve">the URI that is activated</doc>
34129             <type name="utf8" c:type="gchararray"/>
34130           </parameter>
34131         </parameters>
34132       </glib:signal>
34133       <glib:signal name="copy-clipboard">
34134         <doc xml:whitespace="preserve">The ::copy-clipboard signal is a
34135 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
34136 which gets emitted to copy the selection to the clipboard.
34137 The default binding for this signal is Ctrl-c.</doc>
34138         <return-value transfer-ownership="full">
34139           <type name="none" c:type="void"/>
34140         </return-value>
34141       </glib:signal>
34142       <glib:signal name="move-cursor">
34143         <doc xml:whitespace="preserve">The ::move-cursor signal is a
34144 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
34145 which gets emitted when the user initiates a cursor movement.
34146 If the cursor is not visible in @entry, this signal causes
34147 the viewport to be moved instead.
34148 Applications should not connect to it, but may emit it with
34149 g_signal_emit_by_name() if they need to control the cursor
34150 programmatically.
34151 The default bindings for this signal come in two variants,
34152 the variant with the Shift modifier extends the selection,
34153 the variant without the Shift modifer does not.
34154 There are too many key combinations to list them all here.
34155 &lt;itemizedlist&gt;
34156 &lt;listitem&gt;Arrow keys move by individual characters/lines&lt;/listitem&gt;
34157 &lt;listitem&gt;Ctrl-arrow key combinations move by words/paragraphs&lt;/listitem&gt;
34158 &lt;listitem&gt;Home/End keys move to the ends of the buffer&lt;/listitem&gt;
34159 &lt;/itemizedlist&gt;</doc>
34160         <return-value transfer-ownership="full">
34161           <type name="none" c:type="void"/>
34162         </return-value>
34163         <parameters>
34164           <parameter name="step" transfer-ownership="none">
34165             <doc xml:whitespace="preserve">the granularity of the move, as a #GtkMovementStep</doc>
34166             <type name="MovementStep" c:type="GtkMovementStep"/>
34167           </parameter>
34168           <parameter name="count" transfer-ownership="none">
34169             <doc xml:whitespace="preserve">the number of @step units to move</doc>
34170             <type name="int" c:type="gint"/>
34171           </parameter>
34172           <parameter name="extend_selection" transfer-ownership="none">
34173             <doc xml:whitespace="preserve">%TRUE if the move should extend the selection</doc>
34174             <type name="boolean" c:type="gboolean"/>
34175           </parameter>
34176         </parameters>
34177       </glib:signal>
34178       <glib:signal name="populate-popup">
34179         <doc xml:whitespace="preserve">The ::populate-popup signal gets emitted before showing the
34180 context menu of the label. Note that only selectable labels
34181 have context menus.
34182 If you need to add items to the context menu, connect
34183 to this signal and append your menuitems to the @menu.</doc>
34184         <return-value transfer-ownership="full">
34185           <type name="none" c:type="void"/>
34186         </return-value>
34187         <parameters>
34188           <parameter name="menu" transfer-ownership="none">
34189             <doc xml:whitespace="preserve">the menu that is being populated</doc>
34190             <type name="Menu" c:type="GtkMenu"/>
34191           </parameter>
34192         </parameters>
34193       </glib:signal>
34194     </class>
34195     <record name="LabelClass"
34196             c:type="GtkLabelClass"
34197             glib:is-gtype-struct-for="Label">
34198       <field name="parent_class">
34199         <type name="MiscClass" c:type="GtkMiscClass"/>
34200       </field>
34201       <field name="move_cursor">
34202         <callback name="move_cursor" c:type="move_cursor">
34203           <return-value transfer-ownership="none">
34204             <type name="none" c:type="void"/>
34205           </return-value>
34206           <parameters>
34207             <parameter name="label" transfer-ownership="none">
34208               <type name="Label" c:type="GtkLabel*"/>
34209             </parameter>
34210             <parameter name="step" transfer-ownership="none">
34211               <type name="MovementStep" c:type="GtkMovementStep"/>
34212             </parameter>
34213             <parameter name="count" transfer-ownership="none">
34214               <type name="int" c:type="gint"/>
34215             </parameter>
34216             <parameter name="extend_selection" transfer-ownership="none">
34217               <type name="boolean" c:type="gboolean"/>
34218             </parameter>
34219           </parameters>
34220         </callback>
34221       </field>
34222       <field name="copy_clipboard">
34223         <callback name="copy_clipboard" c:type="copy_clipboard">
34224           <return-value transfer-ownership="none">
34225             <type name="none" c:type="void"/>
34226           </return-value>
34227           <parameters>
34228             <parameter name="label" transfer-ownership="none">
34229               <type name="Label" c:type="GtkLabel*"/>
34230             </parameter>
34231           </parameters>
34232         </callback>
34233       </field>
34234       <field name="populate_popup">
34235         <callback name="populate_popup" c:type="populate_popup">
34236           <return-value transfer-ownership="none">
34237             <type name="none" c:type="void"/>
34238           </return-value>
34239           <parameters>
34240             <parameter name="label" transfer-ownership="none">
34241               <type name="Label" c:type="GtkLabel*"/>
34242             </parameter>
34243             <parameter name="menu" transfer-ownership="none">
34244               <type name="Menu" c:type="GtkMenu*"/>
34245             </parameter>
34246           </parameters>
34247         </callback>
34248       </field>
34249       <field name="activate_link">
34250         <callback name="activate_link" c:type="activate_link">
34251           <return-value transfer-ownership="none">
34252             <type name="boolean" c:type="gboolean"/>
34253           </return-value>
34254           <parameters>
34255             <parameter name="label" transfer-ownership="none">
34256               <type name="Label" c:type="GtkLabel*"/>
34257             </parameter>
34258             <parameter name="uri" transfer-ownership="none">
34259               <type name="utf8" c:type="gchar*"/>
34260             </parameter>
34261           </parameters>
34262         </callback>
34263       </field>
34264       <field name="gtk_reserved1">
34265         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
34266           <return-value transfer-ownership="none">
34267             <type name="none" c:type="void"/>
34268           </return-value>
34269         </callback>
34270       </field>
34271       <field name="gtk_reserved2">
34272         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
34273           <return-value transfer-ownership="none">
34274             <type name="none" c:type="void"/>
34275           </return-value>
34276         </callback>
34277       </field>
34278       <field name="gtk_reserved3">
34279         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
34280           <return-value transfer-ownership="none">
34281             <type name="none" c:type="void"/>
34282           </return-value>
34283         </callback>
34284       </field>
34285     </record>
34286     <record name="LabelSelectionInfo" c:type="GtkLabelSelectionInfo">
34287     </record>
34288     <class name="Layout"
34289            c:type="GtkLayout"
34290            parent="Container"
34291            glib:type-name="GtkLayout"
34292            glib:get-type="gtk_layout_get_type"
34293            glib:type-struct="LayoutClass">
34294       <implements name="Atk.ImplementorIface"/>
34295       <implements name="Buildable"/>
34296       <constructor name="new" c:identifier="gtk_layout_new">
34297         <doc xml:whitespace="preserve">Creates a new #GtkLayout. Unless you have a specific adjustment
34298 you'd like the layout to use for scrolling, pass %NULL for</doc>
34299         <return-value transfer-ownership="full">
34300           <doc xml:whitespace="preserve">a new #GtkLayout</doc>
34301           <type name="Layout" c:type="GtkWidget*"/>
34302         </return-value>
34303         <parameters>
34304           <parameter name="hadjustment"
34305                      transfer-ownership="none"
34306                      allow-none="1">
34307             <doc xml:whitespace="preserve">horizontal scroll adjustment, or %NULL</doc>
34308             <type name="Adjustment" c:type="GtkAdjustment*"/>
34309           </parameter>
34310           <parameter name="vadjustment"
34311                      transfer-ownership="none"
34312                      allow-none="1">
34313             <doc xml:whitespace="preserve">vertical scroll adjustment, or %NULL</doc>
34314             <type name="Adjustment" c:type="GtkAdjustment*"/>
34315           </parameter>
34316         </parameters>
34317       </constructor>
34318       <method name="get_bin_window"
34319               c:identifier="gtk_layout_get_bin_window"
34320               version="2.14">
34321         <doc xml:whitespace="preserve">Retrieve the bin window of the layout used for drawing operations.</doc>
34322         <return-value transfer-ownership="full">
34323           <doc xml:whitespace="preserve">a #GdkWindow</doc>
34324           <type name="Gdk.Window" c:type="GdkWindow*"/>
34325         </return-value>
34326       </method>
34327       <method name="put" c:identifier="gtk_layout_put">
34328         <doc xml:whitespace="preserve">Adds @child_widget to @layout, at position (@x,@y).</doc>
34329         <return-value transfer-ownership="none">
34330           <type name="none" c:type="void"/>
34331         </return-value>
34332         <parameters>
34333           <parameter name="child_widget" transfer-ownership="none">
34334             <doc xml:whitespace="preserve">child widget</doc>
34335             <type name="Widget" c:type="GtkWidget*"/>
34336           </parameter>
34337           <parameter name="x" transfer-ownership="none">
34338             <doc xml:whitespace="preserve">X position of child widget</doc>
34339             <type name="int" c:type="gint"/>
34340           </parameter>
34341           <parameter name="y" transfer-ownership="none">
34342             <doc xml:whitespace="preserve">Y position of child widget</doc>
34343             <type name="int" c:type="gint"/>
34344           </parameter>
34345         </parameters>
34346       </method>
34347       <method name="move" c:identifier="gtk_layout_move">
34348         <doc xml:whitespace="preserve">Moves a current child of @layout to a new position.</doc>
34349         <return-value transfer-ownership="none">
34350           <type name="none" c:type="void"/>
34351         </return-value>
34352         <parameters>
34353           <parameter name="child_widget" transfer-ownership="none">
34354             <doc xml:whitespace="preserve">a current child of @layout</doc>
34355             <type name="Widget" c:type="GtkWidget*"/>
34356           </parameter>
34357           <parameter name="x" transfer-ownership="none">
34358             <doc xml:whitespace="preserve">X position to move to</doc>
34359             <type name="int" c:type="gint"/>
34360           </parameter>
34361           <parameter name="y" transfer-ownership="none">
34362             <doc xml:whitespace="preserve">Y position to move to</doc>
34363             <type name="int" c:type="gint"/>
34364           </parameter>
34365         </parameters>
34366       </method>
34367       <method name="set_size" c:identifier="gtk_layout_set_size">
34368         <doc xml:whitespace="preserve">Sets the size of the scrollable area of the layout.</doc>
34369         <return-value transfer-ownership="none">
34370           <type name="none" c:type="void"/>
34371         </return-value>
34372         <parameters>
34373           <parameter name="width" transfer-ownership="none">
34374             <doc xml:whitespace="preserve">width of entire scrollable area</doc>
34375             <type name="uint" c:type="guint"/>
34376           </parameter>
34377           <parameter name="height" transfer-ownership="none">
34378             <doc xml:whitespace="preserve">height of entire scrollable area</doc>
34379             <type name="uint" c:type="guint"/>
34380           </parameter>
34381         </parameters>
34382       </method>
34383       <method name="get_size" c:identifier="gtk_layout_get_size">
34384         <doc xml:whitespace="preserve">Gets the size that has been set on the layout, and that determines
34385 the total extents of the layout's scrollbar area. See
34386 gtk_layout_set_size ().</doc>
34387         <return-value transfer-ownership="none">
34388           <type name="none" c:type="void"/>
34389         </return-value>
34390         <parameters>
34391           <parameter name="width"
34392                      direction="out"
34393                      caller-allocates="0"
34394                      transfer-ownership="full"
34395                      allow-none="1">
34396             <doc xml:whitespace="preserve">location to store the width set on @layout, or %NULL</doc>
34397             <type name="uint" c:type="guint*"/>
34398           </parameter>
34399           <parameter name="height"
34400                      direction="out"
34401                      caller-allocates="0"
34402                      transfer-ownership="full"
34403                      allow-none="1">
34404             <doc xml:whitespace="preserve">location to store the height set on @layout, or %NULL</doc>
34405             <type name="uint" c:type="guint*"/>
34406           </parameter>
34407         </parameters>
34408       </method>
34409       <method name="get_hadjustment" c:identifier="gtk_layout_get_hadjustment">
34410         <doc xml:whitespace="preserve">This function should only be called after the layout has been
34411 placed in a #GtkScrolledWindow or otherwise configured for
34412 scrolling. It returns the #GtkAdjustment used for communication
34413 between the horizontal scrollbar and @layout.
34414 See #GtkScrolledWindow, #GtkScrollbar, #GtkAdjustment for details.</doc>
34415         <return-value transfer-ownership="full">
34416           <doc xml:whitespace="preserve">horizontal scroll adjustment</doc>
34417           <type name="Adjustment" c:type="GtkAdjustment*"/>
34418         </return-value>
34419       </method>
34420       <method name="get_vadjustment" c:identifier="gtk_layout_get_vadjustment">
34421         <doc xml:whitespace="preserve">This function should only be called after the layout has been
34422 placed in a #GtkScrolledWindow or otherwise configured for
34423 scrolling. It returns the #GtkAdjustment used for communication
34424 between the vertical scrollbar and @layout.
34425 See #GtkScrolledWindow, #GtkScrollbar, #GtkAdjustment for details.</doc>
34426         <return-value transfer-ownership="full">
34427           <doc xml:whitespace="preserve">vertical scroll adjustment</doc>
34428           <type name="Adjustment" c:type="GtkAdjustment*"/>
34429         </return-value>
34430       </method>
34431       <method name="set_hadjustment" c:identifier="gtk_layout_set_hadjustment">
34432         <doc xml:whitespace="preserve">Sets the horizontal scroll adjustment for the layout.
34433 See #GtkScrolledWindow, #GtkScrollbar, #GtkAdjustment for details.</doc>
34434         <return-value transfer-ownership="none">
34435           <type name="none" c:type="void"/>
34436         </return-value>
34437         <parameters>
34438           <parameter name="adjustment"
34439                      transfer-ownership="none"
34440                      allow-none="1">
34441             <doc xml:whitespace="preserve">new scroll adjustment</doc>
34442             <type name="Adjustment" c:type="GtkAdjustment*"/>
34443           </parameter>
34444         </parameters>
34445       </method>
34446       <method name="set_vadjustment" c:identifier="gtk_layout_set_vadjustment">
34447         <doc xml:whitespace="preserve">Sets the vertical scroll adjustment for the layout.
34448 See #GtkScrolledWindow, #GtkScrollbar, #GtkAdjustment for details.</doc>
34449         <return-value transfer-ownership="none">
34450           <type name="none" c:type="void"/>
34451         </return-value>
34452         <parameters>
34453           <parameter name="adjustment"
34454                      transfer-ownership="none"
34455                      allow-none="1">
34456             <doc xml:whitespace="preserve">new scroll adjustment</doc>
34457             <type name="Adjustment" c:type="GtkAdjustment*"/>
34458           </parameter>
34459         </parameters>
34460       </method>
34461       <method name="freeze" c:identifier="gtk_layout_freeze">
34462         <doc xml:whitespace="preserve">This is a deprecated function, it doesn't do anything useful.</doc>
34463         <return-value transfer-ownership="none">
34464           <type name="none" c:type="void"/>
34465         </return-value>
34466       </method>
34467       <method name="thaw" c:identifier="gtk_layout_thaw">
34468         <doc xml:whitespace="preserve">This is a deprecated function, it doesn't do anything useful.</doc>
34469         <return-value transfer-ownership="none">
34470           <type name="none" c:type="void"/>
34471         </return-value>
34472       </method>
34473       <property name="hadjustment" writable="1" transfer-ownership="none">
34474         <type name="Adjustment" c:type="GtkAdjustment"/>
34475       </property>
34476       <property name="height" writable="1" transfer-ownership="none">
34477         <type name="uint" c:type="guint"/>
34478       </property>
34479       <property name="vadjustment" writable="1" transfer-ownership="none">
34480         <type name="Adjustment" c:type="GtkAdjustment"/>
34481       </property>
34482       <property name="width" writable="1" transfer-ownership="none">
34483         <type name="uint" c:type="guint"/>
34484       </property>
34485       <field name="container">
34486         <type name="Container" c:type="GtkContainer"/>
34487       </field>
34488       <field name="children">
34489         <type name="GLib.List" c:type="GList*">
34490           <type name="any" c:type="gpointer"/>
34491         </type>
34492       </field>
34493       <field name="width">
34494         <type name="uint" c:type="guint"/>
34495       </field>
34496       <field name="height">
34497         <type name="uint" c:type="guint"/>
34498       </field>
34499       <field name="hadjustment">
34500         <type name="Adjustment" c:type="GtkAdjustment*"/>
34501       </field>
34502       <field name="vadjustment">
34503         <type name="Adjustment" c:type="GtkAdjustment*"/>
34504       </field>
34505       <field name="bin_window">
34506         <type name="Gdk.Window" c:type="GdkWindow*"/>
34507       </field>
34508       <field name="visibility">
34509         <type name="Gdk.VisibilityState" c:type="GdkVisibilityState"/>
34510       </field>
34511       <field name="scroll_x">
34512         <type name="int" c:type="gint"/>
34513       </field>
34514       <field name="scroll_y">
34515         <type name="int" c:type="gint"/>
34516       </field>
34517       <field name="freeze_count">
34518         <type name="uint" c:type="guint"/>
34519       </field>
34520       <glib:signal name="set-scroll-adjustments">
34521         <return-value transfer-ownership="full">
34522           <type name="none" c:type="void"/>
34523         </return-value>
34524         <parameters>
34525           <parameter name="object" transfer-ownership="none">
34526             <type name="Adjustment" c:type="GtkAdjustment"/>
34527           </parameter>
34528           <parameter name="p0" transfer-ownership="none">
34529             <type name="Adjustment" c:type="GtkAdjustment"/>
34530           </parameter>
34531         </parameters>
34532       </glib:signal>
34533     </class>
34534     <record name="LayoutClass"
34535             c:type="GtkLayoutClass"
34536             glib:is-gtype-struct-for="Layout">
34537       <field name="parent_class">
34538         <type name="ContainerClass" c:type="GtkContainerClass"/>
34539       </field>
34540       <field name="set_scroll_adjustments">
34541         <callback name="set_scroll_adjustments"
34542                   c:type="set_scroll_adjustments">
34543           <return-value transfer-ownership="none">
34544             <type name="none" c:type="void"/>
34545           </return-value>
34546           <parameters>
34547             <parameter name="layout" transfer-ownership="none">
34548               <type name="Layout" c:type="GtkLayout*"/>
34549             </parameter>
34550             <parameter name="hadjustment" transfer-ownership="none">
34551               <type name="Adjustment" c:type="GtkAdjustment*"/>
34552             </parameter>
34553             <parameter name="vadjustment" transfer-ownership="none">
34554               <type name="Adjustment" c:type="GtkAdjustment*"/>
34555             </parameter>
34556           </parameters>
34557         </callback>
34558       </field>
34559       <field name="gtk_reserved1">
34560         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
34561           <return-value transfer-ownership="none">
34562             <type name="none" c:type="void"/>
34563           </return-value>
34564         </callback>
34565       </field>
34566       <field name="gtk_reserved2">
34567         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
34568           <return-value transfer-ownership="none">
34569             <type name="none" c:type="void"/>
34570           </return-value>
34571         </callback>
34572       </field>
34573       <field name="gtk_reserved3">
34574         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
34575           <return-value transfer-ownership="none">
34576             <type name="none" c:type="void"/>
34577           </return-value>
34578         </callback>
34579       </field>
34580       <field name="gtk_reserved4">
34581         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
34582           <return-value transfer-ownership="none">
34583             <type name="none" c:type="void"/>
34584           </return-value>
34585         </callback>
34586       </field>
34587     </record>
34588     <class name="LinkButton"
34589            c:type="GtkLinkButton"
34590            parent="Button"
34591            glib:type-name="GtkLinkButton"
34592            glib:get-type="gtk_link_button_get_type"
34593            glib:type-struct="LinkButtonClass">
34594       <implements name="Activatable"/>
34595       <implements name="Atk.ImplementorIface"/>
34596       <implements name="Buildable"/>
34597       <constructor name="new"
34598                    c:identifier="gtk_link_button_new"
34599                    version="2.10">
34600         <doc xml:whitespace="preserve">Creates a new #GtkLinkButton with the URI as its text.</doc>
34601         <return-value transfer-ownership="full">
34602           <doc xml:whitespace="preserve">a new link button widget.</doc>
34603           <type name="LinkButton" c:type="GtkWidget*"/>
34604         </return-value>
34605         <parameters>
34606           <parameter name="uri" transfer-ownership="none">
34607             <doc xml:whitespace="preserve">a valid URI</doc>
34608             <type name="utf8" c:type="gchar*"/>
34609           </parameter>
34610         </parameters>
34611       </constructor>
34612       <constructor name="new_with_label"
34613                    c:identifier="gtk_link_button_new_with_label"
34614                    version="2.10">
34615         <doc xml:whitespace="preserve">Creates a new #GtkLinkButton containing a label.</doc>
34616         <return-value transfer-ownership="none">
34617           <doc xml:whitespace="preserve">a new link button widget.</doc>
34618           <type name="LinkButton" c:type="GtkWidget*"/>
34619         </return-value>
34620         <parameters>
34621           <parameter name="uri" transfer-ownership="none">
34622             <doc xml:whitespace="preserve">a valid URI</doc>
34623             <type name="utf8" c:type="gchar*"/>
34624           </parameter>
34625           <parameter name="label" transfer-ownership="none" allow-none="1">
34626             <doc xml:whitespace="preserve">the text of the button</doc>
34627             <type name="utf8" c:type="gchar*"/>
34628           </parameter>
34629         </parameters>
34630       </constructor>
34631       <function name="set_uri_hook"
34632                 c:identifier="gtk_link_button_set_uri_hook"
34633                 version="2.10">
34634         <doc xml:whitespace="preserve">Sets @func as the function that should be invoked every time a user clicks
34635 a #GtkLinkButton. This function is called before every callback registered
34636 for the "clicked" signal.
34637 If no uri hook has been set, GTK+ defaults to calling gtk_show_uri().</doc>
34638         <return-value transfer-ownership="full">
34639           <doc xml:whitespace="preserve">the previously set hook function.</doc>
34640           <type name="LinkButtonUriFunc" c:type="GtkLinkButtonUriFunc"/>
34641         </return-value>
34642         <parameters>
34643           <parameter name="func"
34644                      transfer-ownership="none"
34645                      allow-none="1"
34646                      scope="notified"
34647                      closure="1"
34648                      destroy="2">
34649             <doc xml:whitespace="preserve">a function called each time a #GtkLinkButton is clicked, or %NULL</doc>
34650             <type name="LinkButtonUriFunc" c:type="GtkLinkButtonUriFunc"/>
34651           </parameter>
34652           <parameter name="data" transfer-ownership="none" allow-none="1">
34653             <doc xml:whitespace="preserve">user data to be passed to @func, or %NULL</doc>
34654             <type name="any" c:type="gpointer"/>
34655           </parameter>
34656           <parameter name="destroy"
34657                      transfer-ownership="none"
34658                      allow-none="1"
34659                      scope="call">
34660             <doc xml:whitespace="preserve">a #GDestroyNotify that gets called when @data is no longer needed, or %NULL</doc>
34661             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
34662           </parameter>
34663         </parameters>
34664       </function>
34665       <method name="get_uri"
34666               c:identifier="gtk_link_button_get_uri"
34667               version="2.10">
34668         <doc xml:whitespace="preserve">Retrieves the URI set using gtk_link_button_set_uri().
34669 and should not be modified or freed.</doc>
34670         <return-value transfer-ownership="none">
34671           <doc xml:whitespace="preserve">a valid URI.  The returned string is owned by the link button</doc>
34672           <type name="utf8" c:type="gchar*"/>
34673         </return-value>
34674       </method>
34675       <method name="set_uri"
34676               c:identifier="gtk_link_button_set_uri"
34677               version="2.10">
34678         <doc xml:whitespace="preserve">Sets @uri as the URI where the #GtkLinkButton points. As a side-effect
34679 this unsets the 'visited' state of the button.</doc>
34680         <return-value transfer-ownership="none">
34681           <type name="none" c:type="void"/>
34682         </return-value>
34683         <parameters>
34684           <parameter name="uri" transfer-ownership="none">
34685             <doc xml:whitespace="preserve">a valid URI</doc>
34686             <type name="utf8" c:type="gchar*"/>
34687           </parameter>
34688         </parameters>
34689       </method>
34690       <method name="get_visited"
34691               c:identifier="gtk_link_button_get_visited"
34692               version="2.14">
34693         <doc xml:whitespace="preserve">Retrieves the 'visited' state of the URI where the #GtkLinkButton
34694 points. The button becomes visited when it is clicked. If the URI
34695 is changed on the button, the 'visited' state is unset again.
34696 The state may also be changed using gtk_link_button_set_visited().</doc>
34697         <return-value transfer-ownership="none">
34698           <doc xml:whitespace="preserve">%TRUE if the link has been visited, %FALSE otherwise</doc>
34699           <type name="boolean" c:type="gboolean"/>
34700         </return-value>
34701       </method>
34702       <method name="set_visited"
34703               c:identifier="gtk_link_button_set_visited"
34704               version="2.14">
34705         <doc xml:whitespace="preserve">Sets the 'visited' state of the URI where the #GtkLinkButton
34706 points.  See gtk_link_button_get_visited() for more details.</doc>
34707         <return-value transfer-ownership="none">
34708           <type name="none" c:type="void"/>
34709         </return-value>
34710         <parameters>
34711           <parameter name="visited" transfer-ownership="none">
34712             <doc xml:whitespace="preserve">the new 'visited' state</doc>
34713             <type name="boolean" c:type="gboolean"/>
34714           </parameter>
34715         </parameters>
34716       </method>
34717       <property name="uri" writable="1" transfer-ownership="none">
34718         <type name="utf8" c:type="gchararray"/>
34719       </property>
34720       <property name="visited" writable="1" transfer-ownership="none">
34721         <type name="boolean" c:type="gboolean"/>
34722       </property>
34723       <field name="parent_instance">
34724         <type name="Button" c:type="GtkButton"/>
34725       </field>
34726       <field name="priv">
34727         <type name="LinkButtonPrivate" c:type="GtkLinkButtonPrivate*"/>
34728       </field>
34729     </class>
34730     <record name="LinkButtonClass"
34731             c:type="GtkLinkButtonClass"
34732             glib:is-gtype-struct-for="LinkButton">
34733       <field name="parent_class">
34734         <type name="ButtonClass" c:type="GtkButtonClass"/>
34735       </field>
34736       <field name="gtk_padding1">
34737         <callback name="gtk_padding1" c:type="_gtk_padding1">
34738           <return-value transfer-ownership="none">
34739             <type name="none" c:type="void"/>
34740           </return-value>
34741         </callback>
34742       </field>
34743       <field name="gtk_padding2">
34744         <callback name="gtk_padding2" c:type="_gtk_padding2">
34745           <return-value transfer-ownership="none">
34746             <type name="none" c:type="void"/>
34747           </return-value>
34748         </callback>
34749       </field>
34750       <field name="gtk_padding3">
34751         <callback name="gtk_padding3" c:type="_gtk_padding3">
34752           <return-value transfer-ownership="none">
34753             <type name="none" c:type="void"/>
34754           </return-value>
34755         </callback>
34756       </field>
34757       <field name="gtk_padding4">
34758         <callback name="gtk_padding4" c:type="_gtk_padding4">
34759           <return-value transfer-ownership="none">
34760             <type name="none" c:type="void"/>
34761           </return-value>
34762         </callback>
34763       </field>
34764     </record>
34765     <record name="LinkButtonPrivate" c:type="GtkLinkButtonPrivate">
34766     </record>
34767     <callback name="LinkButtonUriFunc" c:type="GtkLinkButtonUriFunc">
34768       <return-value transfer-ownership="none">
34769         <type name="none" c:type="void"/>
34770       </return-value>
34771       <parameters>
34772         <parameter name="button" transfer-ownership="none">
34773           <type name="LinkButton" c:type="GtkLinkButton*"/>
34774         </parameter>
34775         <parameter name="link_" transfer-ownership="none">
34776           <type name="utf8" c:type="gchar*"/>
34777         </parameter>
34778         <parameter name="user_data" transfer-ownership="none" closure="2">
34779           <type name="any" c:type="gpointer"/>
34780         </parameter>
34781       </parameters>
34782     </callback>
34783     <class name="List"
34784            c:type="GtkList"
34785            parent="Container"
34786            glib:type-name="GtkList"
34787            glib:get-type="gtk_list_get_type"
34788            glib:type-struct="ListClass">
34789       <implements name="Atk.ImplementorIface"/>
34790       <implements name="Buildable"/>
34791       <constructor name="new" c:identifier="gtk_list_new">
34792         <return-value transfer-ownership="full">
34793           <type name="List" c:type="GtkWidget*"/>
34794         </return-value>
34795       </constructor>
34796       <method name="insert_items"
34797               c:identifier="gtk_list_insert_items"
34798               introspectable="0">
34799         <return-value transfer-ownership="none">
34800           <type name="none" c:type="void"/>
34801         </return-value>
34802         <parameters>
34803           <parameter name="items" transfer-ownership="none">
34804             <type name="GLib.List" c:type="GList*">
34805               <type name="any" c:type="gpointer"/>
34806             </type>
34807           </parameter>
34808           <parameter name="position" transfer-ownership="none">
34809             <type name="int" c:type="gint"/>
34810           </parameter>
34811         </parameters>
34812       </method>
34813       <method name="append_items"
34814               c:identifier="gtk_list_append_items"
34815               introspectable="0">
34816         <return-value transfer-ownership="none">
34817           <type name="none" c:type="void"/>
34818         </return-value>
34819         <parameters>
34820           <parameter name="items" transfer-ownership="none">
34821             <type name="GLib.List" c:type="GList*">
34822               <type name="any" c:type="gpointer"/>
34823             </type>
34824           </parameter>
34825         </parameters>
34826       </method>
34827       <method name="prepend_items"
34828               c:identifier="gtk_list_prepend_items"
34829               introspectable="0">
34830         <return-value transfer-ownership="none">
34831           <type name="none" c:type="void"/>
34832         </return-value>
34833         <parameters>
34834           <parameter name="items" transfer-ownership="none">
34835             <type name="GLib.List" c:type="GList*">
34836               <type name="any" c:type="gpointer"/>
34837             </type>
34838           </parameter>
34839         </parameters>
34840       </method>
34841       <method name="remove_items"
34842               c:identifier="gtk_list_remove_items"
34843               introspectable="0">
34844         <return-value transfer-ownership="none">
34845           <type name="none" c:type="void"/>
34846         </return-value>
34847         <parameters>
34848           <parameter name="items" transfer-ownership="none">
34849             <type name="GLib.List" c:type="GList*">
34850               <type name="any" c:type="gpointer"/>
34851             </type>
34852           </parameter>
34853         </parameters>
34854       </method>
34855       <method name="remove_items_no_unref"
34856               c:identifier="gtk_list_remove_items_no_unref"
34857               introspectable="0">
34858         <return-value transfer-ownership="none">
34859           <type name="none" c:type="void"/>
34860         </return-value>
34861         <parameters>
34862           <parameter name="items" transfer-ownership="none">
34863             <type name="GLib.List" c:type="GList*">
34864               <type name="any" c:type="gpointer"/>
34865             </type>
34866           </parameter>
34867         </parameters>
34868       </method>
34869       <method name="clear_items" c:identifier="gtk_list_clear_items">
34870         <return-value transfer-ownership="none">
34871           <type name="none" c:type="void"/>
34872         </return-value>
34873         <parameters>
34874           <parameter name="start" transfer-ownership="none">
34875             <type name="int" c:type="gint"/>
34876           </parameter>
34877           <parameter name="end" transfer-ownership="none">
34878             <type name="int" c:type="gint"/>
34879           </parameter>
34880         </parameters>
34881       </method>
34882       <method name="select_item" c:identifier="gtk_list_select_item">
34883         <return-value transfer-ownership="none">
34884           <type name="none" c:type="void"/>
34885         </return-value>
34886         <parameters>
34887           <parameter name="item" transfer-ownership="none">
34888             <type name="int" c:type="gint"/>
34889           </parameter>
34890         </parameters>
34891       </method>
34892       <method name="unselect_item" c:identifier="gtk_list_unselect_item">
34893         <return-value transfer-ownership="none">
34894           <type name="none" c:type="void"/>
34895         </return-value>
34896         <parameters>
34897           <parameter name="item" transfer-ownership="none">
34898             <type name="int" c:type="gint"/>
34899           </parameter>
34900         </parameters>
34901       </method>
34902       <method name="select_child" c:identifier="gtk_list_select_child">
34903         <return-value transfer-ownership="none">
34904           <type name="none" c:type="void"/>
34905         </return-value>
34906         <parameters>
34907           <parameter name="child" transfer-ownership="none">
34908             <type name="Widget" c:type="GtkWidget*"/>
34909           </parameter>
34910         </parameters>
34911       </method>
34912       <method name="unselect_child" c:identifier="gtk_list_unselect_child">
34913         <return-value transfer-ownership="none">
34914           <type name="none" c:type="void"/>
34915         </return-value>
34916         <parameters>
34917           <parameter name="child" transfer-ownership="none">
34918             <type name="Widget" c:type="GtkWidget*"/>
34919           </parameter>
34920         </parameters>
34921       </method>
34922       <method name="child_position" c:identifier="gtk_list_child_position">
34923         <return-value transfer-ownership="none">
34924           <type name="int" c:type="gint"/>
34925         </return-value>
34926         <parameters>
34927           <parameter name="child" transfer-ownership="none">
34928             <type name="Widget" c:type="GtkWidget*"/>
34929           </parameter>
34930         </parameters>
34931       </method>
34932       <method name="set_selection_mode"
34933               c:identifier="gtk_list_set_selection_mode">
34934         <return-value transfer-ownership="none">
34935           <type name="none" c:type="void"/>
34936         </return-value>
34937         <parameters>
34938           <parameter name="mode" transfer-ownership="none">
34939             <type name="SelectionMode" c:type="GtkSelectionMode"/>
34940           </parameter>
34941         </parameters>
34942       </method>
34943       <method name="extend_selection" c:identifier="gtk_list_extend_selection">
34944         <return-value transfer-ownership="none">
34945           <type name="none" c:type="void"/>
34946         </return-value>
34947         <parameters>
34948           <parameter name="scroll_type" transfer-ownership="none">
34949             <type name="ScrollType" c:type="GtkScrollType"/>
34950           </parameter>
34951           <parameter name="position" transfer-ownership="none">
34952             <type name="float" c:type="gfloat"/>
34953           </parameter>
34954           <parameter name="auto_start_selection" transfer-ownership="none">
34955             <type name="boolean" c:type="gboolean"/>
34956           </parameter>
34957         </parameters>
34958       </method>
34959       <method name="start_selection" c:identifier="gtk_list_start_selection">
34960         <return-value transfer-ownership="none">
34961           <type name="none" c:type="void"/>
34962         </return-value>
34963       </method>
34964       <method name="end_selection" c:identifier="gtk_list_end_selection">
34965         <return-value transfer-ownership="none">
34966           <type name="none" c:type="void"/>
34967         </return-value>
34968       </method>
34969       <method name="select_all" c:identifier="gtk_list_select_all">
34970         <return-value transfer-ownership="none">
34971           <type name="none" c:type="void"/>
34972         </return-value>
34973       </method>
34974       <method name="unselect_all" c:identifier="gtk_list_unselect_all">
34975         <return-value transfer-ownership="none">
34976           <type name="none" c:type="void"/>
34977         </return-value>
34978       </method>
34979       <method name="scroll_horizontal"
34980               c:identifier="gtk_list_scroll_horizontal">
34981         <return-value transfer-ownership="none">
34982           <type name="none" c:type="void"/>
34983         </return-value>
34984         <parameters>
34985           <parameter name="scroll_type" transfer-ownership="none">
34986             <type name="ScrollType" c:type="GtkScrollType"/>
34987           </parameter>
34988           <parameter name="position" transfer-ownership="none">
34989             <type name="float" c:type="gfloat"/>
34990           </parameter>
34991         </parameters>
34992       </method>
34993       <method name="scroll_vertical" c:identifier="gtk_list_scroll_vertical">
34994         <return-value transfer-ownership="none">
34995           <type name="none" c:type="void"/>
34996         </return-value>
34997         <parameters>
34998           <parameter name="scroll_type" transfer-ownership="none">
34999             <type name="ScrollType" c:type="GtkScrollType"/>
35000           </parameter>
35001           <parameter name="position" transfer-ownership="none">
35002             <type name="float" c:type="gfloat"/>
35003           </parameter>
35004         </parameters>
35005       </method>
35006       <method name="toggle_add_mode" c:identifier="gtk_list_toggle_add_mode">
35007         <return-value transfer-ownership="none">
35008           <type name="none" c:type="void"/>
35009         </return-value>
35010       </method>
35011       <method name="toggle_focus_row" c:identifier="gtk_list_toggle_focus_row">
35012         <return-value transfer-ownership="none">
35013           <type name="none" c:type="void"/>
35014         </return-value>
35015       </method>
35016       <method name="toggle_row" c:identifier="gtk_list_toggle_row">
35017         <return-value transfer-ownership="none">
35018           <type name="none" c:type="void"/>
35019         </return-value>
35020         <parameters>
35021           <parameter name="item" transfer-ownership="none">
35022             <type name="Widget" c:type="GtkWidget*"/>
35023           </parameter>
35024         </parameters>
35025       </method>
35026       <method name="undo_selection" c:identifier="gtk_list_undo_selection">
35027         <return-value transfer-ownership="none">
35028           <type name="none" c:type="void"/>
35029         </return-value>
35030       </method>
35031       <method name="end_drag_selection"
35032               c:identifier="gtk_list_end_drag_selection">
35033         <return-value transfer-ownership="none">
35034           <type name="none" c:type="void"/>
35035         </return-value>
35036       </method>
35037       <property name="selection-mode" writable="1" transfer-ownership="none">
35038         <type name="SelectionMode" c:type="GtkSelectionMode"/>
35039       </property>
35040       <field name="container">
35041         <type name="Container" c:type="GtkContainer"/>
35042       </field>
35043       <field name="children">
35044         <type name="GLib.List" c:type="GList*">
35045           <type name="any" c:type="gpointer"/>
35046         </type>
35047       </field>
35048       <field name="selection">
35049         <type name="GLib.List" c:type="GList*">
35050           <type name="any" c:type="gpointer"/>
35051         </type>
35052       </field>
35053       <field name="undo_selection">
35054         <type name="GLib.List" c:type="GList*">
35055           <type name="any" c:type="gpointer"/>
35056         </type>
35057       </field>
35058       <field name="undo_unselection">
35059         <type name="GLib.List" c:type="GList*">
35060           <type name="any" c:type="gpointer"/>
35061         </type>
35062       </field>
35063       <field name="last_focus_child">
35064         <type name="Widget" c:type="GtkWidget*"/>
35065       </field>
35066       <field name="undo_focus_child">
35067         <type name="Widget" c:type="GtkWidget*"/>
35068       </field>
35069       <field name="htimer">
35070         <type name="uint" c:type="guint"/>
35071       </field>
35072       <field name="vtimer">
35073         <type name="uint" c:type="guint"/>
35074       </field>
35075       <field name="anchor">
35076         <type name="int" c:type="gint"/>
35077       </field>
35078       <field name="drag_pos">
35079         <type name="int" c:type="gint"/>
35080       </field>
35081       <field name="anchor_state">
35082         <type name="StateType" c:type="GtkStateType"/>
35083       </field>
35084       <field name="selection_mode" bits="2">
35085         <type name="uint" c:type="guint"/>
35086       </field>
35087       <field name="drag_selection" bits="1">
35088         <type name="uint" c:type="guint"/>
35089       </field>
35090       <field name="add_mode" bits="1">
35091         <type name="uint" c:type="guint"/>
35092       </field>
35093       <glib:signal name="select-child">
35094         <return-value transfer-ownership="full">
35095           <type name="none" c:type="void"/>
35096         </return-value>
35097         <parameters>
35098           <parameter name="object" transfer-ownership="none">
35099             <type name="Widget" c:type="GtkWidget"/>
35100           </parameter>
35101         </parameters>
35102       </glib:signal>
35103       <glib:signal name="selection-changed">
35104         <return-value transfer-ownership="full">
35105           <type name="none" c:type="void"/>
35106         </return-value>
35107       </glib:signal>
35108       <glib:signal name="unselect-child">
35109         <return-value transfer-ownership="full">
35110           <type name="none" c:type="void"/>
35111         </return-value>
35112         <parameters>
35113           <parameter name="object" transfer-ownership="none">
35114             <type name="Widget" c:type="GtkWidget"/>
35115           </parameter>
35116         </parameters>
35117       </glib:signal>
35118     </class>
35119     <record name="ListClass"
35120             c:type="GtkListClass"
35121             glib:is-gtype-struct-for="List">
35122       <field name="parent_class">
35123         <type name="ContainerClass" c:type="GtkContainerClass"/>
35124       </field>
35125       <field name="selection_changed">
35126         <callback name="selection_changed" c:type="selection_changed">
35127           <return-value transfer-ownership="none">
35128             <type name="none" c:type="void"/>
35129           </return-value>
35130           <parameters>
35131             <parameter name="list" transfer-ownership="none">
35132               <type name="List" c:type="GtkList*"/>
35133             </parameter>
35134           </parameters>
35135         </callback>
35136       </field>
35137       <field name="select_child">
35138         <callback name="select_child" c:type="select_child">
35139           <return-value transfer-ownership="none">
35140             <type name="none" c:type="void"/>
35141           </return-value>
35142           <parameters>
35143             <parameter name="list" transfer-ownership="none">
35144               <type name="List" c:type="GtkList*"/>
35145             </parameter>
35146             <parameter name="child" transfer-ownership="none">
35147               <type name="Widget" c:type="GtkWidget*"/>
35148             </parameter>
35149           </parameters>
35150         </callback>
35151       </field>
35152       <field name="unselect_child">
35153         <callback name="unselect_child" c:type="unselect_child">
35154           <return-value transfer-ownership="none">
35155             <type name="none" c:type="void"/>
35156           </return-value>
35157           <parameters>
35158             <parameter name="list" transfer-ownership="none">
35159               <type name="List" c:type="GtkList*"/>
35160             </parameter>
35161             <parameter name="child" transfer-ownership="none">
35162               <type name="Widget" c:type="GtkWidget*"/>
35163             </parameter>
35164           </parameters>
35165         </callback>
35166       </field>
35167     </record>
35168     <class name="ListItem"
35169            c:type="GtkListItem"
35170            parent="Item"
35171            glib:type-name="GtkListItem"
35172            glib:get-type="gtk_list_item_get_type"
35173            glib:type-struct="ListItemClass">
35174       <implements name="Atk.ImplementorIface"/>
35175       <implements name="Buildable"/>
35176       <constructor name="new" c:identifier="gtk_list_item_new">
35177         <return-value transfer-ownership="full">
35178           <type name="ListItem" c:type="GtkWidget*"/>
35179         </return-value>
35180       </constructor>
35181       <constructor name="new_with_label"
35182                    c:identifier="gtk_list_item_new_with_label">
35183         <return-value transfer-ownership="full">
35184           <type name="ListItem" c:type="GtkWidget*"/>
35185         </return-value>
35186         <parameters>
35187           <parameter name="label" transfer-ownership="none">
35188             <type name="utf8" c:type="gchar*"/>
35189           </parameter>
35190         </parameters>
35191       </constructor>
35192       <method name="select" c:identifier="gtk_list_item_select">
35193         <return-value transfer-ownership="none">
35194           <type name="none" c:type="void"/>
35195         </return-value>
35196       </method>
35197       <method name="deselect" c:identifier="gtk_list_item_deselect">
35198         <return-value transfer-ownership="none">
35199           <type name="none" c:type="void"/>
35200         </return-value>
35201       </method>
35202       <field name="item">
35203         <type name="Item" c:type="GtkItem"/>
35204       </field>
35205       <glib:signal name="end-selection">
35206         <return-value transfer-ownership="full">
35207           <type name="none" c:type="void"/>
35208         </return-value>
35209       </glib:signal>
35210       <glib:signal name="extend-selection">
35211         <return-value transfer-ownership="full">
35212           <type name="none" c:type="void"/>
35213         </return-value>
35214         <parameters>
35215           <parameter name="object" transfer-ownership="none">
35216             <type name="ScrollType" c:type="GtkScrollType"/>
35217           </parameter>
35218           <parameter name="p0" transfer-ownership="none">
35219             <type name="float" c:type="gfloat"/>
35220           </parameter>
35221           <parameter name="p1" transfer-ownership="none">
35222             <type name="boolean" c:type="gboolean"/>
35223           </parameter>
35224         </parameters>
35225       </glib:signal>
35226       <glib:signal name="scroll-horizontal">
35227         <return-value transfer-ownership="full">
35228           <type name="none" c:type="void"/>
35229         </return-value>
35230         <parameters>
35231           <parameter name="object" transfer-ownership="none">
35232             <type name="ScrollType" c:type="GtkScrollType"/>
35233           </parameter>
35234           <parameter name="p0" transfer-ownership="none">
35235             <type name="float" c:type="gfloat"/>
35236           </parameter>
35237         </parameters>
35238       </glib:signal>
35239       <glib:signal name="scroll-vertical">
35240         <return-value transfer-ownership="full">
35241           <type name="none" c:type="void"/>
35242         </return-value>
35243         <parameters>
35244           <parameter name="object" transfer-ownership="none">
35245             <type name="ScrollType" c:type="GtkScrollType"/>
35246           </parameter>
35247           <parameter name="p0" transfer-ownership="none">
35248             <type name="float" c:type="gfloat"/>
35249           </parameter>
35250         </parameters>
35251       </glib:signal>
35252       <glib:signal name="select-all">
35253         <return-value transfer-ownership="full">
35254           <type name="none" c:type="void"/>
35255         </return-value>
35256       </glib:signal>
35257       <glib:signal name="start-selection">
35258         <return-value transfer-ownership="full">
35259           <type name="none" c:type="void"/>
35260         </return-value>
35261       </glib:signal>
35262       <glib:signal name="toggle-add-mode">
35263         <return-value transfer-ownership="full">
35264           <type name="none" c:type="void"/>
35265         </return-value>
35266       </glib:signal>
35267       <glib:signal name="toggle-focus-row">
35268         <return-value transfer-ownership="full">
35269           <type name="none" c:type="void"/>
35270         </return-value>
35271       </glib:signal>
35272       <glib:signal name="undo-selection">
35273         <return-value transfer-ownership="full">
35274           <type name="none" c:type="void"/>
35275         </return-value>
35276       </glib:signal>
35277       <glib:signal name="unselect-all">
35278         <return-value transfer-ownership="full">
35279           <type name="none" c:type="void"/>
35280         </return-value>
35281       </glib:signal>
35282     </class>
35283     <record name="ListItemClass"
35284             c:type="GtkListItemClass"
35285             glib:is-gtype-struct-for="ListItem">
35286       <field name="parent_class">
35287         <type name="ItemClass" c:type="GtkItemClass"/>
35288       </field>
35289       <field name="toggle_focus_row">
35290         <callback name="toggle_focus_row" c:type="toggle_focus_row">
35291           <return-value transfer-ownership="none">
35292             <type name="none" c:type="void"/>
35293           </return-value>
35294           <parameters>
35295             <parameter name="list_item" transfer-ownership="none">
35296               <type name="ListItem" c:type="GtkListItem*"/>
35297             </parameter>
35298           </parameters>
35299         </callback>
35300       </field>
35301       <field name="select_all">
35302         <callback name="select_all" c:type="select_all">
35303           <return-value transfer-ownership="none">
35304             <type name="none" c:type="void"/>
35305           </return-value>
35306           <parameters>
35307             <parameter name="list_item" transfer-ownership="none">
35308               <type name="ListItem" c:type="GtkListItem*"/>
35309             </parameter>
35310           </parameters>
35311         </callback>
35312       </field>
35313       <field name="unselect_all">
35314         <callback name="unselect_all" c:type="unselect_all">
35315           <return-value transfer-ownership="none">
35316             <type name="none" c:type="void"/>
35317           </return-value>
35318           <parameters>
35319             <parameter name="list_item" transfer-ownership="none">
35320               <type name="ListItem" c:type="GtkListItem*"/>
35321             </parameter>
35322           </parameters>
35323         </callback>
35324       </field>
35325       <field name="undo_selection">
35326         <callback name="undo_selection" c:type="undo_selection">
35327           <return-value transfer-ownership="none">
35328             <type name="none" c:type="void"/>
35329           </return-value>
35330           <parameters>
35331             <parameter name="list_item" transfer-ownership="none">
35332               <type name="ListItem" c:type="GtkListItem*"/>
35333             </parameter>
35334           </parameters>
35335         </callback>
35336       </field>
35337       <field name="start_selection">
35338         <callback name="start_selection" c:type="start_selection">
35339           <return-value transfer-ownership="none">
35340             <type name="none" c:type="void"/>
35341           </return-value>
35342           <parameters>
35343             <parameter name="list_item" transfer-ownership="none">
35344               <type name="ListItem" c:type="GtkListItem*"/>
35345             </parameter>
35346           </parameters>
35347         </callback>
35348       </field>
35349       <field name="end_selection">
35350         <callback name="end_selection" c:type="end_selection">
35351           <return-value transfer-ownership="none">
35352             <type name="none" c:type="void"/>
35353           </return-value>
35354           <parameters>
35355             <parameter name="list_item" transfer-ownership="none">
35356               <type name="ListItem" c:type="GtkListItem*"/>
35357             </parameter>
35358           </parameters>
35359         </callback>
35360       </field>
35361       <field name="extend_selection">
35362         <callback name="extend_selection" c:type="extend_selection">
35363           <return-value transfer-ownership="none">
35364             <type name="none" c:type="void"/>
35365           </return-value>
35366           <parameters>
35367             <parameter name="list_item" transfer-ownership="none">
35368               <type name="ListItem" c:type="GtkListItem*"/>
35369             </parameter>
35370             <parameter name="scroll_type" transfer-ownership="none">
35371               <type name="ScrollType" c:type="GtkScrollType"/>
35372             </parameter>
35373             <parameter name="position" transfer-ownership="none">
35374               <type name="float" c:type="gfloat"/>
35375             </parameter>
35376             <parameter name="auto_start_selection" transfer-ownership="none">
35377               <type name="boolean" c:type="gboolean"/>
35378             </parameter>
35379           </parameters>
35380         </callback>
35381       </field>
35382       <field name="scroll_horizontal">
35383         <callback name="scroll_horizontal" c:type="scroll_horizontal">
35384           <return-value transfer-ownership="none">
35385             <type name="none" c:type="void"/>
35386           </return-value>
35387           <parameters>
35388             <parameter name="list_item" transfer-ownership="none">
35389               <type name="ListItem" c:type="GtkListItem*"/>
35390             </parameter>
35391             <parameter name="scroll_type" transfer-ownership="none">
35392               <type name="ScrollType" c:type="GtkScrollType"/>
35393             </parameter>
35394             <parameter name="position" transfer-ownership="none">
35395               <type name="float" c:type="gfloat"/>
35396             </parameter>
35397           </parameters>
35398         </callback>
35399       </field>
35400       <field name="scroll_vertical">
35401         <callback name="scroll_vertical" c:type="scroll_vertical">
35402           <return-value transfer-ownership="none">
35403             <type name="none" c:type="void"/>
35404           </return-value>
35405           <parameters>
35406             <parameter name="list_item" transfer-ownership="none">
35407               <type name="ListItem" c:type="GtkListItem*"/>
35408             </parameter>
35409             <parameter name="scroll_type" transfer-ownership="none">
35410               <type name="ScrollType" c:type="GtkScrollType"/>
35411             </parameter>
35412             <parameter name="position" transfer-ownership="none">
35413               <type name="float" c:type="gfloat"/>
35414             </parameter>
35415           </parameters>
35416         </callback>
35417       </field>
35418       <field name="toggle_add_mode">
35419         <callback name="toggle_add_mode" c:type="toggle_add_mode">
35420           <return-value transfer-ownership="none">
35421             <type name="none" c:type="void"/>
35422           </return-value>
35423           <parameters>
35424             <parameter name="list_item" transfer-ownership="none">
35425               <type name="ListItem" c:type="GtkListItem*"/>
35426             </parameter>
35427           </parameters>
35428         </callback>
35429       </field>
35430     </record>
35431     <class name="ListStore"
35432            c:type="GtkListStore"
35433            parent="GObject.Object"
35434            glib:type-name="GtkListStore"
35435            glib:get-type="gtk_list_store_get_type"
35436            glib:type-struct="ListStoreClass">
35437       <implements name="Buildable"/>
35438       <implements name="TreeDragDest"/>
35439       <implements name="TreeDragSource"/>
35440       <implements name="TreeModel"/>
35441       <implements name="TreeSortable"/>
35442       <constructor name="new"
35443                    c:identifier="gtk_list_store_new"
35444                    introspectable="0">
35445         <doc xml:whitespace="preserve">Creates a new list store as with @n_columns columns each of the types passed
35446 in.  Note that only types derived from standard GObject fundamental types 
35447 are supported. 
35448 As an example, &lt;literal&gt;gtk_tree_store_new (3, G_TYPE_INT, G_TYPE_STRING,
35449 GDK_TYPE_PIXBUF);&lt;/literal&gt; will create a new #GtkListStore with three columns, of type
35450 int, string and #GdkPixbuf respectively.</doc>
35451         <return-value transfer-ownership="full">
35452           <doc xml:whitespace="preserve">a new #GtkListStore</doc>
35453           <type name="ListStore" c:type="GtkListStore*"/>
35454         </return-value>
35455         <parameters>
35456           <parameter name="n_columns" transfer-ownership="none">
35457             <doc xml:whitespace="preserve">number of columns in the list store</doc>
35458             <type name="int" c:type="gint"/>
35459           </parameter>
35460           <parameter transfer-ownership="none">
35461             <varargs>
35462             </varargs>
35463           </parameter>
35464         </parameters>
35465       </constructor>
35466       <constructor name="newv" c:identifier="gtk_list_store_newv">
35467         <doc xml:whitespace="preserve">Non-vararg creation function.  Used primarily by language bindings.</doc>
35468         <return-value transfer-ownership="none">
35469           <doc xml:whitespace="preserve">a new #GtkListStore</doc>
35470           <type name="ListStore" c:type="GtkListStore*"/>
35471         </return-value>
35472         <parameters>
35473           <parameter name="n_columns" transfer-ownership="none">
35474             <doc xml:whitespace="preserve">number of columns in the list store</doc>
35475             <type name="int" c:type="gint"/>
35476           </parameter>
35477           <parameter name="types" transfer-ownership="none">
35478             <doc xml:whitespace="preserve">an array of #GType types for the columns, from first to last</doc>
35479             <array length="0" c:type="GType*">
35480               <type name="GType"/>
35481             </array>
35482           </parameter>
35483         </parameters>
35484       </constructor>
35485       <method name="set_column_types"
35486               c:identifier="gtk_list_store_set_column_types">
35487         <doc xml:whitespace="preserve">This function is meant primarily for #GObjects that inherit from #GtkListStore,
35488 and should only be used when constructing a new #GtkListStore.  It will not
35489 function after a row has been added, or a method on the #GtkTreeModel
35490 interface is called.</doc>
35491         <return-value transfer-ownership="none">
35492           <type name="none" c:type="void"/>
35493         </return-value>
35494         <parameters>
35495           <parameter name="n_columns" transfer-ownership="none">
35496             <doc xml:whitespace="preserve">Number of columns for the list store</doc>
35497             <type name="int" c:type="gint"/>
35498           </parameter>
35499           <parameter name="types" transfer-ownership="none">
35500             <doc xml:whitespace="preserve">An array length n of #GTypes</doc>
35501             <array length="1" c:type="GType*">
35502               <type name="GType"/>
35503             </array>
35504           </parameter>
35505         </parameters>
35506       </method>
35507       <method name="set_value" c:identifier="gtk_list_store_set_value">
35508         <doc xml:whitespace="preserve">Sets the data in the cell specified by @iter and @column.
35509 The type of @value must be convertible to the type of the
35510 column.</doc>
35511         <return-value transfer-ownership="none">
35512           <type name="none" c:type="void"/>
35513         </return-value>
35514         <parameters>
35515           <parameter name="iter" transfer-ownership="none">
35516             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
35517             <type name="TreeIter" c:type="GtkTreeIter*"/>
35518           </parameter>
35519           <parameter name="column" transfer-ownership="none">
35520             <doc xml:whitespace="preserve">column number to modify</doc>
35521             <type name="int" c:type="gint"/>
35522           </parameter>
35523           <parameter name="value" transfer-ownership="none">
35524             <doc xml:whitespace="preserve">new value for the cell</doc>
35525             <type name="GObject.Value" c:type="GValue*"/>
35526           </parameter>
35527         </parameters>
35528       </method>
35529       <method name="set" c:identifier="gtk_list_store_set" introspectable="0">
35530         <doc xml:whitespace="preserve">Sets the value of one or more cells in the row referenced by @iter.
35531 The variable argument list should contain integer column numbers,
35532 each column number followed by the value to be set.
35533 The list is terminated by a -1. For example, to set column 0 with type
35534 %G_TYPE_STRING to "Foo", you would write &lt;literal&gt;gtk_list_store_set (store, iter,
35535 0, "Foo", -1)&lt;/literal&gt;.
35536 The value will be copied or referenced by the store if appropriate.</doc>
35537         <return-value transfer-ownership="none">
35538           <type name="none" c:type="void"/>
35539         </return-value>
35540         <parameters>
35541           <parameter name="iter" transfer-ownership="none">
35542             <doc xml:whitespace="preserve">row iterator</doc>
35543             <type name="TreeIter" c:type="GtkTreeIter*"/>
35544           </parameter>
35545           <parameter transfer-ownership="none">
35546             <varargs>
35547             </varargs>
35548           </parameter>
35549         </parameters>
35550       </method>
35551       <method name="set_valuesv"
35552               c:identifier="gtk_list_store_set_valuesv"
35553               version="2.12">
35554         <doc xml:whitespace="preserve">A variant of gtk_list_store_set_valist() which
35555 takes the columns and values as two arrays, instead of
35556 varargs. This function is mainly intended for 
35557 language-bindings and in case the number of columns to
35558 change is not known until run-time.</doc>
35559         <return-value transfer-ownership="none">
35560           <type name="none" c:type="void"/>
35561         </return-value>
35562         <parameters>
35563           <parameter name="iter" transfer-ownership="none">
35564             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
35565             <type name="TreeIter" c:type="GtkTreeIter*"/>
35566           </parameter>
35567           <parameter name="columns" transfer-ownership="none">
35568             <doc xml:whitespace="preserve">an array of column numbers</doc>
35569             <array length="4" c:type="gint*">
35570               <type name="int"/>
35571             </array>
35572           </parameter>
35573           <parameter name="values" transfer-ownership="none">
35574             <doc xml:whitespace="preserve">an array of GValues</doc>
35575             <array length="4" c:type="GValue*">
35576               <type name="GObject.Value"/>
35577             </array>
35578           </parameter>
35579           <parameter name="n_values" transfer-ownership="none">
35580             <doc xml:whitespace="preserve">the length of the @columns and @values arrays</doc>
35581             <type name="int" c:type="gint"/>
35582           </parameter>
35583         </parameters>
35584       </method>
35585       <method name="remove" c:identifier="gtk_list_store_remove">
35586         <doc xml:whitespace="preserve">Removes the given row from the list store.  After being removed, 
35587 to the last row in @list_store.</doc>
35588         <return-value transfer-ownership="none">
35589           <doc xml:whitespace="preserve">%TRUE if @iter is valid, %FALSE if not.</doc>
35590           <type name="boolean" c:type="gboolean"/>
35591         </return-value>
35592         <parameters>
35593           <parameter name="iter" transfer-ownership="none">
35594             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
35595             <type name="TreeIter" c:type="GtkTreeIter*"/>
35596           </parameter>
35597         </parameters>
35598       </method>
35599       <method name="insert" c:identifier="gtk_list_store_insert">
35600         <doc xml:whitespace="preserve">Creates a new row at @position.  @iter will be changed to point to this new
35601 row.  If @position is larger than the number of rows on the list, then the
35602 new row will be appended to the list. The row will be empty after this
35603 function is called.  To fill in values, you need to call 
35604 gtk_list_store_set() or gtk_list_store_set_value().</doc>
35605         <return-value transfer-ownership="none">
35606           <type name="none" c:type="void"/>
35607         </return-value>
35608         <parameters>
35609           <parameter name="iter" transfer-ownership="none">
35610             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
35611             <type name="TreeIter" c:type="GtkTreeIter*"/>
35612           </parameter>
35613           <parameter name="position" transfer-ownership="none">
35614             <doc xml:whitespace="preserve">position to insert the new row</doc>
35615             <type name="int" c:type="gint"/>
35616           </parameter>
35617         </parameters>
35618       </method>
35619       <method name="insert_before" c:identifier="gtk_list_store_insert_before">
35620         <doc xml:whitespace="preserve">Inserts a new row before @sibling. If @sibling is %NULL, then the row will 
35621 be appended to the end of the list. @iter will be changed to point to this 
35622 new row. The row will be empty after this function is called. To fill in 
35623 values, you need to call gtk_list_store_set() or gtk_list_store_set_value().</doc>
35624         <return-value transfer-ownership="none">
35625           <type name="none" c:type="void"/>
35626         </return-value>
35627         <parameters>
35628           <parameter name="iter" transfer-ownership="none">
35629             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
35630             <type name="TreeIter" c:type="GtkTreeIter*"/>
35631           </parameter>
35632           <parameter name="sibling" transfer-ownership="none" allow-none="1">
35633             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
35634             <type name="TreeIter" c:type="GtkTreeIter*"/>
35635           </parameter>
35636         </parameters>
35637       </method>
35638       <method name="insert_after" c:identifier="gtk_list_store_insert_after">
35639         <doc xml:whitespace="preserve">Inserts a new row after @sibling. If @sibling is %NULL, then the row will be
35640 prepended to the beginning of the list. @iter will be changed to point to
35641 this new row. The row will be empty after this function is called. To fill
35642 in values, you need to call gtk_list_store_set() or gtk_list_store_set_value().</doc>
35643         <return-value transfer-ownership="none">
35644           <type name="none" c:type="void"/>
35645         </return-value>
35646         <parameters>
35647           <parameter name="iter" transfer-ownership="none">
35648             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
35649             <type name="TreeIter" c:type="GtkTreeIter*"/>
35650           </parameter>
35651           <parameter name="sibling" transfer-ownership="none" allow-none="1">
35652             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
35653             <type name="TreeIter" c:type="GtkTreeIter*"/>
35654           </parameter>
35655         </parameters>
35656       </method>
35657       <method name="insert_with_values"
35658               c:identifier="gtk_list_store_insert_with_values"
35659               version="2.6"
35660               introspectable="0">
35661         <doc xml:whitespace="preserve">Creates a new row at @position.  @iter will be changed to point to this new
35662 row.  If @position is larger than the number of rows on the list, then the
35663 new row will be appended to the list. The row will be filled with the 
35664 values given to this function. 
35665 Calling
35666 &lt;literal&gt;gtk_list_store_insert_with_values(list_store, iter, position...)&lt;/literal&gt; 
35667 has the same effect as calling 
35668 |[
35669 gtk_list_store_insert (list_store, iter, position);
35670 gtk_list_store_set (list_store, iter, ...);
35671 ]|
35672 with the difference that the former will only emit a row_inserted signal,
35673 while the latter will emit row_inserted, row_changed and, if the list store
35674 is sorted, rows_reordered. Since emitting the rows_reordered signal
35675 repeatedly can affect the performance of the program, 
35676 gtk_list_store_insert_with_values() should generally be preferred when
35677 inserting rows in a sorted list store.</doc>
35678         <return-value transfer-ownership="none">
35679           <type name="none" c:type="void"/>
35680         </return-value>
35681         <parameters>
35682           <parameter name="iter" transfer-ownership="none" allow-none="1">
35683             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row, or %NULL.</doc>
35684             <type name="TreeIter" c:type="GtkTreeIter*"/>
35685           </parameter>
35686           <parameter name="position" transfer-ownership="none">
35687             <doc xml:whitespace="preserve">position to insert the new row</doc>
35688             <type name="int" c:type="gint"/>
35689           </parameter>
35690           <parameter transfer-ownership="none">
35691             <varargs>
35692             </varargs>
35693           </parameter>
35694         </parameters>
35695       </method>
35696       <method name="insert_with_valuesv"
35697               c:identifier="gtk_list_store_insert_with_valuesv"
35698               version="2.6">
35699         <doc xml:whitespace="preserve">A variant of gtk_list_store_insert_with_values() which
35700 takes the columns and values as two arrays, instead of
35701 varargs. This function is mainly intended for 
35702 language-bindings.</doc>
35703         <return-value transfer-ownership="none">
35704           <type name="none" c:type="void"/>
35705         </return-value>
35706         <parameters>
35707           <parameter name="iter" transfer-ownership="none" allow-none="1">
35708             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row, or %NULL.</doc>
35709             <type name="TreeIter" c:type="GtkTreeIter*"/>
35710           </parameter>
35711           <parameter name="position" transfer-ownership="none">
35712             <doc xml:whitespace="preserve">position to insert the new row</doc>
35713             <type name="int" c:type="gint"/>
35714           </parameter>
35715           <parameter name="columns"
35716                      direction="out"
35717                      caller-allocates="0"
35718                      transfer-ownership="full">
35719             <doc xml:whitespace="preserve">an array of column numbers</doc>
35720             <type name="int" c:type="gint*"/>
35721           </parameter>
35722           <parameter name="values" transfer-ownership="none">
35723             <doc xml:whitespace="preserve">an array of GValues</doc>
35724             <type name="GObject.Value" c:type="GValue*"/>
35725           </parameter>
35726           <parameter name="n_values" transfer-ownership="none">
35727             <doc xml:whitespace="preserve">the length of the @columns and @values arrays</doc>
35728             <type name="int" c:type="gint"/>
35729           </parameter>
35730         </parameters>
35731       </method>
35732       <method name="prepend" c:identifier="gtk_list_store_prepend">
35733         <doc xml:whitespace="preserve">Prepends a new row to @list_store. @iter will be changed to point to this new
35734 row. The row will be empty after this function is called. To fill in
35735 values, you need to call gtk_list_store_set() or gtk_list_store_set_value().</doc>
35736         <return-value transfer-ownership="none">
35737           <type name="none" c:type="void"/>
35738         </return-value>
35739         <parameters>
35740           <parameter name="iter" transfer-ownership="none">
35741             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the prepend row</doc>
35742             <type name="TreeIter" c:type="GtkTreeIter*"/>
35743           </parameter>
35744         </parameters>
35745       </method>
35746       <method name="append" c:identifier="gtk_list_store_append">
35747         <doc xml:whitespace="preserve">Appends a new row to @list_store.  @iter will be changed to point to this new
35748 row.  The row will be empty after this function is called.  To fill in
35749 values, you need to call gtk_list_store_set() or gtk_list_store_set_value().</doc>
35750         <return-value transfer-ownership="none">
35751           <type name="none" c:type="void"/>
35752         </return-value>
35753         <parameters>
35754           <parameter name="iter" transfer-ownership="none">
35755             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the appended row</doc>
35756             <type name="TreeIter" c:type="GtkTreeIter*"/>
35757           </parameter>
35758         </parameters>
35759       </method>
35760       <method name="clear" c:identifier="gtk_list_store_clear">
35761         <doc xml:whitespace="preserve">Removes all rows from the list store.</doc>
35762         <return-value transfer-ownership="none">
35763           <type name="none" c:type="void"/>
35764         </return-value>
35765       </method>
35766       <method name="iter_is_valid"
35767               c:identifier="gtk_list_store_iter_is_valid"
35768               version="2.2">
35769         <doc xml:whitespace="preserve">&lt;warning&gt;This function is slow. Only use it for debugging and/or testing
35770 purposes.&lt;/warning&gt;
35771 Checks if the given iter is a valid iter for this #GtkListStore.</doc>
35772         <return-value transfer-ownership="none">
35773           <doc xml:whitespace="preserve">%TRUE if the iter is valid, %FALSE if the iter is invalid.</doc>
35774           <type name="boolean" c:type="gboolean"/>
35775         </return-value>
35776         <parameters>
35777           <parameter name="iter" transfer-ownership="none">
35778             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
35779             <type name="TreeIter" c:type="GtkTreeIter*"/>
35780           </parameter>
35781         </parameters>
35782       </method>
35783       <method name="reorder"
35784               c:identifier="gtk_list_store_reorder"
35785               version="2.2">
35786         <doc xml:whitespace="preserve">Reorders @store to follow the order indicated by @new_order. Note that
35787 this function only works with unsorted stores.</doc>
35788         <return-value transfer-ownership="none">
35789           <type name="none" c:type="void"/>
35790         </return-value>
35791         <parameters>
35792           <parameter name="new_order"
35793                      direction="out"
35794                      caller-allocates="0"
35795                      transfer-ownership="full">
35796             <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>
35797             <type name="int" c:type="gint*"/>
35798           </parameter>
35799         </parameters>
35800       </method>
35801       <method name="swap" c:identifier="gtk_list_store_swap" version="2.2">
35802         <doc xml:whitespace="preserve">Swaps @a and @b in @store. Note that this function only works with
35803 unsorted stores.</doc>
35804         <return-value transfer-ownership="none">
35805           <type name="none" c:type="void"/>
35806         </return-value>
35807         <parameters>
35808           <parameter name="a" transfer-ownership="none">
35809             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
35810             <type name="TreeIter" c:type="GtkTreeIter*"/>
35811           </parameter>
35812           <parameter name="b" transfer-ownership="none">
35813             <doc xml:whitespace="preserve">Another #GtkTreeIter.</doc>
35814             <type name="TreeIter" c:type="GtkTreeIter*"/>
35815           </parameter>
35816         </parameters>
35817       </method>
35818       <method name="move_after"
35819               c:identifier="gtk_list_store_move_after"
35820               version="2.2">
35821         <doc xml:whitespace="preserve">Moves @iter in @store to the position after @position. Note that this
35822 function only works with unsorted stores. If @position is %NULL, @iter
35823 will be moved to the start of the list.</doc>
35824         <return-value transfer-ownership="none">
35825           <type name="none" c:type="void"/>
35826         </return-value>
35827         <parameters>
35828           <parameter name="iter" transfer-ownership="none">
35829             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
35830             <type name="TreeIter" c:type="GtkTreeIter*"/>
35831           </parameter>
35832           <parameter name="position" transfer-ownership="none" allow-none="1">
35833             <doc xml:whitespace="preserve">A #GtkTreeIter or %NULL.</doc>
35834             <type name="TreeIter" c:type="GtkTreeIter*"/>
35835           </parameter>
35836         </parameters>
35837       </method>
35838       <method name="move_before"
35839               c:identifier="gtk_list_store_move_before"
35840               version="2.2">
35841         <doc xml:whitespace="preserve">Moves @iter in @store to the position before @position. Note that this
35842 function only works with unsorted stores. If @position is %NULL, @iter
35843 will be moved to the end of the list.</doc>
35844         <return-value transfer-ownership="none">
35845           <type name="none" c:type="void"/>
35846         </return-value>
35847         <parameters>
35848           <parameter name="iter" transfer-ownership="none">
35849             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
35850             <type name="TreeIter" c:type="GtkTreeIter*"/>
35851           </parameter>
35852           <parameter name="position" transfer-ownership="none" allow-none="1">
35853             <doc xml:whitespace="preserve">A #GtkTreeIter, or %NULL.</doc>
35854             <type name="TreeIter" c:type="GtkTreeIter*"/>
35855           </parameter>
35856         </parameters>
35857       </method>
35858       <field name="parent">
35859         <type name="GObject.Object" c:type="GObject"/>
35860       </field>
35861       <field name="stamp">
35862         <type name="int" c:type="gint"/>
35863       </field>
35864       <field name="seq">
35865         <type name="any" c:type="gpointer"/>
35866       </field>
35867       <field name="_gtk_reserved1">
35868         <type name="any" c:type="gpointer"/>
35869       </field>
35870       <field name="sort_list">
35871         <type name="GLib.List" c:type="GList*">
35872           <type name="any" c:type="gpointer"/>
35873         </type>
35874       </field>
35875       <field name="n_columns">
35876         <type name="int" c:type="gint"/>
35877       </field>
35878       <field name="sort_column_id">
35879         <type name="int" c:type="gint"/>
35880       </field>
35881       <field name="order">
35882         <type name="SortType" c:type="GtkSortType"/>
35883       </field>
35884       <field name="column_headers">
35885         <type name="any" c:type="GType*"/>
35886       </field>
35887       <field name="length">
35888         <type name="int" c:type="gint"/>
35889       </field>
35890       <field name="default_sort_func">
35891         <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
35892       </field>
35893       <field name="default_sort_data">
35894         <type name="any" c:type="gpointer"/>
35895       </field>
35896       <field name="default_sort_destroy">
35897         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
35898       </field>
35899       <field name="columns_dirty" bits="1">
35900         <type name="uint" c:type="guint"/>
35901       </field>
35902     </class>
35903     <record name="ListStoreClass"
35904             c:type="GtkListStoreClass"
35905             glib:is-gtype-struct-for="ListStore">
35906       <field name="parent_class">
35907         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
35908       </field>
35909       <field name="gtk_reserved1">
35910         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
35911           <return-value transfer-ownership="none">
35912             <type name="none" c:type="void"/>
35913           </return-value>
35914         </callback>
35915       </field>
35916       <field name="gtk_reserved2">
35917         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
35918           <return-value transfer-ownership="none">
35919             <type name="none" c:type="void"/>
35920           </return-value>
35921         </callback>
35922       </field>
35923       <field name="gtk_reserved3">
35924         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
35925           <return-value transfer-ownership="none">
35926             <type name="none" c:type="void"/>
35927           </return-value>
35928         </callback>
35929       </field>
35930       <field name="gtk_reserved4">
35931         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
35932           <return-value transfer-ownership="none">
35933             <type name="none" c:type="void"/>
35934           </return-value>
35935         </callback>
35936       </field>
35937     </record>
35938     <constant name="MAJOR_VERSION" value="2">
35939       <type name="int"/>
35940     </constant>
35941     <constant name="MAX_COMPOSE_LEN" value="7">
35942       <type name="int"/>
35943     </constant>
35944     <constant name="MICRO_VERSION" value="1">
35945       <type name="int"/>
35946     </constant>
35947     <constant name="MINOR_VERSION" value="21">
35948       <type name="int"/>
35949     </constant>
35950     <enumeration name="MatchType"
35951                  glib:type-name="GtkMatchType"
35952                  glib:get-type="gtk_match_type_get_type"
35953                  c:type="GtkMatchType">
35954       <member name="all"
35955               value="0"
35956               c:identifier="GTK_MATCH_ALL"
35957               glib:nick="all"/>
35958       <member name="all_tail"
35959               value="1"
35960               c:identifier="GTK_MATCH_ALL_TAIL"
35961               glib:nick="all-tail"/>
35962       <member name="head"
35963               value="2"
35964               c:identifier="GTK_MATCH_HEAD"
35965               glib:nick="head"/>
35966       <member name="tail"
35967               value="3"
35968               c:identifier="GTK_MATCH_TAIL"
35969               glib:nick="tail"/>
35970       <member name="exact"
35971               value="4"
35972               c:identifier="GTK_MATCH_EXACT"
35973               glib:nick="exact"/>
35974       <member name="last"
35975               value="5"
35976               c:identifier="GTK_MATCH_LAST"
35977               glib:nick="last"/>
35978     </enumeration>
35979     <class name="Menu"
35980            c:type="GtkMenu"
35981            parent="MenuShell"
35982            glib:type-name="GtkMenu"
35983            glib:get-type="gtk_menu_get_type"
35984            glib:type-struct="MenuClass">
35985       <implements name="Atk.ImplementorIface"/>
35986       <implements name="Buildable"/>
35987       <constructor name="new" c:identifier="gtk_menu_new">
35988         <return-value transfer-ownership="full">
35989           <type name="Menu" c:type="GtkWidget*"/>
35990         </return-value>
35991       </constructor>
35992       <function name="get_for_attach_widget"
35993                 c:identifier="gtk_menu_get_for_attach_widget"
35994                 version="2.6">
35995         <doc xml:whitespace="preserve">Returns a list of the menus which are attached to this widget.
35996 This list is owned by GTK+ and must not be modified.</doc>
35997         <return-value transfer-ownership="none">
35998           <doc xml:whitespace="preserve">the list of menus attached to his widget.</doc>
35999           <type name="GLib.List" c:type="GList*">
36000             <type name="Widget"/>
36001           </type>
36002         </return-value>
36003         <parameters>
36004           <parameter name="widget" transfer-ownership="none">
36005             <doc xml:whitespace="preserve">a #GtkWidget</doc>
36006             <type name="Widget" c:type="GtkWidget*"/>
36007           </parameter>
36008         </parameters>
36009       </function>
36010       <method name="popup" c:identifier="gtk_menu_popup">
36011         <doc xml:whitespace="preserve">Displays a menu and makes it available for selection.  Applications can use
36012 this function to display context-sensitive menus, and will typically supply
36013 %NULL for the @parent_menu_shell, @parent_menu_item, @func and @data 
36014 parameters. The default menu positioning function will position the menu
36015 at the current mouse cursor position.
36016 The @button parameter should be the mouse button pressed to initiate
36017 the menu popup. If the menu popup was initiated by something other than
36018 a mouse button press, such as a mouse button release or a keypress,
36019 The @activate_time parameter is used to conflict-resolve initiation of
36020 concurrent requests for mouse/keyboard grab requests. To function
36021 properly, this needs to be the time stamp of the user event (such as
36022 a mouse click or key press) that caused the initiation of the popup.
36023 Only if no such event is available, gtk_get_current_event_time() can
36024 be used instead.</doc>
36025         <return-value transfer-ownership="none">
36026           <type name="none" c:type="void"/>
36027         </return-value>
36028         <parameters>
36029           <parameter name="parent_menu_shell"
36030                      transfer-ownership="none"
36031                      allow-none="1">
36032             <doc xml:whitespace="preserve">the menu shell containing the triggering menu item, or %NULL</doc>
36033             <type name="Widget" c:type="GtkWidget*"/>
36034           </parameter>
36035           <parameter name="parent_menu_item"
36036                      transfer-ownership="none"
36037                      allow-none="1">
36038             <doc xml:whitespace="preserve">the menu item whose activation triggered the popup, or %NULL</doc>
36039             <type name="Widget" c:type="GtkWidget*"/>
36040           </parameter>
36041           <parameter name="func"
36042                      transfer-ownership="none"
36043                      allow-none="1"
36044                      scope="call"
36045                      closure="4">
36046             <doc xml:whitespace="preserve">a user supplied function used to position the menu, or %NULL</doc>
36047             <type name="MenuPositionFunc" c:type="GtkMenuPositionFunc"/>
36048           </parameter>
36049           <parameter name="data" transfer-ownership="none" allow-none="1">
36050             <doc xml:whitespace="preserve">user supplied data to be passed to @func.</doc>
36051             <type name="any" c:type="gpointer"/>
36052           </parameter>
36053           <parameter name="button" transfer-ownership="none">
36054             <doc xml:whitespace="preserve">the mouse button which was pressed to initiate the event.</doc>
36055             <type name="uint" c:type="guint"/>
36056           </parameter>
36057           <parameter name="activate_time" transfer-ownership="none">
36058             <doc xml:whitespace="preserve">the time at which the activation event occurred.</doc>
36059             <type name="uint32" c:type="guint32"/>
36060           </parameter>
36061         </parameters>
36062       </method>
36063       <method name="reposition" c:identifier="gtk_menu_reposition">
36064         <return-value transfer-ownership="none">
36065           <type name="none" c:type="void"/>
36066         </return-value>
36067       </method>
36068       <method name="popdown" c:identifier="gtk_menu_popdown">
36069         <return-value transfer-ownership="none">
36070           <type name="none" c:type="void"/>
36071         </return-value>
36072       </method>
36073       <method name="get_active" c:identifier="gtk_menu_get_active">
36074         <return-value transfer-ownership="full">
36075           <type name="Widget" c:type="GtkWidget*"/>
36076         </return-value>
36077       </method>
36078       <method name="set_active" c:identifier="gtk_menu_set_active">
36079         <return-value transfer-ownership="none">
36080           <type name="none" c:type="void"/>
36081         </return-value>
36082         <parameters>
36083           <parameter name="index_" transfer-ownership="none">
36084             <type name="uint" c:type="guint"/>
36085           </parameter>
36086         </parameters>
36087       </method>
36088       <method name="set_accel_group" c:identifier="gtk_menu_set_accel_group">
36089         <return-value transfer-ownership="none">
36090           <type name="none" c:type="void"/>
36091         </return-value>
36092         <parameters>
36093           <parameter name="accel_group"
36094                      transfer-ownership="none"
36095                      allow-none="1">
36096             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
36097           </parameter>
36098         </parameters>
36099       </method>
36100       <method name="get_accel_group" c:identifier="gtk_menu_get_accel_group">
36101         <return-value transfer-ownership="full">
36102           <type name="AccelGroup" c:type="GtkAccelGroup*"/>
36103         </return-value>
36104       </method>
36105       <method name="set_accel_path" c:identifier="gtk_menu_set_accel_path">
36106         <return-value transfer-ownership="none">
36107           <type name="none" c:type="void"/>
36108         </return-value>
36109         <parameters>
36110           <parameter name="accel_path" transfer-ownership="none">
36111             <type name="utf8" c:type="gchar*"/>
36112           </parameter>
36113         </parameters>
36114       </method>
36115       <method name="get_accel_path" c:identifier="gtk_menu_get_accel_path">
36116         <return-value transfer-ownership="none">
36117           <type name="utf8" c:type="gchar*"/>
36118         </return-value>
36119       </method>
36120       <method name="attach_to_widget" c:identifier="gtk_menu_attach_to_widget">
36121         <return-value transfer-ownership="none">
36122           <type name="none" c:type="void"/>
36123         </return-value>
36124         <parameters>
36125           <parameter name="attach_widget" transfer-ownership="none">
36126             <type name="Widget" c:type="GtkWidget*"/>
36127           </parameter>
36128           <parameter name="detacher" transfer-ownership="none" scope="call">
36129             <type name="MenuDetachFunc" c:type="GtkMenuDetachFunc"/>
36130           </parameter>
36131         </parameters>
36132       </method>
36133       <method name="detach" c:identifier="gtk_menu_detach">
36134         <return-value transfer-ownership="none">
36135           <type name="none" c:type="void"/>
36136         </return-value>
36137       </method>
36138       <method name="get_attach_widget"
36139               c:identifier="gtk_menu_get_attach_widget">
36140         <return-value transfer-ownership="full">
36141           <type name="Widget" c:type="GtkWidget*"/>
36142         </return-value>
36143       </method>
36144       <method name="set_tearoff_state"
36145               c:identifier="gtk_menu_set_tearoff_state">
36146         <return-value transfer-ownership="none">
36147           <type name="none" c:type="void"/>
36148         </return-value>
36149         <parameters>
36150           <parameter name="torn_off" transfer-ownership="none">
36151             <type name="boolean" c:type="gboolean"/>
36152           </parameter>
36153         </parameters>
36154       </method>
36155       <method name="get_tearoff_state"
36156               c:identifier="gtk_menu_get_tearoff_state">
36157         <doc xml:whitespace="preserve">Returns whether the menu is torn off. See
36158 gtk_menu_set_tearoff_state ().</doc>
36159         <return-value transfer-ownership="none">
36160           <doc xml:whitespace="preserve">%TRUE if the menu is currently torn off.</doc>
36161           <type name="boolean" c:type="gboolean"/>
36162         </return-value>
36163       </method>
36164       <method name="set_title" c:identifier="gtk_menu_set_title">
36165         <doc xml:whitespace="preserve">Sets the title string for the menu.  The title is displayed when the menu
36166 is shown as a tearoff menu.  If @title is %NULL, the menu will see if it is
36167 attached to a parent menu item, and if so it will try to use the same text as
36168 that menu item's label.</doc>
36169         <return-value transfer-ownership="none">
36170           <type name="none" c:type="void"/>
36171         </return-value>
36172         <parameters>
36173           <parameter name="title" transfer-ownership="none">
36174             <doc xml:whitespace="preserve">a string containing the title for the menu.</doc>
36175             <type name="utf8" c:type="gchar*"/>
36176           </parameter>
36177         </parameters>
36178       </method>
36179       <method name="get_title" c:identifier="gtk_menu_get_title">
36180         <doc xml:whitespace="preserve">Returns the title of the menu. See gtk_menu_set_title().
36181 title set on it. This string is owned by the widget and should
36182 not be modified or freed.</doc>
36183         <return-value transfer-ownership="none">
36184           <doc xml:whitespace="preserve">the title of the menu, or %NULL if the menu has no</doc>
36185           <type name="utf8" c:type="gchar*"/>
36186         </return-value>
36187       </method>
36188       <method name="reorder_child" c:identifier="gtk_menu_reorder_child">
36189         <return-value transfer-ownership="none">
36190           <type name="none" c:type="void"/>
36191         </return-value>
36192         <parameters>
36193           <parameter name="child" transfer-ownership="none">
36194             <type name="Widget" c:type="GtkWidget*"/>
36195           </parameter>
36196           <parameter name="position" transfer-ownership="none">
36197             <type name="int" c:type="gint"/>
36198           </parameter>
36199         </parameters>
36200       </method>
36201       <method name="set_screen"
36202               c:identifier="gtk_menu_set_screen"
36203               version="2.2">
36204         <doc xml:whitespace="preserve">Sets the #GdkScreen on which the menu will be displayed.</doc>
36205         <return-value transfer-ownership="none">
36206           <type name="none" c:type="void"/>
36207         </return-value>
36208         <parameters>
36209           <parameter name="screen" transfer-ownership="none" allow-none="1">
36210             <doc xml:whitespace="preserve">a #GdkScreen, or %NULL if the screen should be determined by the widget the menu is attached to.</doc>
36211             <type name="Gdk.Screen" c:type="GdkScreen*"/>
36212           </parameter>
36213         </parameters>
36214       </method>
36215       <method name="attach" c:identifier="gtk_menu_attach" version="2.4">
36216         <doc xml:whitespace="preserve">Adds a new #GtkMenuItem to a (table) menu. The number of 'cells' that
36217 an item will occupy is specified by @left_attach, @right_attach,
36218 rightmost, uppermost and lower column and row numbers of the table.
36219 (Columns and rows are indexed from zero).
36220 Note that this function is not related to gtk_menu_detach().</doc>
36221         <return-value transfer-ownership="none">
36222           <type name="none" c:type="void"/>
36223         </return-value>
36224         <parameters>
36225           <parameter name="child" transfer-ownership="none">
36226             <doc xml:whitespace="preserve">a #GtkMenuItem.</doc>
36227             <type name="Widget" c:type="GtkWidget*"/>
36228           </parameter>
36229           <parameter name="left_attach" transfer-ownership="none">
36230             <doc xml:whitespace="preserve">The column number to attach the left side of the item to.</doc>
36231             <type name="uint" c:type="guint"/>
36232           </parameter>
36233           <parameter name="right_attach" transfer-ownership="none">
36234             <doc xml:whitespace="preserve">The column number to attach the right side of the item to.</doc>
36235             <type name="uint" c:type="guint"/>
36236           </parameter>
36237           <parameter name="top_attach" transfer-ownership="none">
36238             <doc xml:whitespace="preserve">The row number to attach the top of the item to.</doc>
36239             <type name="uint" c:type="guint"/>
36240           </parameter>
36241           <parameter name="bottom_attach" transfer-ownership="none">
36242             <doc xml:whitespace="preserve">The row number to attach the bottom of the item to.</doc>
36243             <type name="uint" c:type="guint"/>
36244           </parameter>
36245         </parameters>
36246       </method>
36247       <method name="set_monitor"
36248               c:identifier="gtk_menu_set_monitor"
36249               version="2.4">
36250         <doc xml:whitespace="preserve">Informs GTK+ on which monitor a menu should be popped up. 
36251 See gdk_screen_get_monitor_geometry().
36252 This function should be called from a #GtkMenuPositionFunc if the
36253 menu should not appear on the same monitor as the pointer. This 
36254 information can't be reliably inferred from the coordinates returned
36255 by a #GtkMenuPositionFunc, since, for very long menus, these coordinates 
36256 may extend beyond the monitor boundaries or even the screen boundaries.</doc>
36257         <return-value transfer-ownership="none">
36258           <type name="none" c:type="void"/>
36259         </return-value>
36260         <parameters>
36261           <parameter name="monitor_num" transfer-ownership="none">
36262             <doc xml:whitespace="preserve">the number of the monitor on which the menu should be popped up</doc>
36263             <type name="int" c:type="gint"/>
36264           </parameter>
36265         </parameters>
36266       </method>
36267       <method name="get_monitor"
36268               c:identifier="gtk_menu_get_monitor"
36269               version="2.14">
36270         <doc xml:whitespace="preserve">Retrieves the number of the monitor on which to show the menu.
36271 be popped up or -1, if no monitor has been set</doc>
36272         <return-value transfer-ownership="none">
36273           <doc xml:whitespace="preserve">the number of the monitor on which the menu should</doc>
36274           <type name="int" c:type="gint"/>
36275         </return-value>
36276       </method>
36277       <method name="set_reserve_toggle_size"
36278               c:identifier="gtk_menu_set_reserve_toggle_size"
36279               version="2.18">
36280         <doc xml:whitespace="preserve">Sets whether the menu should reserve space for drawing toggles 
36281 or icons, regardless of their actual presence.</doc>
36282         <return-value transfer-ownership="none">
36283           <type name="none" c:type="void"/>
36284         </return-value>
36285         <parameters>
36286           <parameter name="reserve_toggle_size" transfer-ownership="none">
36287             <doc xml:whitespace="preserve">whether to reserve size for toggles</doc>
36288             <type name="boolean" c:type="gboolean"/>
36289           </parameter>
36290         </parameters>
36291       </method>
36292       <method name="get_reserve_toggle_size"
36293               c:identifier="gtk_menu_get_reserve_toggle_size"
36294               version="2.18">
36295         <doc xml:whitespace="preserve">Returns whether the menu reserves space for toggles and
36296 icons, regardless of their actual presence.</doc>
36297         <return-value transfer-ownership="none">
36298           <doc xml:whitespace="preserve">Whether the menu reserves toggle space</doc>
36299           <type name="boolean" c:type="gboolean"/>
36300         </return-value>
36301       </method>
36302       <property name="accel-group"
36303                 version="2.14"
36304                 writable="1"
36305                 transfer-ownership="none">
36306         <doc xml:whitespace="preserve">The accel group holding accelerators for the menu.</doc>
36307         <type name="AccelGroup" c:type="GtkAccelGroup"/>
36308       </property>
36309       <property name="accel-path"
36310                 version="2.14"
36311                 writable="1"
36312                 transfer-ownership="none">
36313         <doc xml:whitespace="preserve">An accel path used to conveniently construct accel paths of child items.</doc>
36314         <type name="utf8" c:type="gchararray"/>
36315       </property>
36316       <property name="active"
36317                 version="2.14"
36318                 writable="1"
36319                 transfer-ownership="none">
36320         <doc xml:whitespace="preserve">The index of the currently selected menu item, or -1 if no
36321 menu item is selected.</doc>
36322         <type name="int" c:type="gint"/>
36323       </property>
36324       <property name="attach-widget"
36325                 version="2.14"
36326                 writable="1"
36327                 transfer-ownership="none">
36328         <doc xml:whitespace="preserve">The widget the menu is attached to. Setting this property attaches
36329 the menu without a #GtkMenuDetachFunc. If you need to use a detacher,
36330 use gtk_menu_attach_to_widget() directly.</doc>
36331         <type name="Widget" c:type="GtkWidget"/>
36332       </property>
36333       <property name="monitor"
36334                 version="2.14"
36335                 writable="1"
36336                 transfer-ownership="none">
36337         <doc xml:whitespace="preserve">The monitor the menu will be popped up on.</doc>
36338         <type name="int" c:type="gint"/>
36339       </property>
36340       <property name="reserve-toggle-size"
36341                 version="2.18"
36342                 writable="1"
36343                 transfer-ownership="none">
36344         <doc xml:whitespace="preserve">A boolean that indicates whether the menu reserves space for
36345 toggles and icons, regardless of their actual presence.
36346 This property should only be changed from its default value
36347 for special-purposes such as tabular menus. Regular menus that
36348 are connected to a menu bar or context menus should reserve
36349 toggle space for consistency.</doc>
36350         <type name="boolean" c:type="gboolean"/>
36351       </property>
36352       <property name="tearoff-state"
36353                 version="2.6"
36354                 writable="1"
36355                 transfer-ownership="none">
36356         <doc xml:whitespace="preserve">A boolean that indicates whether the menu is torn-off.</doc>
36357         <type name="boolean" c:type="gboolean"/>
36358       </property>
36359       <property name="tearoff-title" writable="1" transfer-ownership="none">
36360         <type name="utf8" c:type="gchararray"/>
36361       </property>
36362       <field name="menu_shell">
36363         <type name="MenuShell" c:type="GtkMenuShell"/>
36364       </field>
36365       <field name="parent_menu_item">
36366         <type name="Widget" c:type="GtkWidget*"/>
36367       </field>
36368       <field name="old_active_menu_item">
36369         <type name="Widget" c:type="GtkWidget*"/>
36370       </field>
36371       <field name="accel_group">
36372         <type name="AccelGroup" c:type="GtkAccelGroup*"/>
36373       </field>
36374       <field name="accel_path">
36375         <type name="utf8" c:type="gchar*"/>
36376       </field>
36377       <field name="position_func">
36378         <type name="MenuPositionFunc" c:type="GtkMenuPositionFunc"/>
36379       </field>
36380       <field name="position_func_data">
36381         <type name="any" c:type="gpointer"/>
36382       </field>
36383       <field name="toggle_size">
36384         <type name="uint" c:type="guint"/>
36385       </field>
36386       <field name="toplevel">
36387         <type name="Widget" c:type="GtkWidget*"/>
36388       </field>
36389       <field name="tearoff_window">
36390         <type name="Widget" c:type="GtkWidget*"/>
36391       </field>
36392       <field name="tearoff_hbox">
36393         <type name="Widget" c:type="GtkWidget*"/>
36394       </field>
36395       <field name="tearoff_scrollbar">
36396         <type name="Widget" c:type="GtkWidget*"/>
36397       </field>
36398       <field name="tearoff_adjustment">
36399         <type name="Adjustment" c:type="GtkAdjustment*"/>
36400       </field>
36401       <field name="view_window">
36402         <type name="Gdk.Window" c:type="GdkWindow*"/>
36403       </field>
36404       <field name="bin_window">
36405         <type name="Gdk.Window" c:type="GdkWindow*"/>
36406       </field>
36407       <field name="scroll_offset">
36408         <type name="int" c:type="gint"/>
36409       </field>
36410       <field name="saved_scroll_offset">
36411         <type name="int" c:type="gint"/>
36412       </field>
36413       <field name="scroll_step">
36414         <type name="int" c:type="gint"/>
36415       </field>
36416       <field name="timeout_id">
36417         <type name="uint" c:type="guint"/>
36418       </field>
36419       <field name="navigation_region">
36420         <type name="Gdk.Region" c:type="GdkRegion*"/>
36421       </field>
36422       <field name="navigation_timeout">
36423         <type name="uint" c:type="guint"/>
36424       </field>
36425       <field name="needs_destruction_ref_count" bits="1">
36426         <type name="uint" c:type="guint"/>
36427       </field>
36428       <field name="torn_off" bits="1">
36429         <type name="uint" c:type="guint"/>
36430       </field>
36431       <field name="tearoff_active" bits="1">
36432         <type name="uint" c:type="guint"/>
36433       </field>
36434       <field name="scroll_fast" bits="1">
36435         <type name="uint" c:type="guint"/>
36436       </field>
36437       <field name="upper_arrow_visible" bits="1">
36438         <type name="uint" c:type="guint"/>
36439       </field>
36440       <field name="lower_arrow_visible" bits="1">
36441         <type name="uint" c:type="guint"/>
36442       </field>
36443       <field name="upper_arrow_prelight" bits="1">
36444         <type name="uint" c:type="guint"/>
36445       </field>
36446       <field name="lower_arrow_prelight" bits="1">
36447         <type name="uint" c:type="guint"/>
36448       </field>
36449       <glib:signal name="move-scroll">
36450         <return-value transfer-ownership="full">
36451           <type name="none" c:type="void"/>
36452         </return-value>
36453         <parameters>
36454           <parameter name="object" transfer-ownership="none">
36455             <type name="ScrollType" c:type="GtkScrollType"/>
36456           </parameter>
36457         </parameters>
36458       </glib:signal>
36459     </class>
36460     <class name="MenuBar"
36461            c:type="GtkMenuBar"
36462            parent="MenuShell"
36463            glib:type-name="GtkMenuBar"
36464            glib:get-type="gtk_menu_bar_get_type"
36465            glib:type-struct="MenuBarClass">
36466       <implements name="Atk.ImplementorIface"/>
36467       <implements name="Buildable"/>
36468       <constructor name="new" c:identifier="gtk_menu_bar_new">
36469         <return-value transfer-ownership="full">
36470           <type name="MenuBar" c:type="GtkWidget*"/>
36471         </return-value>
36472       </constructor>
36473       <method name="get_pack_direction"
36474               c:identifier="gtk_menu_bar_get_pack_direction"
36475               version="2.8">
36476         <doc xml:whitespace="preserve">Retrieves the current pack direction of the menubar. 
36477 See gtk_menu_bar_set_pack_direction().</doc>
36478         <return-value transfer-ownership="full">
36479           <doc xml:whitespace="preserve">the pack direction</doc>
36480           <type name="PackDirection" c:type="GtkPackDirection"/>
36481         </return-value>
36482       </method>
36483       <method name="set_pack_direction"
36484               c:identifier="gtk_menu_bar_set_pack_direction"
36485               version="2.8">
36486         <doc xml:whitespace="preserve">Sets how items should be packed inside a menubar.</doc>
36487         <return-value transfer-ownership="none">
36488           <type name="none" c:type="void"/>
36489         </return-value>
36490         <parameters>
36491           <parameter name="pack_dir" transfer-ownership="none">
36492             <doc xml:whitespace="preserve">a new #GtkPackDirection</doc>
36493             <type name="PackDirection" c:type="GtkPackDirection"/>
36494           </parameter>
36495         </parameters>
36496       </method>
36497       <method name="get_child_pack_direction"
36498               c:identifier="gtk_menu_bar_get_child_pack_direction"
36499               version="2.8">
36500         <doc xml:whitespace="preserve">Retrieves the current child pack direction of the menubar.
36501 See gtk_menu_bar_set_child_pack_direction().</doc>
36502         <return-value transfer-ownership="full">
36503           <doc xml:whitespace="preserve">the child pack direction</doc>
36504           <type name="PackDirection" c:type="GtkPackDirection"/>
36505         </return-value>
36506       </method>
36507       <method name="set_child_pack_direction"
36508               c:identifier="gtk_menu_bar_set_child_pack_direction"
36509               version="2.8">
36510         <doc xml:whitespace="preserve">Sets how widgets should be packed inside the children of a menubar.</doc>
36511         <return-value transfer-ownership="none">
36512           <type name="none" c:type="void"/>
36513         </return-value>
36514         <parameters>
36515           <parameter name="child_pack_dir" transfer-ownership="none">
36516             <doc xml:whitespace="preserve">a new #GtkPackDirection</doc>
36517             <type name="PackDirection" c:type="GtkPackDirection"/>
36518           </parameter>
36519         </parameters>
36520       </method>
36521       <property name="child-pack-direction"
36522                 version="2.8"
36523                 writable="1"
36524                 transfer-ownership="none">
36525         <doc xml:whitespace="preserve">The child pack direction of the menubar. It determines how
36526 the widgets contained in child menuitems are arranged.</doc>
36527         <type name="PackDirection" c:type="GtkPackDirection"/>
36528       </property>
36529       <property name="pack-direction"
36530                 version="2.8"
36531                 writable="1"
36532                 transfer-ownership="none">
36533         <doc xml:whitespace="preserve">The pack direction of the menubar. It determines how
36534 menuitems are arranged in the menubar.</doc>
36535         <type name="PackDirection" c:type="GtkPackDirection"/>
36536       </property>
36537       <field name="menu_shell">
36538         <type name="MenuShell" c:type="GtkMenuShell"/>
36539       </field>
36540     </class>
36541     <record name="MenuBarClass"
36542             c:type="GtkMenuBarClass"
36543             glib:is-gtype-struct-for="MenuBar">
36544       <field name="parent_class">
36545         <type name="MenuShellClass" c:type="GtkMenuShellClass"/>
36546       </field>
36547       <field name="gtk_reserved1">
36548         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
36549           <return-value transfer-ownership="none">
36550             <type name="none" c:type="void"/>
36551           </return-value>
36552         </callback>
36553       </field>
36554       <field name="gtk_reserved2">
36555         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
36556           <return-value transfer-ownership="none">
36557             <type name="none" c:type="void"/>
36558           </return-value>
36559         </callback>
36560       </field>
36561       <field name="gtk_reserved3">
36562         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
36563           <return-value transfer-ownership="none">
36564             <type name="none" c:type="void"/>
36565           </return-value>
36566         </callback>
36567       </field>
36568       <field name="gtk_reserved4">
36569         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
36570           <return-value transfer-ownership="none">
36571             <type name="none" c:type="void"/>
36572           </return-value>
36573         </callback>
36574       </field>
36575     </record>
36576     <callback name="MenuCallback" c:type="GtkMenuCallback">
36577       <return-value transfer-ownership="none">
36578         <type name="none" c:type="void"/>
36579       </return-value>
36580       <parameters>
36581         <parameter name="widget" transfer-ownership="none">
36582           <type name="Widget" c:type="GtkWidget*"/>
36583         </parameter>
36584         <parameter name="user_data" transfer-ownership="none" closure="1">
36585           <type name="any" c:type="gpointer"/>
36586         </parameter>
36587       </parameters>
36588     </callback>
36589     <record name="MenuClass"
36590             c:type="GtkMenuClass"
36591             glib:is-gtype-struct-for="Menu">
36592       <field name="parent_class">
36593         <type name="MenuShellClass" c:type="GtkMenuShellClass"/>
36594       </field>
36595       <field name="gtk_reserved1">
36596         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
36597           <return-value transfer-ownership="none">
36598             <type name="none" c:type="void"/>
36599           </return-value>
36600         </callback>
36601       </field>
36602       <field name="gtk_reserved2">
36603         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
36604           <return-value transfer-ownership="none">
36605             <type name="none" c:type="void"/>
36606           </return-value>
36607         </callback>
36608       </field>
36609       <field name="gtk_reserved3">
36610         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
36611           <return-value transfer-ownership="none">
36612             <type name="none" c:type="void"/>
36613           </return-value>
36614         </callback>
36615       </field>
36616       <field name="gtk_reserved4">
36617         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
36618           <return-value transfer-ownership="none">
36619             <type name="none" c:type="void"/>
36620           </return-value>
36621         </callback>
36622       </field>
36623     </record>
36624     <callback name="MenuDetachFunc" c:type="GtkMenuDetachFunc">
36625       <return-value transfer-ownership="none">
36626         <type name="none" c:type="void"/>
36627       </return-value>
36628       <parameters>
36629         <parameter name="attach_widget" transfer-ownership="none">
36630           <type name="Widget" c:type="GtkWidget*"/>
36631         </parameter>
36632         <parameter name="menu" transfer-ownership="none">
36633           <type name="Menu" c:type="GtkMenu*"/>
36634         </parameter>
36635       </parameters>
36636     </callback>
36637     <enumeration name="MenuDirectionType"
36638                  glib:type-name="GtkMenuDirectionType"
36639                  glib:get-type="gtk_menu_direction_type_get_type"
36640                  c:type="GtkMenuDirectionType">
36641       <member name="parent"
36642               value="0"
36643               c:identifier="GTK_MENU_DIR_PARENT"
36644               glib:nick="parent"/>
36645       <member name="child"
36646               value="1"
36647               c:identifier="GTK_MENU_DIR_CHILD"
36648               glib:nick="child"/>
36649       <member name="next"
36650               value="2"
36651               c:identifier="GTK_MENU_DIR_NEXT"
36652               glib:nick="next"/>
36653       <member name="prev"
36654               value="3"
36655               c:identifier="GTK_MENU_DIR_PREV"
36656               glib:nick="prev"/>
36657     </enumeration>
36658     <record name="MenuEntry" c:type="GtkMenuEntry">
36659       <field name="path" writable="1">
36660         <type name="utf8" c:type="gchar*"/>
36661       </field>
36662       <field name="accelerator" writable="1">
36663         <type name="utf8" c:type="gchar*"/>
36664       </field>
36665       <field name="callback" writable="1">
36666         <type name="MenuCallback" c:type="GtkMenuCallback"/>
36667       </field>
36668       <field name="callback_data" writable="1">
36669         <type name="any" c:type="gpointer"/>
36670       </field>
36671       <field name="widget" writable="1">
36672         <type name="Widget" c:type="GtkWidget*"/>
36673       </field>
36674     </record>
36675     <class name="MenuItem"
36676            c:type="GtkMenuItem"
36677            parent="Item"
36678            glib:type-name="GtkMenuItem"
36679            glib:get-type="gtk_menu_item_get_type"
36680            glib:type-struct="MenuItemClass">
36681       <implements name="Activatable"/>
36682       <implements name="Atk.ImplementorIface"/>
36683       <implements name="Buildable"/>
36684       <constructor name="new" c:identifier="gtk_menu_item_new">
36685         <return-value transfer-ownership="full">
36686           <type name="MenuItem" c:type="GtkWidget*"/>
36687         </return-value>
36688       </constructor>
36689       <constructor name="new_with_label"
36690                    c:identifier="gtk_menu_item_new_with_label">
36691         <return-value transfer-ownership="full">
36692           <type name="MenuItem" c:type="GtkWidget*"/>
36693         </return-value>
36694         <parameters>
36695           <parameter name="label" transfer-ownership="none">
36696             <type name="utf8" c:type="gchar*"/>
36697           </parameter>
36698         </parameters>
36699       </constructor>
36700       <constructor name="new_with_mnemonic"
36701                    c:identifier="gtk_menu_item_new_with_mnemonic">
36702         <doc xml:whitespace="preserve">Creates a new #GtkMenuItem containing a label. The label
36703 will be created using gtk_label_new_with_mnemonic(), so underscores
36704 in @label indicate the mnemonic for the menu item.</doc>
36705         <return-value transfer-ownership="full">
36706           <doc xml:whitespace="preserve">a new #GtkMenuItem</doc>
36707           <type name="MenuItem" c:type="GtkWidget*"/>
36708         </return-value>
36709         <parameters>
36710           <parameter name="label" transfer-ownership="none">
36711             <doc xml:whitespace="preserve">The text of the button, with an underscore in front of the mnemonic character</doc>
36712             <type name="utf8" c:type="gchar*"/>
36713           </parameter>
36714         </parameters>
36715       </constructor>
36716       <virtual-method name="set_label" invoker="set_label" version="2.16">
36717         <doc xml:whitespace="preserve">Sets @text on the @menu_item label</doc>
36718         <return-value transfer-ownership="none">
36719           <type name="none" c:type="void"/>
36720         </return-value>
36721         <parameters>
36722           <parameter name="label" transfer-ownership="none">
36723             <doc xml:whitespace="preserve">the text you want to set</doc>
36724             <type name="utf8" c:type="gchar*"/>
36725           </parameter>
36726         </parameters>
36727       </virtual-method>
36728       <virtual-method name="get_label" invoker="get_label" version="2.16">
36729         <doc xml:whitespace="preserve">Sets @text on the @menu_item label
36730 string used by the label, and must not be modified.</doc>
36731         <return-value transfer-ownership="none">
36732           <doc xml:whitespace="preserve">The text in the @menu_item label. This is the internal</doc>
36733           <type name="utf8" c:type="gchar*"/>
36734         </return-value>
36735       </virtual-method>
36736       <method name="set_submenu" c:identifier="gtk_menu_item_set_submenu">
36737         <doc xml:whitespace="preserve">Sets or replaces the menu item's submenu, or removes it when a %NULL
36738 submenu is passed.</doc>
36739         <return-value transfer-ownership="none">
36740           <type name="none" c:type="void"/>
36741         </return-value>
36742         <parameters>
36743           <parameter name="submenu" transfer-ownership="none" allow-none="1">
36744             <doc xml:whitespace="preserve">the submenu, or %NULL</doc>
36745             <type name="Widget" c:type="GtkWidget*"/>
36746           </parameter>
36747         </parameters>
36748       </method>
36749       <method name="get_submenu" c:identifier="gtk_menu_item_get_submenu">
36750         <doc xml:whitespace="preserve">Gets the submenu underneath this menu item, if any. See
36751 gtk_menu_item_set_submenu().</doc>
36752         <return-value transfer-ownership="full">
36753           <doc xml:whitespace="preserve">submenu for this menu item, or %NULL if none.</doc>
36754           <type name="Widget" c:type="GtkWidget*"/>
36755         </return-value>
36756       </method>
36757       <method name="select" c:identifier="gtk_menu_item_select">
36758         <return-value transfer-ownership="none">
36759           <type name="none" c:type="void"/>
36760         </return-value>
36761       </method>
36762       <method name="deselect" c:identifier="gtk_menu_item_deselect">
36763         <return-value transfer-ownership="none">
36764           <type name="none" c:type="void"/>
36765         </return-value>
36766       </method>
36767       <method name="activate" c:identifier="gtk_menu_item_activate">
36768         <return-value transfer-ownership="none">
36769           <type name="none" c:type="void"/>
36770         </return-value>
36771       </method>
36772       <method name="toggle_size_request"
36773               c:identifier="gtk_menu_item_toggle_size_request">
36774         <return-value transfer-ownership="none">
36775           <type name="none" c:type="void"/>
36776         </return-value>
36777         <parameters>
36778           <parameter name="requisition"
36779                      direction="out"
36780                      caller-allocates="0"
36781                      transfer-ownership="full">
36782             <type name="int" c:type="gint*"/>
36783           </parameter>
36784         </parameters>
36785       </method>
36786       <method name="toggle_size_allocate"
36787               c:identifier="gtk_menu_item_toggle_size_allocate">
36788         <return-value transfer-ownership="none">
36789           <type name="none" c:type="void"/>
36790         </return-value>
36791         <parameters>
36792           <parameter name="allocation" transfer-ownership="none">
36793             <type name="int" c:type="gint"/>
36794           </parameter>
36795         </parameters>
36796       </method>
36797       <method name="set_right_justified"
36798               c:identifier="gtk_menu_item_set_right_justified">
36799         <doc xml:whitespace="preserve">Sets whether the menu item appears justified at the right
36800 side of a menu bar. This was traditionally done for "Help" menu
36801 items, but is now considered a bad idea. (If the widget
36802 layout is reversed for a right-to-left language like Hebrew
36803 or Arabic, right-justified-menu-items appear at the left.)</doc>
36804         <return-value transfer-ownership="none">
36805           <type name="none" c:type="void"/>
36806         </return-value>
36807         <parameters>
36808           <parameter name="right_justified" transfer-ownership="none">
36809             <doc xml:whitespace="preserve">if %TRUE the menu item will appear at the far right if added to a menu bar.</doc>
36810             <type name="boolean" c:type="gboolean"/>
36811           </parameter>
36812         </parameters>
36813       </method>
36814       <method name="get_right_justified"
36815               c:identifier="gtk_menu_item_get_right_justified">
36816         <doc xml:whitespace="preserve">Gets whether the menu item appears justified at the right
36817 side of the menu bar.
36818 far right if added to a menu bar.</doc>
36819         <return-value transfer-ownership="none">
36820           <doc xml:whitespace="preserve">%TRUE if the menu item will appear at the</doc>
36821           <type name="boolean" c:type="gboolean"/>
36822         </return-value>
36823       </method>
36824       <method name="set_accel_path"
36825               c:identifier="gtk_menu_item_set_accel_path">
36826         <return-value transfer-ownership="none">
36827           <type name="none" c:type="void"/>
36828         </return-value>
36829         <parameters>
36830           <parameter name="accel_path" transfer-ownership="none">
36831             <type name="utf8" c:type="gchar*"/>
36832           </parameter>
36833         </parameters>
36834       </method>
36835       <method name="get_accel_path"
36836               c:identifier="gtk_menu_item_get_accel_path">
36837         <return-value transfer-ownership="none">
36838           <type name="utf8" c:type="gchar*"/>
36839         </return-value>
36840       </method>
36841       <method name="set_label"
36842               c:identifier="gtk_menu_item_set_label"
36843               version="2.16">
36844         <doc xml:whitespace="preserve">Sets @text on the @menu_item label</doc>
36845         <return-value transfer-ownership="none">
36846           <type name="none" c:type="void"/>
36847         </return-value>
36848         <parameters>
36849           <parameter name="label" transfer-ownership="none">
36850             <doc xml:whitespace="preserve">the text you want to set</doc>
36851             <type name="utf8" c:type="gchar*"/>
36852           </parameter>
36853         </parameters>
36854       </method>
36855       <method name="get_label"
36856               c:identifier="gtk_menu_item_get_label"
36857               version="2.16">
36858         <doc xml:whitespace="preserve">Sets @text on the @menu_item label
36859 string used by the label, and must not be modified.</doc>
36860         <return-value transfer-ownership="none">
36861           <doc xml:whitespace="preserve">The text in the @menu_item label. This is the internal</doc>
36862           <type name="utf8" c:type="gchar*"/>
36863         </return-value>
36864       </method>
36865       <method name="set_use_underline"
36866               c:identifier="gtk_menu_item_set_use_underline"
36867               version="2.16">
36868         <doc xml:whitespace="preserve">If true, an underline in the text indicates the next character should be
36869 used for the mnemonic accelerator key.</doc>
36870         <return-value transfer-ownership="none">
36871           <type name="none" c:type="void"/>
36872         </return-value>
36873         <parameters>
36874           <parameter name="setting" transfer-ownership="none">
36875             <doc xml:whitespace="preserve">%TRUE if underlines in the text indicate mnemonics</doc>
36876             <type name="boolean" c:type="gboolean"/>
36877           </parameter>
36878         </parameters>
36879       </method>
36880       <method name="get_use_underline"
36881               c:identifier="gtk_menu_item_get_use_underline"
36882               version="2.16">
36883         <doc xml:whitespace="preserve">Checks if an underline in the text indicates the next character should be
36884 used for the mnemonic accelerator key.
36885 the mnemonic accelerator key.</doc>
36886         <return-value transfer-ownership="none">
36887           <doc xml:whitespace="preserve">%TRUE if an embedded underline in the label indicates</doc>
36888           <type name="boolean" c:type="gboolean"/>
36889         </return-value>
36890       </method>
36891       <method name="remove_submenu"
36892               c:identifier="gtk_menu_item_remove_submenu"
36893               deprecated="gtk_menu_item_remove_submenu() is deprecated and"
36894               deprecated-version="2.12">
36895         <doc xml:whitespace="preserve">Removes the widget's submenu.
36896 should not be used in newly written code. Use
36897 gtk_menu_item_set_submenu() instead.</doc>
36898         <return-value transfer-ownership="none">
36899           <type name="none" c:type="void"/>
36900         </return-value>
36901       </method>
36902       <property name="accel-path"
36903                 version="2.14"
36904                 writable="1"
36905                 transfer-ownership="none">
36906         <doc xml:whitespace="preserve">Sets the accelerator path of the menu item, through which runtime
36907 changes of the menu item's accelerator caused by the user can be
36908 identified and saved to persistant storage.</doc>
36909         <type name="utf8" c:type="gchararray"/>
36910       </property>
36911       <property name="label"
36912                 version="2.16"
36913                 writable="1"
36914                 transfer-ownership="none">
36915         <doc xml:whitespace="preserve">The text for the child label.</doc>
36916         <type name="utf8" c:type="gchararray"/>
36917       </property>
36918       <property name="right-justified"
36919                 version="2.14"
36920                 writable="1"
36921                 transfer-ownership="none">
36922         <doc xml:whitespace="preserve">Sets whether the menu item appears justified at the right side of a menu bar.</doc>
36923         <type name="boolean" c:type="gboolean"/>
36924       </property>
36925       <property name="submenu"
36926                 version="2.12"
36927                 writable="1"
36928                 transfer-ownership="none">
36929         <doc xml:whitespace="preserve">The submenu attached to the menu item, or NULL if it has none.</doc>
36930         <type name="Menu" c:type="GtkMenu"/>
36931       </property>
36932       <property name="use-underline"
36933                 version="2.16"
36934                 writable="1"
36935                 transfer-ownership="none">
36936         <doc xml:whitespace="preserve">%TRUE if underlines in the text indicate mnemonics</doc>
36937         <type name="boolean" c:type="gboolean"/>
36938       </property>
36939       <field name="item">
36940         <type name="Item" c:type="GtkItem"/>
36941       </field>
36942       <field name="submenu">
36943         <type name="Widget" c:type="GtkWidget*"/>
36944       </field>
36945       <field name="event_window">
36946         <type name="Gdk.Window" c:type="GdkWindow*"/>
36947       </field>
36948       <field name="toggle_size">
36949         <type name="uint16" c:type="guint16"/>
36950       </field>
36951       <field name="accelerator_width">
36952         <type name="uint16" c:type="guint16"/>
36953       </field>
36954       <field name="accel_path">
36955         <type name="utf8" c:type="gchar*"/>
36956       </field>
36957       <field name="show_submenu_indicator" bits="1">
36958         <type name="uint" c:type="guint"/>
36959       </field>
36960       <field name="submenu_placement" bits="1">
36961         <type name="uint" c:type="guint"/>
36962       </field>
36963       <field name="submenu_direction" bits="1">
36964         <type name="uint" c:type="guint"/>
36965       </field>
36966       <field name="right_justify" bits="1">
36967         <type name="uint" c:type="guint"/>
36968       </field>
36969       <field name="timer_from_keypress" bits="1">
36970         <type name="uint" c:type="guint"/>
36971       </field>
36972       <field name="from_menubar" bits="1">
36973         <type name="uint" c:type="guint"/>
36974       </field>
36975       <field name="timer">
36976         <type name="uint" c:type="guint"/>
36977       </field>
36978       <glib:signal name="activate">
36979         <return-value transfer-ownership="full">
36980           <type name="none" c:type="void"/>
36981         </return-value>
36982       </glib:signal>
36983       <glib:signal name="activate-item">
36984         <return-value transfer-ownership="full">
36985           <type name="none" c:type="void"/>
36986         </return-value>
36987       </glib:signal>
36988       <glib:signal name="toggle-size-allocate">
36989         <return-value transfer-ownership="full">
36990           <type name="none" c:type="void"/>
36991         </return-value>
36992         <parameters>
36993           <parameter name="object" transfer-ownership="none">
36994             <type name="int" c:type="gint"/>
36995           </parameter>
36996         </parameters>
36997       </glib:signal>
36998       <glib:signal name="toggle-size-request">
36999         <return-value transfer-ownership="full">
37000           <type name="none" c:type="void"/>
37001         </return-value>
37002         <parameters>
37003           <parameter name="object" transfer-ownership="none">
37004             <type name="any" c:type="gpointer"/>
37005           </parameter>
37006         </parameters>
37007       </glib:signal>
37008     </class>
37009     <record name="MenuItemClass"
37010             c:type="GtkMenuItemClass"
37011             glib:is-gtype-struct-for="MenuItem">
37012       <field name="parent_class">
37013         <type name="ItemClass" c:type="GtkItemClass"/>
37014       </field>
37015       <field name="hide_on_activate" bits="1">
37016         <type name="uint" c:type="guint"/>
37017       </field>
37018       <field name="activate">
37019         <callback name="activate" c:type="activate">
37020           <return-value transfer-ownership="none">
37021             <type name="none" c:type="void"/>
37022           </return-value>
37023           <parameters>
37024             <parameter name="menu_item" transfer-ownership="none">
37025               <type name="MenuItem" c:type="GtkMenuItem*"/>
37026             </parameter>
37027           </parameters>
37028         </callback>
37029       </field>
37030       <field name="activate_item">
37031         <callback name="activate_item" c:type="activate_item">
37032           <return-value transfer-ownership="none">
37033             <type name="none" c:type="void"/>
37034           </return-value>
37035           <parameters>
37036             <parameter name="menu_item" transfer-ownership="none">
37037               <type name="MenuItem" c:type="GtkMenuItem*"/>
37038             </parameter>
37039           </parameters>
37040         </callback>
37041       </field>
37042       <field name="toggle_size_request">
37043         <callback name="toggle_size_request" c:type="toggle_size_request">
37044           <return-value transfer-ownership="none">
37045             <type name="none" c:type="void"/>
37046           </return-value>
37047           <parameters>
37048             <parameter name="menu_item" transfer-ownership="none">
37049               <type name="MenuItem" c:type="GtkMenuItem*"/>
37050             </parameter>
37051             <parameter name="requisition"
37052                        direction="out"
37053                        caller-allocates="0"
37054                        transfer-ownership="full">
37055               <type name="int" c:type="gint*"/>
37056             </parameter>
37057           </parameters>
37058         </callback>
37059       </field>
37060       <field name="toggle_size_allocate">
37061         <callback name="toggle_size_allocate" c:type="toggle_size_allocate">
37062           <return-value transfer-ownership="none">
37063             <type name="none" c:type="void"/>
37064           </return-value>
37065           <parameters>
37066             <parameter name="menu_item" transfer-ownership="none">
37067               <type name="MenuItem" c:type="GtkMenuItem*"/>
37068             </parameter>
37069             <parameter name="allocation" transfer-ownership="none">
37070               <type name="int" c:type="gint"/>
37071             </parameter>
37072           </parameters>
37073         </callback>
37074       </field>
37075       <field name="set_label">
37076         <callback name="set_label" c:type="set_label">
37077           <return-value transfer-ownership="none">
37078             <type name="none" c:type="void"/>
37079           </return-value>
37080           <parameters>
37081             <parameter name="menu_item" transfer-ownership="none">
37082               <type name="MenuItem" c:type="GtkMenuItem*"/>
37083             </parameter>
37084             <parameter name="label" transfer-ownership="none">
37085               <doc xml:whitespace="preserve">the text you want to set</doc>
37086               <type name="utf8" c:type="gchar*"/>
37087             </parameter>
37088           </parameters>
37089         </callback>
37090       </field>
37091       <field name="get_label">
37092         <callback name="get_label" c:type="get_label">
37093           <return-value transfer-ownership="none">
37094             <doc xml:whitespace="preserve">The text in the @menu_item label. This is the internal</doc>
37095             <type name="utf8" c:type="gchar*"/>
37096           </return-value>
37097           <parameters>
37098             <parameter name="menu_item" transfer-ownership="none">
37099               <type name="MenuItem" c:type="GtkMenuItem*"/>
37100             </parameter>
37101           </parameters>
37102         </callback>
37103       </field>
37104       <field name="gtk_reserved1">
37105         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
37106           <return-value transfer-ownership="none">
37107             <type name="none" c:type="void"/>
37108           </return-value>
37109         </callback>
37110       </field>
37111       <field name="gtk_reserved2">
37112         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
37113           <return-value transfer-ownership="none">
37114             <type name="none" c:type="void"/>
37115           </return-value>
37116         </callback>
37117       </field>
37118     </record>
37119     <callback name="MenuPositionFunc" c:type="GtkMenuPositionFunc">
37120       <return-value transfer-ownership="none">
37121         <type name="none" c:type="void"/>
37122       </return-value>
37123       <parameters>
37124         <parameter name="menu" transfer-ownership="none">
37125           <type name="Menu" c:type="GtkMenu*"/>
37126         </parameter>
37127         <parameter name="x"
37128                    direction="out"
37129                    caller-allocates="0"
37130                    transfer-ownership="full">
37131           <type name="int" c:type="gint*"/>
37132         </parameter>
37133         <parameter name="y"
37134                    direction="out"
37135                    caller-allocates="0"
37136                    transfer-ownership="full">
37137           <type name="int" c:type="gint*"/>
37138         </parameter>
37139         <parameter name="push_in"
37140                    direction="out"
37141                    caller-allocates="0"
37142                    transfer-ownership="full">
37143           <type name="boolean" c:type="gboolean*"/>
37144         </parameter>
37145         <parameter name="user_data" transfer-ownership="none" closure="4">
37146           <type name="any" c:type="gpointer"/>
37147         </parameter>
37148       </parameters>
37149     </callback>
37150     <class name="MenuShell"
37151            c:type="GtkMenuShell"
37152            parent="Container"
37153            abstract="1"
37154            glib:type-name="GtkMenuShell"
37155            glib:get-type="gtk_menu_shell_get_type"
37156            glib:type-struct="MenuShellClass">
37157       <implements name="Atk.ImplementorIface"/>
37158       <implements name="Buildable"/>
37159       <virtual-method name="select_item" invoker="select_item">
37160         <return-value transfer-ownership="none">
37161           <type name="none" c:type="void"/>
37162         </return-value>
37163         <parameters>
37164           <parameter name="menu_item" transfer-ownership="none">
37165             <type name="Widget" c:type="GtkWidget*"/>
37166           </parameter>
37167         </parameters>
37168       </virtual-method>
37169       <virtual-method name="insert" invoker="insert">
37170         <return-value transfer-ownership="none">
37171           <type name="none" c:type="void"/>
37172         </return-value>
37173         <parameters>
37174           <parameter name="child" transfer-ownership="none">
37175             <type name="Widget" c:type="GtkWidget*"/>
37176           </parameter>
37177           <parameter name="position" transfer-ownership="none">
37178             <type name="int" c:type="gint"/>
37179           </parameter>
37180         </parameters>
37181       </virtual-method>
37182       <virtual-method name="get_popup_delay">
37183         <return-value transfer-ownership="none">
37184           <type name="int" c:type="gint"/>
37185         </return-value>
37186       </virtual-method>
37187       <method name="append" c:identifier="gtk_menu_shell_append">
37188         <return-value transfer-ownership="none">
37189           <type name="none" c:type="void"/>
37190         </return-value>
37191         <parameters>
37192           <parameter name="child" transfer-ownership="none">
37193             <type name="Widget" c:type="GtkWidget*"/>
37194           </parameter>
37195         </parameters>
37196       </method>
37197       <method name="prepend" c:identifier="gtk_menu_shell_prepend">
37198         <return-value transfer-ownership="none">
37199           <type name="none" c:type="void"/>
37200         </return-value>
37201         <parameters>
37202           <parameter name="child" transfer-ownership="none">
37203             <type name="Widget" c:type="GtkWidget*"/>
37204           </parameter>
37205         </parameters>
37206       </method>
37207       <method name="insert" c:identifier="gtk_menu_shell_insert">
37208         <return-value transfer-ownership="none">
37209           <type name="none" c:type="void"/>
37210         </return-value>
37211         <parameters>
37212           <parameter name="child" transfer-ownership="none">
37213             <type name="Widget" c:type="GtkWidget*"/>
37214           </parameter>
37215           <parameter name="position" transfer-ownership="none">
37216             <type name="int" c:type="gint"/>
37217           </parameter>
37218         </parameters>
37219       </method>
37220       <method name="deactivate" c:identifier="gtk_menu_shell_deactivate">
37221         <return-value transfer-ownership="none">
37222           <type name="none" c:type="void"/>
37223         </return-value>
37224       </method>
37225       <method name="select_item" c:identifier="gtk_menu_shell_select_item">
37226         <return-value transfer-ownership="none">
37227           <type name="none" c:type="void"/>
37228         </return-value>
37229         <parameters>
37230           <parameter name="menu_item" transfer-ownership="none">
37231             <type name="Widget" c:type="GtkWidget*"/>
37232           </parameter>
37233         </parameters>
37234       </method>
37235       <method name="deselect" c:identifier="gtk_menu_shell_deselect">
37236         <return-value transfer-ownership="none">
37237           <type name="none" c:type="void"/>
37238         </return-value>
37239       </method>
37240       <method name="activate_item" c:identifier="gtk_menu_shell_activate_item">
37241         <return-value transfer-ownership="none">
37242           <type name="none" c:type="void"/>
37243         </return-value>
37244         <parameters>
37245           <parameter name="menu_item" transfer-ownership="none">
37246             <type name="Widget" c:type="GtkWidget*"/>
37247           </parameter>
37248           <parameter name="force_deactivate" transfer-ownership="none">
37249             <type name="boolean" c:type="gboolean"/>
37250           </parameter>
37251         </parameters>
37252       </method>
37253       <method name="select_first"
37254               c:identifier="gtk_menu_shell_select_first"
37255               version="2.2">
37256         <doc xml:whitespace="preserve">Select the first visible or selectable child of the menu shell;
37257 don't select tearoff items unless the only item is a tearoff
37258 item.</doc>
37259         <return-value transfer-ownership="none">
37260           <type name="none" c:type="void"/>
37261         </return-value>
37262         <parameters>
37263           <parameter name="search_sensitive" transfer-ownership="none">
37264             <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>
37265             <type name="boolean" c:type="gboolean"/>
37266           </parameter>
37267         </parameters>
37268       </method>
37269       <method name="cancel" c:identifier="gtk_menu_shell_cancel" version="2.4">
37270         <doc xml:whitespace="preserve">Cancels the selection within the menu shell.</doc>
37271         <return-value transfer-ownership="none">
37272           <type name="none" c:type="void"/>
37273         </return-value>
37274       </method>
37275       <method name="get_take_focus"
37276               c:identifier="gtk_menu_shell_get_take_focus"
37277               version="2.8">
37278         <doc xml:whitespace="preserve">Returns %TRUE if the menu shell will take the keyboard focus on popup.</doc>
37279         <return-value transfer-ownership="none">
37280           <doc xml:whitespace="preserve">%TRUE if the menu shell will take the keyboard focus on popup.</doc>
37281           <type name="boolean" c:type="gboolean"/>
37282         </return-value>
37283       </method>
37284       <method name="set_take_focus"
37285               c:identifier="gtk_menu_shell_set_take_focus"
37286               version="2.8">
37287         <doc xml:whitespace="preserve">If @take_focus is %TRUE (the default) the menu shell will take the keyboard 
37288 focus so that it will receive all keyboard events which is needed to enable
37289 keyboard navigation in menus.
37290 Setting @take_focus to %FALSE is useful only for special applications
37291 like virtual keyboard implementations which should not take keyboard
37292 focus.
37293 The @take_focus state of a menu or menu bar is automatically propagated
37294 to submenus whenever a submenu is popped up, so you don't have to worry
37295 about recursively setting it for your entire menu hierarchy. Only when
37296 programmatically picking a submenu and popping it up manually, the
37297 Note that setting it to %FALSE has side-effects:
37298 If the focus is in some other app, it keeps the focus and keynav in
37299 the menu doesn't work. Consequently, keynav on the menu will only
37300 work if the focus is on some toplevel owned by the onscreen keyboard.
37301 To avoid confusing the user, menus with @take_focus set to %FALSE
37302 should not display mnemonics or accelerators, since it cannot be
37303 guaranteed that they will work.
37304 See also gdk_keyboard_grab()</doc>
37305         <return-value transfer-ownership="none">
37306           <type name="none" c:type="void"/>
37307         </return-value>
37308         <parameters>
37309           <parameter name="take_focus" transfer-ownership="none">
37310             <doc xml:whitespace="preserve">%TRUE if the menu shell should take the keyboard focus on popup.</doc>
37311             <type name="boolean" c:type="gboolean"/>
37312           </parameter>
37313         </parameters>
37314       </method>
37315       <property name="take-focus"
37316                 version="2.8"
37317                 writable="1"
37318                 transfer-ownership="none">
37319         <doc xml:whitespace="preserve">A boolean that determines whether the menu and its submenus grab the
37320 keyboard focus. See gtk_menu_shell_set_take_focus() and
37321 gtk_menu_shell_get_take_focus().</doc>
37322         <type name="boolean" c:type="gboolean"/>
37323       </property>
37324       <field name="container">
37325         <type name="Container" c:type="GtkContainer"/>
37326       </field>
37327       <field name="children">
37328         <type name="GLib.List" c:type="GList*">
37329           <type name="any" c:type="gpointer"/>
37330         </type>
37331       </field>
37332       <field name="active_menu_item">
37333         <type name="Widget" c:type="GtkWidget*"/>
37334       </field>
37335       <field name="parent_menu_shell">
37336         <type name="Widget" c:type="GtkWidget*"/>
37337       </field>
37338       <field name="button">
37339         <type name="uint" c:type="guint"/>
37340       </field>
37341       <field name="activate_time">
37342         <type name="uint32" c:type="guint32"/>
37343       </field>
37344       <field name="active" bits="1">
37345         <type name="uint" c:type="guint"/>
37346       </field>
37347       <field name="have_grab" bits="1">
37348         <type name="uint" c:type="guint"/>
37349       </field>
37350       <field name="have_xgrab" bits="1">
37351         <type name="uint" c:type="guint"/>
37352       </field>
37353       <field name="ignore_leave" bits="1">
37354         <type name="uint" c:type="guint"/>
37355       </field>
37356       <field name="menu_flag" bits="1">
37357         <type name="uint" c:type="guint"/>
37358       </field>
37359       <field name="ignore_enter" bits="1">
37360         <type name="uint" c:type="guint"/>
37361       </field>
37362       <field name="keyboard_mode" bits="1">
37363         <type name="uint" c:type="guint"/>
37364       </field>
37365       <glib:signal name="activate-current">
37366         <return-value transfer-ownership="full">
37367           <type name="none" c:type="void"/>
37368         </return-value>
37369         <parameters>
37370           <parameter name="object" transfer-ownership="none">
37371             <type name="boolean" c:type="gboolean"/>
37372           </parameter>
37373         </parameters>
37374       </glib:signal>
37375       <glib:signal name="cancel">
37376         <return-value transfer-ownership="full">
37377           <type name="none" c:type="void"/>
37378         </return-value>
37379       </glib:signal>
37380       <glib:signal name="cycle-focus">
37381         <return-value transfer-ownership="full">
37382           <type name="none" c:type="void"/>
37383         </return-value>
37384         <parameters>
37385           <parameter name="object" transfer-ownership="none">
37386             <type name="DirectionType" c:type="GtkDirectionType"/>
37387           </parameter>
37388         </parameters>
37389       </glib:signal>
37390       <glib:signal name="deactivate">
37391         <return-value transfer-ownership="full">
37392           <type name="none" c:type="void"/>
37393         </return-value>
37394       </glib:signal>
37395       <glib:signal name="move-current">
37396         <return-value transfer-ownership="full">
37397           <type name="none" c:type="void"/>
37398         </return-value>
37399         <parameters>
37400           <parameter name="object" transfer-ownership="none">
37401             <type name="MenuDirectionType" c:type="GtkMenuDirectionType"/>
37402           </parameter>
37403         </parameters>
37404       </glib:signal>
37405       <glib:signal name="move-selected" version="2.12">
37406         <doc xml:whitespace="preserve">The ::move-selected signal is emitted to move the selection to
37407 another item.</doc>
37408         <return-value transfer-ownership="full">
37409           <doc xml:whitespace="preserve">%TRUE to stop the signal emission, %FALSE to continue</doc>
37410           <type name="boolean" c:type="gboolean"/>
37411         </return-value>
37412         <parameters>
37413           <parameter name="distance" transfer-ownership="none">
37414             <doc xml:whitespace="preserve">+1 to move to the next item, -1 to move to the previous</doc>
37415             <type name="int" c:type="gint"/>
37416           </parameter>
37417         </parameters>
37418       </glib:signal>
37419       <glib:signal name="selection-done">
37420         <return-value transfer-ownership="full">
37421           <type name="none" c:type="void"/>
37422         </return-value>
37423       </glib:signal>
37424     </class>
37425     <record name="MenuShellClass"
37426             c:type="GtkMenuShellClass"
37427             glib:is-gtype-struct-for="MenuShell">
37428       <field name="parent_class">
37429         <type name="ContainerClass" c:type="GtkContainerClass"/>
37430       </field>
37431       <field name="submenu_placement" bits="1">
37432         <type name="uint" c:type="guint"/>
37433       </field>
37434       <field name="deactivate">
37435         <callback name="deactivate" c:type="deactivate">
37436           <return-value transfer-ownership="none">
37437             <type name="none" c:type="void"/>
37438           </return-value>
37439           <parameters>
37440             <parameter name="menu_shell" transfer-ownership="none">
37441               <type name="MenuShell" c:type="GtkMenuShell*"/>
37442             </parameter>
37443           </parameters>
37444         </callback>
37445       </field>
37446       <field name="selection_done">
37447         <callback name="selection_done" c:type="selection_done">
37448           <return-value transfer-ownership="none">
37449             <type name="none" c:type="void"/>
37450           </return-value>
37451           <parameters>
37452             <parameter name="menu_shell" transfer-ownership="none">
37453               <type name="MenuShell" c:type="GtkMenuShell*"/>
37454             </parameter>
37455           </parameters>
37456         </callback>
37457       </field>
37458       <field name="move_current">
37459         <callback name="move_current" c:type="move_current">
37460           <return-value transfer-ownership="none">
37461             <type name="none" c:type="void"/>
37462           </return-value>
37463           <parameters>
37464             <parameter name="menu_shell" transfer-ownership="none">
37465               <type name="MenuShell" c:type="GtkMenuShell*"/>
37466             </parameter>
37467             <parameter name="direction" transfer-ownership="none">
37468               <type name="MenuDirectionType" c:type="GtkMenuDirectionType"/>
37469             </parameter>
37470           </parameters>
37471         </callback>
37472       </field>
37473       <field name="activate_current">
37474         <callback name="activate_current" c:type="activate_current">
37475           <return-value transfer-ownership="none">
37476             <type name="none" c:type="void"/>
37477           </return-value>
37478           <parameters>
37479             <parameter name="menu_shell" transfer-ownership="none">
37480               <type name="MenuShell" c:type="GtkMenuShell*"/>
37481             </parameter>
37482             <parameter name="force_hide" transfer-ownership="none">
37483               <type name="boolean" c:type="gboolean"/>
37484             </parameter>
37485           </parameters>
37486         </callback>
37487       </field>
37488       <field name="cancel">
37489         <callback name="cancel" c:type="cancel">
37490           <return-value transfer-ownership="none">
37491             <type name="none" c:type="void"/>
37492           </return-value>
37493           <parameters>
37494             <parameter name="menu_shell" transfer-ownership="none">
37495               <type name="MenuShell" c:type="GtkMenuShell*"/>
37496             </parameter>
37497           </parameters>
37498         </callback>
37499       </field>
37500       <field name="select_item">
37501         <callback name="select_item" c:type="select_item">
37502           <return-value transfer-ownership="none">
37503             <type name="none" c:type="void"/>
37504           </return-value>
37505           <parameters>
37506             <parameter name="menu_shell" transfer-ownership="none">
37507               <type name="MenuShell" c:type="GtkMenuShell*"/>
37508             </parameter>
37509             <parameter name="menu_item" transfer-ownership="none">
37510               <type name="Widget" c:type="GtkWidget*"/>
37511             </parameter>
37512           </parameters>
37513         </callback>
37514       </field>
37515       <field name="insert">
37516         <callback name="insert" c:type="insert">
37517           <return-value transfer-ownership="none">
37518             <type name="none" c:type="void"/>
37519           </return-value>
37520           <parameters>
37521             <parameter name="menu_shell" transfer-ownership="none">
37522               <type name="MenuShell" c:type="GtkMenuShell*"/>
37523             </parameter>
37524             <parameter name="child" transfer-ownership="none">
37525               <type name="Widget" c:type="GtkWidget*"/>
37526             </parameter>
37527             <parameter name="position" transfer-ownership="none">
37528               <type name="int" c:type="gint"/>
37529             </parameter>
37530           </parameters>
37531         </callback>
37532       </field>
37533       <field name="get_popup_delay">
37534         <callback name="get_popup_delay" c:type="get_popup_delay">
37535           <return-value transfer-ownership="none">
37536             <type name="int" c:type="gint"/>
37537           </return-value>
37538           <parameters>
37539             <parameter name="menu_shell" transfer-ownership="none">
37540               <type name="MenuShell" c:type="GtkMenuShell*"/>
37541             </parameter>
37542           </parameters>
37543         </callback>
37544       </field>
37545       <field name="move_selected">
37546         <callback name="move_selected" c:type="move_selected">
37547           <return-value transfer-ownership="none">
37548             <type name="boolean" c:type="gboolean"/>
37549           </return-value>
37550           <parameters>
37551             <parameter name="menu_shell" transfer-ownership="none">
37552               <type name="MenuShell" c:type="GtkMenuShell*"/>
37553             </parameter>
37554             <parameter name="distance" transfer-ownership="none">
37555               <type name="int" c:type="gint"/>
37556             </parameter>
37557           </parameters>
37558         </callback>
37559       </field>
37560       <field name="gtk_reserved1">
37561         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
37562           <return-value transfer-ownership="none">
37563             <type name="none" c:type="void"/>
37564           </return-value>
37565         </callback>
37566       </field>
37567       <field name="gtk_reserved2">
37568         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
37569           <return-value transfer-ownership="none">
37570             <type name="none" c:type="void"/>
37571           </return-value>
37572         </callback>
37573       </field>
37574     </record>
37575     <class name="MenuToolButton"
37576            c:type="GtkMenuToolButton"
37577            parent="ToolButton"
37578            glib:type-name="GtkMenuToolButton"
37579            glib:get-type="gtk_menu_tool_button_get_type"
37580            glib:type-struct="MenuToolButtonClass">
37581       <implements name="Activatable"/>
37582       <implements name="Atk.ImplementorIface"/>
37583       <implements name="Buildable"/>
37584       <constructor name="new"
37585                    c:identifier="gtk_menu_tool_button_new"
37586                    version="2.6">
37587         <doc xml:whitespace="preserve">Creates a new #GtkMenuToolButton using @icon_widget as icon and</doc>
37588         <return-value transfer-ownership="full">
37589           <doc xml:whitespace="preserve">the new #GtkMenuToolButton</doc>
37590           <type name="MenuToolButton" c:type="GtkToolItem*"/>
37591         </return-value>
37592         <parameters>
37593           <parameter name="icon_widget"
37594                      transfer-ownership="none"
37595                      allow-none="1">
37596             <doc xml:whitespace="preserve">a widget that will be used as icon widget, or %NULL</doc>
37597             <type name="Widget" c:type="GtkWidget*"/>
37598           </parameter>
37599           <parameter name="label" transfer-ownership="none" allow-none="1">
37600             <doc xml:whitespace="preserve">a string that will be used as label, or %NULL</doc>
37601             <type name="utf8" c:type="gchar*"/>
37602           </parameter>
37603         </parameters>
37604       </constructor>
37605       <constructor name="new_from_stock"
37606                    c:identifier="gtk_menu_tool_button_new_from_stock"
37607                    version="2.6">
37608         <doc xml:whitespace="preserve">Creates a new #GtkMenuToolButton.
37609 The new #GtkMenuToolButton will contain an icon and label from
37610 the stock item indicated by @stock_id.</doc>
37611         <return-value transfer-ownership="full">
37612           <doc xml:whitespace="preserve">the new #GtkMenuToolButton</doc>
37613           <type name="MenuToolButton" c:type="GtkToolItem*"/>
37614         </return-value>
37615         <parameters>
37616           <parameter name="stock_id" transfer-ownership="none">
37617             <doc xml:whitespace="preserve">the name of a stock item</doc>
37618             <type name="utf8" c:type="gchar*"/>
37619           </parameter>
37620         </parameters>
37621       </constructor>
37622       <method name="set_menu"
37623               c:identifier="gtk_menu_tool_button_set_menu"
37624               version="2.6">
37625         <doc xml:whitespace="preserve">Sets the #GtkMenu that is popped up when the user clicks on the arrow.
37626 If @menu is NULL, the arrow button becomes insensitive.</doc>
37627         <return-value transfer-ownership="none">
37628           <type name="none" c:type="void"/>
37629         </return-value>
37630         <parameters>
37631           <parameter name="menu" transfer-ownership="none">
37632             <doc xml:whitespace="preserve">the #GtkMenu associated with #GtkMenuToolButton</doc>
37633             <type name="Widget" c:type="GtkWidget*"/>
37634           </parameter>
37635         </parameters>
37636       </method>
37637       <method name="get_menu"
37638               c:identifier="gtk_menu_tool_button_get_menu"
37639               version="2.6">
37640         <doc xml:whitespace="preserve">Gets the #GtkMenu associated with #GtkMenuToolButton.</doc>
37641         <return-value transfer-ownership="full">
37642           <doc xml:whitespace="preserve">the #GtkMenu associated with #GtkMenuToolButton</doc>
37643           <type name="Widget" c:type="GtkWidget*"/>
37644         </return-value>
37645       </method>
37646       <method name="set_arrow_tooltip"
37647               c:identifier="gtk_menu_tool_button_set_arrow_tooltip"
37648               version="2.6"
37649               deprecated="Use gtk_menu_tool_button_set_arrow_tooltip_text()"
37650               deprecated-version="2.12">
37651         <doc xml:whitespace="preserve">Sets the #GtkTooltips object to be used for arrow button which
37652 pops up the menu. See gtk_tool_item_set_tooltip() for setting
37653 a tooltip on the whole #GtkMenuToolButton.
37654 instead.</doc>
37655         <return-value transfer-ownership="none">
37656           <type name="none" c:type="void"/>
37657         </return-value>
37658         <parameters>
37659           <parameter name="tooltips" transfer-ownership="none">
37660             <doc xml:whitespace="preserve">the #GtkTooltips object to be used</doc>
37661             <type name="Tooltips" c:type="GtkTooltips*"/>
37662           </parameter>
37663           <parameter name="tip_text" transfer-ownership="none" allow-none="1">
37664             <doc xml:whitespace="preserve">text to be used as tooltip text for tool_item</doc>
37665             <type name="utf8" c:type="gchar*"/>
37666           </parameter>
37667           <parameter name="tip_private"
37668                      transfer-ownership="none"
37669                      allow-none="1">
37670             <doc xml:whitespace="preserve">text to be used as private tooltip text</doc>
37671             <type name="utf8" c:type="gchar*"/>
37672           </parameter>
37673         </parameters>
37674       </method>
37675       <method name="set_arrow_tooltip_text"
37676               c:identifier="gtk_menu_tool_button_set_arrow_tooltip_text"
37677               version="2.12">
37678         <doc xml:whitespace="preserve">Sets the tooltip text to be used as tooltip for the arrow button which
37679 pops up the menu.  See gtk_tool_item_set_tooltip() for setting a tooltip
37680 on the whole #GtkMenuToolButton.</doc>
37681         <return-value transfer-ownership="none">
37682           <type name="none" c:type="void"/>
37683         </return-value>
37684         <parameters>
37685           <parameter name="text" transfer-ownership="none">
37686             <doc xml:whitespace="preserve">text to be used as tooltip text for button's arrow button</doc>
37687             <type name="utf8" c:type="gchar*"/>
37688           </parameter>
37689         </parameters>
37690       </method>
37691       <method name="set_arrow_tooltip_markup"
37692               c:identifier="gtk_menu_tool_button_set_arrow_tooltip_markup"
37693               version="2.12">
37694         <doc xml:whitespace="preserve">Sets the tooltip markup text to be used as tooltip for the arrow button
37695 which pops up the menu.  See gtk_tool_item_set_tooltip() for setting a
37696 tooltip on the whole #GtkMenuToolButton.</doc>
37697         <return-value transfer-ownership="none">
37698           <type name="none" c:type="void"/>
37699         </return-value>
37700         <parameters>
37701           <parameter name="markup" transfer-ownership="none">
37702             <doc xml:whitespace="preserve">markup text to be used as tooltip text for button's arrow button</doc>
37703             <type name="utf8" c:type="gchar*"/>
37704           </parameter>
37705         </parameters>
37706       </method>
37707       <property name="menu" writable="1" transfer-ownership="none">
37708         <type name="Menu" c:type="GtkMenu"/>
37709       </property>
37710       <field name="parent">
37711         <type name="ToolButton" c:type="GtkToolButton"/>
37712       </field>
37713       <field name="priv">
37714         <type name="MenuToolButtonPrivate" c:type="GtkMenuToolButtonPrivate*"/>
37715       </field>
37716       <glib:signal name="show-menu">
37717         <doc xml:whitespace="preserve">The ::show-menu signal is emitted before the menu is shown.
37718 It can be used to populate the menu on demand, using 
37719 gtk_menu_tool_button_get_menu(). 
37720 Note that even if you populate the menu dynamically in this way, 
37721 you must set an empty menu on the #GtkMenuToolButton beforehand,
37722 since the arrow is made insensitive if the menu is not set.</doc>
37723         <return-value transfer-ownership="full">
37724           <type name="none" c:type="void"/>
37725         </return-value>
37726       </glib:signal>
37727     </class>
37728     <record name="MenuToolButtonClass"
37729             c:type="GtkMenuToolButtonClass"
37730             glib:is-gtype-struct-for="MenuToolButton">
37731       <field name="parent_class">
37732         <type name="ToolButtonClass" c:type="GtkToolButtonClass"/>
37733       </field>
37734       <field name="show_menu">
37735         <callback name="show_menu" c:type="show_menu">
37736           <return-value transfer-ownership="none">
37737             <type name="none" c:type="void"/>
37738           </return-value>
37739           <parameters>
37740             <parameter name="button" transfer-ownership="none">
37741               <type name="MenuToolButton" c:type="GtkMenuToolButton*"/>
37742             </parameter>
37743           </parameters>
37744         </callback>
37745       </field>
37746       <field name="gtk_reserved1">
37747         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
37748           <return-value transfer-ownership="none">
37749             <type name="none" c:type="void"/>
37750           </return-value>
37751         </callback>
37752       </field>
37753       <field name="gtk_reserved2">
37754         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
37755           <return-value transfer-ownership="none">
37756             <type name="none" c:type="void"/>
37757           </return-value>
37758         </callback>
37759       </field>
37760       <field name="gtk_reserved3">
37761         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
37762           <return-value transfer-ownership="none">
37763             <type name="none" c:type="void"/>
37764           </return-value>
37765         </callback>
37766       </field>
37767       <field name="gtk_reserved4">
37768         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
37769           <return-value transfer-ownership="none">
37770             <type name="none" c:type="void"/>
37771           </return-value>
37772         </callback>
37773       </field>
37774     </record>
37775     <record name="MenuToolButtonPrivate" c:type="GtkMenuToolButtonPrivate">
37776     </record>
37777     <class name="MessageDialog"
37778            c:type="GtkMessageDialog"
37779            parent="Dialog"
37780            glib:type-name="GtkMessageDialog"
37781            glib:get-type="gtk_message_dialog_get_type"
37782            glib:type-struct="MessageDialogClass">
37783       <implements name="Atk.ImplementorIface"/>
37784       <implements name="Buildable"/>
37785       <constructor name="new"
37786                    c:identifier="gtk_message_dialog_new"
37787                    introspectable="0">
37788         <doc xml:whitespace="preserve">Creates a new message dialog, which is a simple dialog with an icon
37789 indicating the dialog type (error, warning, etc.) and some text the
37790 user may want to see. When the user clicks a button a "response"
37791 signal is emitted with response IDs from #GtkResponseType. See
37792 #GtkDialog for more details.</doc>
37793         <return-value transfer-ownership="none">
37794           <doc xml:whitespace="preserve">a new #GtkMessageDialog</doc>
37795           <type name="MessageDialog" c:type="GtkWidget*"/>
37796         </return-value>
37797         <parameters>
37798           <parameter name="parent" transfer-ownership="none" allow-none="1">
37799             <doc xml:whitespace="preserve">transient parent, or %NULL for none</doc>
37800             <type name="Window" c:type="GtkWindow*"/>
37801           </parameter>
37802           <parameter name="flags" transfer-ownership="none">
37803             <doc xml:whitespace="preserve">flags</doc>
37804             <type name="DialogFlags" c:type="GtkDialogFlags"/>
37805           </parameter>
37806           <parameter name="type" transfer-ownership="none">
37807             <doc xml:whitespace="preserve">type of message</doc>
37808             <type name="MessageType" c:type="GtkMessageType"/>
37809           </parameter>
37810           <parameter name="buttons" transfer-ownership="none">
37811             <doc xml:whitespace="preserve">set of buttons to use</doc>
37812             <type name="ButtonsType" c:type="GtkButtonsType"/>
37813           </parameter>
37814           <parameter name="message_format"
37815                      transfer-ownership="none"
37816                      allow-none="1">
37817             <doc xml:whitespace="preserve">printf()-style format string, or %NULL</doc>
37818             <type name="utf8" c:type="gchar*"/>
37819           </parameter>
37820           <parameter transfer-ownership="none">
37821             <varargs>
37822             </varargs>
37823           </parameter>
37824         </parameters>
37825       </constructor>
37826       <constructor name="new_with_markup"
37827                    c:identifier="gtk_message_dialog_new_with_markup"
37828                    version="2.4"
37829                    introspectable="0">
37830         <doc xml:whitespace="preserve">Creates a new message dialog, which is a simple dialog with an icon
37831 indicating the dialog type (error, warning, etc.) and some text which
37832 is marked up with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
37833 When the user clicks a button a "response" signal is emitted with
37834 response IDs from #GtkResponseType. See #GtkDialog for more details.
37835 Special XML characters in the printf() arguments passed to this
37836 function will automatically be escaped as necessary.
37837 (See g_markup_printf_escaped() for how this is implemented.)
37838 Usually this is what you want, but if you have an existing
37839 Pango markup string that you want to use literally as the
37840 label, then you need to use gtk_message_dialog_set_markup()
37841 instead, since you can't pass the markup string either
37842 as the format (it might contain '%' characters) or as a string
37843 argument.
37844 |[
37845 GtkWidget *dialog;
37846 dialog = gtk_message_dialog_new (main_application_window,
37847 GTK_DIALOG_DESTROY_WITH_PARENT,
37848 GTK_MESSAGE_ERROR,
37849 GTK_BUTTONS_CLOSE,
37850 NULL);
37851 gtk_message_dialog_set_markup (GTK_MESSAGE_DIALOG (dialog),
37852 markup);
37853 ]|</doc>
37854         <return-value transfer-ownership="full">
37855           <doc xml:whitespace="preserve">a new #GtkMessageDialog</doc>
37856           <type name="MessageDialog" c:type="GtkWidget*"/>
37857         </return-value>
37858         <parameters>
37859           <parameter name="parent" transfer-ownership="none" allow-none="1">
37860             <doc xml:whitespace="preserve">transient parent, or %NULL for none</doc>
37861             <type name="Window" c:type="GtkWindow*"/>
37862           </parameter>
37863           <parameter name="flags" transfer-ownership="none">
37864             <doc xml:whitespace="preserve">flags</doc>
37865             <type name="DialogFlags" c:type="GtkDialogFlags"/>
37866           </parameter>
37867           <parameter name="type" transfer-ownership="none">
37868             <doc xml:whitespace="preserve">type of message</doc>
37869             <type name="MessageType" c:type="GtkMessageType"/>
37870           </parameter>
37871           <parameter name="buttons" transfer-ownership="none">
37872             <doc xml:whitespace="preserve">set of buttons to use</doc>
37873             <type name="ButtonsType" c:type="GtkButtonsType"/>
37874           </parameter>
37875           <parameter name="message_format"
37876                      transfer-ownership="none"
37877                      allow-none="1">
37878             <doc xml:whitespace="preserve">printf()-style format string, or %NULL</doc>
37879             <type name="utf8" c:type="gchar*"/>
37880           </parameter>
37881           <parameter transfer-ownership="none">
37882             <varargs>
37883             </varargs>
37884           </parameter>
37885         </parameters>
37886       </constructor>
37887       <method name="set_image"
37888               c:identifier="gtk_message_dialog_set_image"
37889               version="2.10">
37890         <doc xml:whitespace="preserve">Sets the dialog's image to @image.</doc>
37891         <return-value transfer-ownership="none">
37892           <type name="none" c:type="void"/>
37893         </return-value>
37894         <parameters>
37895           <parameter name="image" transfer-ownership="none">
37896             <doc xml:whitespace="preserve">the image</doc>
37897             <type name="Widget" c:type="GtkWidget*"/>
37898           </parameter>
37899         </parameters>
37900       </method>
37901       <method name="get_image"
37902               c:identifier="gtk_message_dialog_get_image"
37903               version="2.14">
37904         <doc xml:whitespace="preserve">Gets the dialog's image.</doc>
37905         <return-value transfer-ownership="full">
37906           <doc xml:whitespace="preserve">the dialog's image</doc>
37907           <type name="Widget" c:type="GtkWidget*"/>
37908         </return-value>
37909       </method>
37910       <method name="set_markup"
37911               c:identifier="gtk_message_dialog_set_markup"
37912               version="2.4">
37913         <doc xml:whitespace="preserve">Sets the text of the message dialog to be @str, which is marked
37914 up with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup
37915 language&lt;/link&gt;.</doc>
37916         <return-value transfer-ownership="none">
37917           <type name="none" c:type="void"/>
37918         </return-value>
37919         <parameters>
37920           <parameter name="str" transfer-ownership="none">
37921             <doc xml:whitespace="preserve">markup string (see &lt;link linkend="PangoMarkupFormat"&gt;Pango markup format&lt;/link&gt;)</doc>
37922             <type name="utf8" c:type="gchar*"/>
37923           </parameter>
37924         </parameters>
37925       </method>
37926       <method name="format_secondary_text"
37927               c:identifier="gtk_message_dialog_format_secondary_text"
37928               version="2.6"
37929               introspectable="0">
37930         <doc xml:whitespace="preserve">Sets the secondary text of the message dialog to be @message_format 
37931 (with printf()-style).
37932 Note that setting a secondary text makes the primary text become
37933 bold, unless you have provided explicit markup.</doc>
37934         <return-value transfer-ownership="none">
37935           <type name="none" c:type="void"/>
37936         </return-value>
37937         <parameters>
37938           <parameter name="message_format"
37939                      transfer-ownership="none"
37940                      allow-none="1">
37941             <doc xml:whitespace="preserve">printf()-style format string, or %NULL</doc>
37942             <type name="utf8" c:type="gchar*"/>
37943           </parameter>
37944           <parameter transfer-ownership="none">
37945             <varargs>
37946             </varargs>
37947           </parameter>
37948         </parameters>
37949       </method>
37950       <method name="format_secondary_markup"
37951               c:identifier="gtk_message_dialog_format_secondary_markup"
37952               version="2.6"
37953               introspectable="0">
37954         <doc xml:whitespace="preserve">Sets the secondary text of the message dialog to be @message_format (with 
37955 printf()-style), which is marked up with the 
37956 &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
37957 Note that setting a secondary text makes the primary text become
37958 bold, unless you have provided explicit markup.
37959 Due to an oversight, this function does not escape special XML characters
37960 like gtk_message_dialog_new_with_markup() does. Thus, if the arguments 
37961 may contain special XML characters, you should use g_markup_printf_escaped()
37962 to escape it.
37963 &lt;informalexample&gt;&lt;programlisting&gt;
37964 gchar *msg;
37965 msg = g_markup_printf_escaped (message_format, ...);
37966 gtk_message_dialog_format_secondary_markup (message_dialog, "&amp;percnt;s", msg);
37967 g_free (msg);
37968 &lt;/programlisting&gt;&lt;/informalexample&gt;</doc>
37969         <return-value transfer-ownership="none">
37970           <type name="none" c:type="void"/>
37971         </return-value>
37972         <parameters>
37973           <parameter name="message_format" transfer-ownership="none">
37974             <doc xml:whitespace="preserve">printf()-style markup string (see</doc>
37975             <type name="utf8" c:type="gchar*"/>
37976           </parameter>
37977           <parameter transfer-ownership="none">
37978             <varargs>
37979             </varargs>
37980           </parameter>
37981         </parameters>
37982       </method>
37983       <property name="buttons"
37984                 readable="0"
37985                 writable="1"
37986                 construct-only="1"
37987                 transfer-ownership="none">
37988         <type name="ButtonsType" c:type="GtkButtonsType"/>
37989       </property>
37990       <property name="image"
37991                 version="2.10"
37992                 writable="1"
37993                 transfer-ownership="none">
37994         <doc xml:whitespace="preserve">The image for this dialog.</doc>
37995         <type name="Widget" c:type="GtkWidget"/>
37996       </property>
37997       <property name="message-type"
37998                 writable="1"
37999                 construct="1"
38000                 transfer-ownership="none">
38001         <doc xml:whitespace="preserve">The type of the message. The type is used to determine
38002 the image that is shown in the dialog, unless the image is 
38003 explicitly set by the ::image property.</doc>
38004         <type name="MessageType" c:type="GtkMessageType"/>
38005       </property>
38006       <property name="secondary-text"
38007                 version="2.10"
38008                 writable="1"
38009                 transfer-ownership="none">
38010         <doc xml:whitespace="preserve">The secondary text of the message dialog.</doc>
38011         <type name="utf8" c:type="gchararray"/>
38012       </property>
38013       <property name="secondary-use-markup"
38014                 version="2.10"
38015                 writable="1"
38016                 transfer-ownership="none">
38017         <doc xml:whitespace="preserve">%TRUE if the secondary text of the dialog includes Pango markup. 
38018 See pango_parse_markup().</doc>
38019         <type name="boolean" c:type="gboolean"/>
38020       </property>
38021       <property name="text"
38022                 version="2.10"
38023                 writable="1"
38024                 transfer-ownership="none">
38025         <doc xml:whitespace="preserve">The primary text of the message dialog. If the dialog has 
38026 a secondary text, this will appear as the title.</doc>
38027         <type name="utf8" c:type="gchararray"/>
38028       </property>
38029       <property name="use-markup"
38030                 version="2.10"
38031                 writable="1"
38032                 transfer-ownership="none">
38033         <doc xml:whitespace="preserve">%TRUE if the primary text of the dialog includes Pango markup. 
38034 See pango_parse_markup().</doc>
38035         <type name="boolean" c:type="gboolean"/>
38036       </property>
38037       <field name="parent_instance">
38038         <type name="Dialog" c:type="GtkDialog"/>
38039       </field>
38040       <field name="image">
38041         <type name="Widget" c:type="GtkWidget*"/>
38042       </field>
38043       <field name="label">
38044         <type name="Widget" c:type="GtkWidget*"/>
38045       </field>
38046     </class>
38047     <record name="MessageDialogClass"
38048             c:type="GtkMessageDialogClass"
38049             glib:is-gtype-struct-for="MessageDialog">
38050       <field name="parent_class">
38051         <type name="DialogClass" c:type="GtkDialogClass"/>
38052       </field>
38053       <field name="gtk_reserved1">
38054         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
38055           <return-value transfer-ownership="none">
38056             <type name="none" c:type="void"/>
38057           </return-value>
38058         </callback>
38059       </field>
38060       <field name="gtk_reserved2">
38061         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
38062           <return-value transfer-ownership="none">
38063             <type name="none" c:type="void"/>
38064           </return-value>
38065         </callback>
38066       </field>
38067       <field name="gtk_reserved3">
38068         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
38069           <return-value transfer-ownership="none">
38070             <type name="none" c:type="void"/>
38071           </return-value>
38072         </callback>
38073       </field>
38074       <field name="gtk_reserved4">
38075         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
38076           <return-value transfer-ownership="none">
38077             <type name="none" c:type="void"/>
38078           </return-value>
38079         </callback>
38080       </field>
38081     </record>
38082     <enumeration name="MessageType"
38083                  glib:type-name="GtkMessageType"
38084                  glib:get-type="gtk_message_type_get_type"
38085                  c:type="GtkMessageType">
38086       <doc xml:whitespace="preserve">The type of message being displayed in the dialog.</doc>
38087       <member name="info"
38088               value="0"
38089               c:identifier="GTK_MESSAGE_INFO"
38090               glib:nick="info"/>
38091       <member name="warning"
38092               value="1"
38093               c:identifier="GTK_MESSAGE_WARNING"
38094               glib:nick="warning"/>
38095       <member name="question"
38096               value="2"
38097               c:identifier="GTK_MESSAGE_QUESTION"
38098               glib:nick="question"/>
38099       <member name="error"
38100               value="3"
38101               c:identifier="GTK_MESSAGE_ERROR"
38102               glib:nick="error"/>
38103       <member name="other"
38104               value="4"
38105               c:identifier="GTK_MESSAGE_OTHER"
38106               glib:nick="other"/>
38107     </enumeration>
38108     <enumeration name="MetricType"
38109                  glib:type-name="GtkMetricType"
38110                  glib:get-type="gtk_metric_type_get_type"
38111                  c:type="GtkMetricType">
38112       <member name="pixels"
38113               value="0"
38114               c:identifier="GTK_PIXELS"
38115               glib:nick="pixels"/>
38116       <member name="inches"
38117               value="1"
38118               c:identifier="GTK_INCHES"
38119               glib:nick="inches"/>
38120       <member name="centimeters"
38121               value="2"
38122               c:identifier="GTK_CENTIMETERS"
38123               glib:nick="centimeters"/>
38124     </enumeration>
38125     <class name="Misc"
38126            c:type="GtkMisc"
38127            parent="Widget"
38128            abstract="1"
38129            glib:type-name="GtkMisc"
38130            glib:get-type="gtk_misc_get_type"
38131            glib:type-struct="MiscClass">
38132       <implements name="Atk.ImplementorIface"/>
38133       <implements name="Buildable"/>
38134       <method name="set_alignment" c:identifier="gtk_misc_set_alignment">
38135         <return-value transfer-ownership="none">
38136           <type name="none" c:type="void"/>
38137         </return-value>
38138         <parameters>
38139           <parameter name="xalign" transfer-ownership="none">
38140             <type name="float" c:type="gfloat"/>
38141           </parameter>
38142           <parameter name="yalign" transfer-ownership="none">
38143             <type name="float" c:type="gfloat"/>
38144           </parameter>
38145         </parameters>
38146       </method>
38147       <method name="get_alignment" c:identifier="gtk_misc_get_alignment">
38148         <doc xml:whitespace="preserve">Gets the X and Y alignment of the widget within its allocation. 
38149 See gtk_misc_set_alignment().</doc>
38150         <return-value transfer-ownership="none">
38151           <type name="none" c:type="void"/>
38152         </return-value>
38153         <parameters>
38154           <parameter name="xalign"
38155                      direction="out"
38156                      caller-allocates="0"
38157                      transfer-ownership="full"
38158                      allow-none="1">
38159             <doc xml:whitespace="preserve">location to store X alignment of @misc, or %NULL</doc>
38160             <type name="float" c:type="gfloat*"/>
38161           </parameter>
38162           <parameter name="yalign"
38163                      direction="out"
38164                      caller-allocates="0"
38165                      transfer-ownership="full"
38166                      allow-none="1">
38167             <doc xml:whitespace="preserve">location to store Y alignment of @misc, or %NULL</doc>
38168             <type name="float" c:type="gfloat*"/>
38169           </parameter>
38170         </parameters>
38171       </method>
38172       <method name="set_padding" c:identifier="gtk_misc_set_padding">
38173         <return-value transfer-ownership="none">
38174           <type name="none" c:type="void"/>
38175         </return-value>
38176         <parameters>
38177           <parameter name="xpad" transfer-ownership="none">
38178             <type name="int" c:type="gint"/>
38179           </parameter>
38180           <parameter name="ypad" transfer-ownership="none">
38181             <type name="int" c:type="gint"/>
38182           </parameter>
38183         </parameters>
38184       </method>
38185       <method name="get_padding" c:identifier="gtk_misc_get_padding">
38186         <doc xml:whitespace="preserve">Gets the padding in the X and Y directions of the widget. 
38187 See gtk_misc_set_padding().</doc>
38188         <return-value transfer-ownership="none">
38189           <type name="none" c:type="void"/>
38190         </return-value>
38191         <parameters>
38192           <parameter name="xpad"
38193                      direction="out"
38194                      caller-allocates="0"
38195                      transfer-ownership="full"
38196                      allow-none="1">
38197             <doc xml:whitespace="preserve">location to store padding in the X direction, or %NULL</doc>
38198             <type name="int" c:type="gint*"/>
38199           </parameter>
38200           <parameter name="ypad"
38201                      direction="out"
38202                      caller-allocates="0"
38203                      transfer-ownership="full"
38204                      allow-none="1">
38205             <doc xml:whitespace="preserve">location to store padding in the Y direction, or %NULL</doc>
38206             <type name="int" c:type="gint*"/>
38207           </parameter>
38208         </parameters>
38209       </method>
38210       <property name="xalign" writable="1" transfer-ownership="none">
38211         <type name="float" c:type="gfloat"/>
38212       </property>
38213       <property name="xpad" writable="1" transfer-ownership="none">
38214         <type name="int" c:type="gint"/>
38215       </property>
38216       <property name="yalign" writable="1" transfer-ownership="none">
38217         <type name="float" c:type="gfloat"/>
38218       </property>
38219       <property name="ypad" writable="1" transfer-ownership="none">
38220         <type name="int" c:type="gint"/>
38221       </property>
38222       <field name="widget">
38223         <type name="Widget" c:type="GtkWidget"/>
38224       </field>
38225       <field name="xalign">
38226         <type name="float" c:type="gfloat"/>
38227       </field>
38228       <field name="yalign">
38229         <type name="float" c:type="gfloat"/>
38230       </field>
38231       <field name="xpad">
38232         <type name="uint16" c:type="guint16"/>
38233       </field>
38234       <field name="ypad">
38235         <type name="uint16" c:type="guint16"/>
38236       </field>
38237     </class>
38238     <record name="MiscClass"
38239             c:type="GtkMiscClass"
38240             glib:is-gtype-struct-for="Misc">
38241       <field name="parent_class">
38242         <type name="WidgetClass" c:type="GtkWidgetClass"/>
38243       </field>
38244     </record>
38245     <callback name="ModuleDisplayInitFunc" c:type="GtkModuleDisplayInitFunc">
38246       <return-value transfer-ownership="none">
38247         <type name="none" c:type="void"/>
38248       </return-value>
38249       <parameters>
38250         <parameter name="display" transfer-ownership="none">
38251           <type name="Gdk.Display" c:type="GdkDisplay*"/>
38252         </parameter>
38253       </parameters>
38254     </callback>
38255     <callback name="ModuleInitFunc" c:type="GtkModuleInitFunc">
38256       <return-value transfer-ownership="none">
38257         <type name="none" c:type="void"/>
38258       </return-value>
38259       <parameters>
38260         <parameter name="argc"
38261                    direction="out"
38262                    caller-allocates="0"
38263                    transfer-ownership="full">
38264           <type name="int" c:type="gint*"/>
38265         </parameter>
38266         <parameter name="argv" transfer-ownership="none">
38267           <type name="utf8" c:type="gchar***"/>
38268         </parameter>
38269       </parameters>
38270     </callback>
38271     <class name="MountOperation"
38272            c:type="GtkMountOperation"
38273            parent="Gio.MountOperation"
38274            glib:type-name="GtkMountOperation"
38275            glib:get-type="gtk_mount_operation_get_type"
38276            glib:type-struct="MountOperationClass">
38277       <doc xml:whitespace="preserve">This should not be accessed directly. Use the accessor functions below.</doc>
38278       <constructor name="new"
38279                    c:identifier="gtk_mount_operation_new"
38280                    version="2.14">
38281         <doc xml:whitespace="preserve">Creates a new #GtkMountOperation</doc>
38282         <return-value transfer-ownership="full">
38283           <doc xml:whitespace="preserve">a new #GtkMountOperation</doc>
38284           <type name="MountOperation" c:type="GMountOperation*"/>
38285         </return-value>
38286         <parameters>
38287           <parameter name="parent" transfer-ownership="none" allow-none="1">
38288             <doc xml:whitespace="preserve">transient parent of the window, or %NULL</doc>
38289             <type name="Window" c:type="GtkWindow*"/>
38290           </parameter>
38291         </parameters>
38292       </constructor>
38293       <method name="is_showing"
38294               c:identifier="gtk_mount_operation_is_showing"
38295               version="2.14">
38296         <doc xml:whitespace="preserve">Returns whether the #GtkMountOperation is currently displaying
38297 a window.</doc>
38298         <return-value transfer-ownership="none">
38299           <doc xml:whitespace="preserve">%TRUE if @op is currently displaying a window</doc>
38300           <type name="boolean" c:type="gboolean"/>
38301         </return-value>
38302       </method>
38303       <method name="set_parent"
38304               c:identifier="gtk_mount_operation_set_parent"
38305               version="2.14">
38306         <doc xml:whitespace="preserve">Sets the transient parent for windows shown by the
38307 #GtkMountOperation.</doc>
38308         <return-value transfer-ownership="none">
38309           <type name="none" c:type="void"/>
38310         </return-value>
38311         <parameters>
38312           <parameter name="parent" transfer-ownership="none" allow-none="1">
38313             <doc xml:whitespace="preserve">transient parent of the window, or %NULL</doc>
38314             <type name="Window" c:type="GtkWindow*"/>
38315           </parameter>
38316         </parameters>
38317       </method>
38318       <method name="get_parent"
38319               c:identifier="gtk_mount_operation_get_parent"
38320               version="2.14">
38321         <doc xml:whitespace="preserve">Gets the transient parent used by the #GtkMountOperation</doc>
38322         <return-value transfer-ownership="full">
38323           <doc xml:whitespace="preserve">the transient parent for windows shown by @op</doc>
38324           <type name="Window" c:type="GtkWindow*"/>
38325         </return-value>
38326       </method>
38327       <method name="set_screen"
38328               c:identifier="gtk_mount_operation_set_screen"
38329               version="2.14">
38330         <doc xml:whitespace="preserve">Sets the screen to show windows of the #GtkMountOperation on.</doc>
38331         <return-value transfer-ownership="none">
38332           <type name="none" c:type="void"/>
38333         </return-value>
38334         <parameters>
38335           <parameter name="screen" transfer-ownership="none">
38336             <doc xml:whitespace="preserve">a #GdkScreen</doc>
38337             <type name="Gdk.Screen" c:type="GdkScreen*"/>
38338           </parameter>
38339         </parameters>
38340       </method>
38341       <method name="get_screen"
38342               c:identifier="gtk_mount_operation_get_screen"
38343               version="2.14">
38344         <doc xml:whitespace="preserve">Gets the screen on which windows of the #GtkMountOperation 
38345 will be shown.</doc>
38346         <return-value transfer-ownership="full">
38347           <doc xml:whitespace="preserve">the screen on which windows of @op are shown</doc>
38348           <type name="Gdk.Screen" c:type="GdkScreen*"/>
38349         </return-value>
38350       </method>
38351       <property name="is-showing" transfer-ownership="none">
38352         <type name="boolean" c:type="gboolean"/>
38353       </property>
38354       <property name="parent" writable="1" transfer-ownership="none">
38355         <type name="Window" c:type="GtkWindow"/>
38356       </property>
38357       <property name="screen" writable="1" transfer-ownership="none">
38358         <type name="Gdk.Screen" c:type="GdkScreen"/>
38359       </property>
38360       <field name="parent_instance">
38361         <type name="Gio.MountOperation" c:type="GMountOperation"/>
38362       </field>
38363       <field name="priv">
38364         <type name="MountOperationPrivate" c:type="GtkMountOperationPrivate*"/>
38365       </field>
38366     </class>
38367     <record name="MountOperationClass"
38368             c:type="GtkMountOperationClass"
38369             glib:is-gtype-struct-for="MountOperation">
38370       <field name="parent_class">
38371         <type name="Gio.MountOperationClass" c:type="GMountOperationClass"/>
38372       </field>
38373       <field name="gtk_reserved1">
38374         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
38375           <return-value transfer-ownership="none">
38376             <type name="none" c:type="void"/>
38377           </return-value>
38378         </callback>
38379       </field>
38380       <field name="gtk_reserved2">
38381         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
38382           <return-value transfer-ownership="none">
38383             <type name="none" c:type="void"/>
38384           </return-value>
38385         </callback>
38386       </field>
38387       <field name="gtk_reserved3">
38388         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
38389           <return-value transfer-ownership="none">
38390             <type name="none" c:type="void"/>
38391           </return-value>
38392         </callback>
38393       </field>
38394       <field name="gtk_reserved4">
38395         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
38396           <return-value transfer-ownership="none">
38397             <type name="none" c:type="void"/>
38398           </return-value>
38399         </callback>
38400       </field>
38401     </record>
38402     <record name="MountOperationPrivate" c:type="GtkMountOperationPrivate">
38403     </record>
38404     <enumeration name="MovementStep"
38405                  glib:type-name="GtkMovementStep"
38406                  glib:get-type="gtk_movement_step_get_type"
38407                  c:type="GtkMovementStep">
38408       <member name="logical_positions"
38409               value="0"
38410               c:identifier="GTK_MOVEMENT_LOGICAL_POSITIONS"
38411               glib:nick="logical-positions"/>
38412       <member name="visual_positions"
38413               value="1"
38414               c:identifier="GTK_MOVEMENT_VISUAL_POSITIONS"
38415               glib:nick="visual-positions"/>
38416       <member name="words"
38417               value="2"
38418               c:identifier="GTK_MOVEMENT_WORDS"
38419               glib:nick="words"/>
38420       <member name="display_lines"
38421               value="3"
38422               c:identifier="GTK_MOVEMENT_DISPLAY_LINES"
38423               glib:nick="display-lines"/>
38424       <member name="display_line_ends"
38425               value="4"
38426               c:identifier="GTK_MOVEMENT_DISPLAY_LINE_ENDS"
38427               glib:nick="display-line-ends"/>
38428       <member name="paragraphs"
38429               value="5"
38430               c:identifier="GTK_MOVEMENT_PARAGRAPHS"
38431               glib:nick="paragraphs"/>
38432       <member name="paragraph_ends"
38433               value="6"
38434               c:identifier="GTK_MOVEMENT_PARAGRAPH_ENDS"
38435               glib:nick="paragraph-ends"/>
38436       <member name="pages"
38437               value="7"
38438               c:identifier="GTK_MOVEMENT_PAGES"
38439               glib:nick="pages"/>
38440       <member name="buffer_ends"
38441               value="8"
38442               c:identifier="GTK_MOVEMENT_BUFFER_ENDS"
38443               glib:nick="buffer-ends"/>
38444       <member name="horizontal_pages"
38445               value="9"
38446               c:identifier="GTK_MOVEMENT_HORIZONTAL_PAGES"
38447               glib:nick="horizontal-pages"/>
38448     </enumeration>
38449     <class name="Notebook"
38450            c:type="GtkNotebook"
38451            parent="Container"
38452            glib:type-name="GtkNotebook"
38453            glib:get-type="gtk_notebook_get_type"
38454            glib:type-struct="NotebookClass">
38455       <implements name="Atk.ImplementorIface"/>
38456       <implements name="Buildable"/>
38457       <constructor name="new" c:identifier="gtk_notebook_new">
38458         <doc xml:whitespace="preserve">Creates a new #GtkNotebook widget with no pages.</doc>
38459         <return-value transfer-ownership="full">
38460           <doc xml:whitespace="preserve">the newly created #GtkNotebook</doc>
38461           <type name="Notebook" c:type="GtkWidget*"/>
38462         </return-value>
38463       </constructor>
38464       <function name="set_window_creation_hook"
38465                 c:identifier="gtk_notebook_set_window_creation_hook"
38466                 version="2.10">
38467         <doc xml:whitespace="preserve">Installs a global function used to create a window
38468 when a detached tab is dropped in an empty area.</doc>
38469         <return-value transfer-ownership="none">
38470           <type name="none" c:type="void"/>
38471         </return-value>
38472         <parameters>
38473           <parameter name="func"
38474                      transfer-ownership="none"
38475                      allow-none="1"
38476                      scope="notified"
38477                      closure="1"
38478                      destroy="2">
38479             <doc xml:whitespace="preserve">the #GtkNotebookWindowCreationFunc, or %NULL</doc>
38480             <type name="NotebookWindowCreationFunc"
38481                   c:type="GtkNotebookWindowCreationFunc"/>
38482           </parameter>
38483           <parameter name="data" transfer-ownership="none">
38484             <doc xml:whitespace="preserve">user data for @func</doc>
38485             <type name="any" c:type="gpointer"/>
38486           </parameter>
38487           <parameter name="destroy"
38488                      transfer-ownership="none"
38489                      allow-none="1"
38490                      scope="call">
38491             <doc xml:whitespace="preserve">Destroy notifier for @data, or %NULL</doc>
38492             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
38493           </parameter>
38494         </parameters>
38495       </function>
38496       <virtual-method name="insert_page">
38497         <return-value transfer-ownership="none">
38498           <type name="int" c:type="gint"/>
38499         </return-value>
38500         <parameters>
38501           <parameter name="child" transfer-ownership="none">
38502             <type name="Widget" c:type="GtkWidget*"/>
38503           </parameter>
38504           <parameter name="tab_label" transfer-ownership="none">
38505             <type name="Widget" c:type="GtkWidget*"/>
38506           </parameter>
38507           <parameter name="menu_label" transfer-ownership="none">
38508             <type name="Widget" c:type="GtkWidget*"/>
38509           </parameter>
38510           <parameter name="position" transfer-ownership="none">
38511             <type name="int" c:type="gint"/>
38512           </parameter>
38513         </parameters>
38514       </virtual-method>
38515       <method name="append_page" c:identifier="gtk_notebook_append_page">
38516         <doc xml:whitespace="preserve">Appends a page to @notebook.
38517 page in the notebook, or -1 if function fails</doc>
38518         <return-value transfer-ownership="none">
38519           <doc xml:whitespace="preserve">the index (starting from 0) of the appended</doc>
38520           <type name="int" c:type="gint"/>
38521         </return-value>
38522         <parameters>
38523           <parameter name="child" transfer-ownership="none">
38524             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
38525             <type name="Widget" c:type="GtkWidget*"/>
38526           </parameter>
38527           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
38528             <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>
38529             <type name="Widget" c:type="GtkWidget*"/>
38530           </parameter>
38531         </parameters>
38532       </method>
38533       <method name="append_page_menu"
38534               c:identifier="gtk_notebook_append_page_menu">
38535         <doc xml:whitespace="preserve">Appends a page to @notebook, specifying the widget to use as the
38536 label in the popup menu.
38537 page in the notebook, or -1 if function fails</doc>
38538         <return-value transfer-ownership="none">
38539           <doc xml:whitespace="preserve">the index (starting from 0) of the appended</doc>
38540           <type name="int" c:type="gint"/>
38541         </return-value>
38542         <parameters>
38543           <parameter name="child" transfer-ownership="none">
38544             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
38545             <type name="Widget" c:type="GtkWidget*"/>
38546           </parameter>
38547           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
38548             <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>
38549             <type name="Widget" c:type="GtkWidget*"/>
38550           </parameter>
38551           <parameter name="menu_label"
38552                      transfer-ownership="none"
38553                      allow-none="1">
38554             <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>
38555             <type name="Widget" c:type="GtkWidget*"/>
38556           </parameter>
38557         </parameters>
38558       </method>
38559       <method name="prepend_page" c:identifier="gtk_notebook_prepend_page">
38560         <doc xml:whitespace="preserve">Prepends a page to @notebook.
38561 page in the notebook, or -1 if function fails</doc>
38562         <return-value transfer-ownership="none">
38563           <doc xml:whitespace="preserve">the index (starting from 0) of the prepended</doc>
38564           <type name="int" c:type="gint"/>
38565         </return-value>
38566         <parameters>
38567           <parameter name="child" transfer-ownership="none">
38568             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
38569             <type name="Widget" c:type="GtkWidget*"/>
38570           </parameter>
38571           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
38572             <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>
38573             <type name="Widget" c:type="GtkWidget*"/>
38574           </parameter>
38575         </parameters>
38576       </method>
38577       <method name="prepend_page_menu"
38578               c:identifier="gtk_notebook_prepend_page_menu">
38579         <doc xml:whitespace="preserve">Prepends a page to @notebook, specifying the widget to use as the
38580 label in the popup menu.
38581 page in the notebook, or -1 if function fails</doc>
38582         <return-value transfer-ownership="none">
38583           <doc xml:whitespace="preserve">the index (starting from 0) of the prepended</doc>
38584           <type name="int" c:type="gint"/>
38585         </return-value>
38586         <parameters>
38587           <parameter name="child" transfer-ownership="none">
38588             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
38589             <type name="Widget" c:type="GtkWidget*"/>
38590           </parameter>
38591           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
38592             <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>
38593             <type name="Widget" c:type="GtkWidget*"/>
38594           </parameter>
38595           <parameter name="menu_label"
38596                      transfer-ownership="none"
38597                      allow-none="1">
38598             <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>
38599             <type name="Widget" c:type="GtkWidget*"/>
38600           </parameter>
38601         </parameters>
38602       </method>
38603       <method name="insert_page" c:identifier="gtk_notebook_insert_page">
38604         <doc xml:whitespace="preserve">Insert a page into @notebook at the given position.
38605 page in the notebook, or -1 if function fails</doc>
38606         <return-value transfer-ownership="none">
38607           <doc xml:whitespace="preserve">the index (starting from 0) of the inserted</doc>
38608           <type name="int" c:type="gint"/>
38609         </return-value>
38610         <parameters>
38611           <parameter name="child" transfer-ownership="none">
38612             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
38613             <type name="Widget" c:type="GtkWidget*"/>
38614           </parameter>
38615           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
38616             <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>
38617             <type name="Widget" c:type="GtkWidget*"/>
38618           </parameter>
38619           <parameter name="position" transfer-ownership="none">
38620             <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>
38621             <type name="int" c:type="gint"/>
38622           </parameter>
38623         </parameters>
38624       </method>
38625       <method name="insert_page_menu"
38626               c:identifier="gtk_notebook_insert_page_menu">
38627         <doc xml:whitespace="preserve">Insert a page into @notebook at the given position, specifying
38628 the widget to use as the label in the popup menu.
38629 page in the notebook</doc>
38630         <return-value transfer-ownership="none">
38631           <doc xml:whitespace="preserve">the index (starting from 0) of the inserted</doc>
38632           <type name="int" c:type="gint"/>
38633         </return-value>
38634         <parameters>
38635           <parameter name="child" transfer-ownership="none">
38636             <doc xml:whitespace="preserve">the #GtkWidget to use as the contents of the page.</doc>
38637             <type name="Widget" c:type="GtkWidget*"/>
38638           </parameter>
38639           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
38640             <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>
38641             <type name="Widget" c:type="GtkWidget*"/>
38642           </parameter>
38643           <parameter name="menu_label"
38644                      transfer-ownership="none"
38645                      allow-none="1">
38646             <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>
38647             <type name="Widget" c:type="GtkWidget*"/>
38648           </parameter>
38649           <parameter name="position" transfer-ownership="none">
38650             <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>
38651             <type name="int" c:type="gint"/>
38652           </parameter>
38653         </parameters>
38654       </method>
38655       <method name="remove_page" c:identifier="gtk_notebook_remove_page">
38656         <doc xml:whitespace="preserve">Removes a page from the notebook given its index
38657 in the notebook.</doc>
38658         <return-value transfer-ownership="none">
38659           <type name="none" c:type="void"/>
38660         </return-value>
38661         <parameters>
38662           <parameter name="page_num" transfer-ownership="none">
38663             <doc xml:whitespace="preserve">the index of a notebook page, starting from 0. If -1, the last page will be removed.</doc>
38664             <type name="int" c:type="gint"/>
38665           </parameter>
38666         </parameters>
38667       </method>
38668       <method name="set_group_id"
38669               c:identifier="gtk_notebook_set_group_id"
38670               version="2.10"
38671               deprecated="use gtk_notebook_set_group() instead."
38672               deprecated-version="2.12">
38673         <doc xml:whitespace="preserve">Sets an group identificator for @notebook, notebooks sharing
38674 the same group identificator will be able to exchange tabs
38675 via drag and drop. A notebook with group identificator -1 will
38676 not be able to exchange tabs with any other notebook.</doc>
38677         <return-value transfer-ownership="none">
38678           <type name="none" c:type="void"/>
38679         </return-value>
38680         <parameters>
38681           <parameter name="group_id" transfer-ownership="none">
38682             <doc xml:whitespace="preserve">a group identificator, or -1 to unset it</doc>
38683             <type name="int" c:type="gint"/>
38684           </parameter>
38685         </parameters>
38686       </method>
38687       <method name="get_group_id"
38688               c:identifier="gtk_notebook_get_group_id"
38689               version="2.10"
38690               deprecated="use gtk_notebook_get_group() instead."
38691               deprecated-version="2.12">
38692         <doc xml:whitespace="preserve">Gets the current group identificator for @notebook.</doc>
38693         <return-value transfer-ownership="none">
38694           <doc xml:whitespace="preserve">the group identificator, or -1 if none is set.</doc>
38695           <type name="int" c:type="gint"/>
38696         </return-value>
38697       </method>
38698       <method name="set_group"
38699               c:identifier="gtk_notebook_set_group"
38700               version="2.12">
38701         <doc xml:whitespace="preserve">Sets a group identificator pointer for @notebook, notebooks sharing
38702 the same group identificator pointer will be able to exchange tabs
38703 via drag and drop. A notebook with a %NULL group identificator will
38704 not be able to exchange tabs with any other notebook.</doc>
38705         <return-value transfer-ownership="none">
38706           <type name="none" c:type="void"/>
38707         </return-value>
38708         <parameters>
38709           <parameter name="group" transfer-ownership="none" allow-none="1">
38710             <doc xml:whitespace="preserve">a pointer to identify the notebook group, or %NULL to unset it</doc>
38711             <type name="any" c:type="gpointer"/>
38712           </parameter>
38713         </parameters>
38714       </method>
38715       <method name="get_group"
38716               c:identifier="gtk_notebook_get_group"
38717               version="2.12">
38718         <doc xml:whitespace="preserve">Gets the current group identificator pointer for @notebook.</doc>
38719         <return-value transfer-ownership="none">
38720           <doc xml:whitespace="preserve">the group identificator, or %NULL if none is set.</doc>
38721           <type name="any" c:type="gpointer"/>
38722         </return-value>
38723       </method>
38724       <method name="get_current_page"
38725               c:identifier="gtk_notebook_get_current_page">
38726         <doc xml:whitespace="preserve">Returns the page number of the current page.
38727 page in the notebook. If the notebook has no pages, then
38728 -1 will be returned.</doc>
38729         <return-value transfer-ownership="none">
38730           <doc xml:whitespace="preserve">the index (starting from 0) of the current</doc>
38731           <type name="int" c:type="gint"/>
38732         </return-value>
38733       </method>
38734       <method name="get_nth_page" c:identifier="gtk_notebook_get_nth_page">
38735         <doc xml:whitespace="preserve">Returns the child widget contained in page number @page_num.
38736 out of bounds.</doc>
38737         <return-value transfer-ownership="none">
38738           <doc xml:whitespace="preserve">the child widget, or %NULL if @page_num is</doc>
38739           <type name="Widget" c:type="GtkWidget*"/>
38740         </return-value>
38741         <parameters>
38742           <parameter name="page_num" transfer-ownership="none">
38743             <doc xml:whitespace="preserve">the index of a page in the notebook, or -1 to get the last page.</doc>
38744             <type name="int" c:type="gint"/>
38745           </parameter>
38746         </parameters>
38747       </method>
38748       <method name="get_n_pages"
38749               c:identifier="gtk_notebook_get_n_pages"
38750               version="2.2">
38751         <doc xml:whitespace="preserve">Gets the number of pages in a notebook.</doc>
38752         <return-value transfer-ownership="none">
38753           <doc xml:whitespace="preserve">the number of pages in the notebook.</doc>
38754           <type name="int" c:type="gint"/>
38755         </return-value>
38756       </method>
38757       <method name="page_num" c:identifier="gtk_notebook_page_num">
38758         <doc xml:whitespace="preserve">Finds the index of the page which contains the given child
38759 widget.
38760 -1 if @child is not in the notebook.</doc>
38761         <return-value transfer-ownership="none">
38762           <doc xml:whitespace="preserve">the index of the page containing @child, or</doc>
38763           <type name="int" c:type="gint"/>
38764         </return-value>
38765         <parameters>
38766           <parameter name="child" transfer-ownership="none">
38767             <doc xml:whitespace="preserve">a #GtkWidget</doc>
38768             <type name="Widget" c:type="GtkWidget*"/>
38769           </parameter>
38770         </parameters>
38771       </method>
38772       <method name="set_current_page"
38773               c:identifier="gtk_notebook_set_current_page">
38774         <doc xml:whitespace="preserve">Switches to the page number @page_num. 
38775 Note that due to historical reasons, GtkNotebook refuses
38776 to switch to a page unless the child widget is visible. 
38777 Therefore, it is recommended to show child widgets before
38778 adding them to a notebook.</doc>
38779         <return-value transfer-ownership="none">
38780           <type name="none" c:type="void"/>
38781         </return-value>
38782         <parameters>
38783           <parameter name="page_num" transfer-ownership="none">
38784             <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>
38785             <type name="int" c:type="gint"/>
38786           </parameter>
38787         </parameters>
38788       </method>
38789       <method name="next_page" c:identifier="gtk_notebook_next_page">
38790         <doc xml:whitespace="preserve">Switches to the next page. Nothing happens if the current page is
38791 the last page.</doc>
38792         <return-value transfer-ownership="none">
38793           <type name="none" c:type="void"/>
38794         </return-value>
38795       </method>
38796       <method name="prev_page" c:identifier="gtk_notebook_prev_page">
38797         <doc xml:whitespace="preserve">Switches to the previous page. Nothing happens if the current page
38798 is the first page.</doc>
38799         <return-value transfer-ownership="none">
38800           <type name="none" c:type="void"/>
38801         </return-value>
38802       </method>
38803       <method name="set_show_border"
38804               c:identifier="gtk_notebook_set_show_border">
38805         <doc xml:whitespace="preserve">Sets whether a bevel will be drawn around the notebook pages.
38806 This only has a visual effect when the tabs are not shown.
38807 See gtk_notebook_set_show_tabs().</doc>
38808         <return-value transfer-ownership="none">
38809           <type name="none" c:type="void"/>
38810         </return-value>
38811         <parameters>
38812           <parameter name="show_border" transfer-ownership="none">
38813             <doc xml:whitespace="preserve">%TRUE if a bevel should be drawn around the notebook.</doc>
38814             <type name="boolean" c:type="gboolean"/>
38815           </parameter>
38816         </parameters>
38817       </method>
38818       <method name="get_show_border"
38819               c:identifier="gtk_notebook_get_show_border">
38820         <doc xml:whitespace="preserve">Returns whether a bevel will be drawn around the notebook pages. See
38821 gtk_notebook_set_show_border().</doc>
38822         <return-value transfer-ownership="none">
38823           <doc xml:whitespace="preserve">%TRUE if the bevel is drawn</doc>
38824           <type name="boolean" c:type="gboolean"/>
38825         </return-value>
38826       </method>
38827       <method name="set_show_tabs" c:identifier="gtk_notebook_set_show_tabs">
38828         <doc xml:whitespace="preserve">Sets whether to show the tabs for the notebook or not.</doc>
38829         <return-value transfer-ownership="none">
38830           <type name="none" c:type="void"/>
38831         </return-value>
38832         <parameters>
38833           <parameter name="show_tabs" transfer-ownership="none">
38834             <doc xml:whitespace="preserve">%TRUE if the tabs should be shown.</doc>
38835             <type name="boolean" c:type="gboolean"/>
38836           </parameter>
38837         </parameters>
38838       </method>
38839       <method name="get_show_tabs" c:identifier="gtk_notebook_get_show_tabs">
38840         <doc xml:whitespace="preserve">Returns whether the tabs of the notebook are shown. See
38841 gtk_notebook_set_show_tabs().</doc>
38842         <return-value transfer-ownership="none">
38843           <doc xml:whitespace="preserve">%TRUE if the tabs are shown</doc>
38844           <type name="boolean" c:type="gboolean"/>
38845         </return-value>
38846       </method>
38847       <method name="set_tab_pos" c:identifier="gtk_notebook_set_tab_pos">
38848         <doc xml:whitespace="preserve">Sets the edge at which the tabs for switching pages in the
38849 notebook are drawn.</doc>
38850         <return-value transfer-ownership="none">
38851           <type name="none" c:type="void"/>
38852         </return-value>
38853         <parameters>
38854           <parameter name="pos" transfer-ownership="none">
38855             <doc xml:whitespace="preserve">the edge to draw the tabs at.</doc>
38856             <type name="PositionType" c:type="GtkPositionType"/>
38857           </parameter>
38858         </parameters>
38859       </method>
38860       <method name="get_tab_pos" c:identifier="gtk_notebook_get_tab_pos">
38861         <doc xml:whitespace="preserve">Gets the edge at which the tabs for switching pages in the
38862 notebook are drawn.</doc>
38863         <return-value transfer-ownership="full">
38864           <doc xml:whitespace="preserve">the edge at which the tabs are drawn</doc>
38865           <type name="PositionType" c:type="GtkPositionType"/>
38866         </return-value>
38867       </method>
38868       <method name="set_homogeneous_tabs"
38869               c:identifier="gtk_notebook_set_homogeneous_tabs">
38870         <doc xml:whitespace="preserve">Sets whether the tabs must have all the same size or not.</doc>
38871         <return-value transfer-ownership="none">
38872           <type name="none" c:type="void"/>
38873         </return-value>
38874         <parameters>
38875           <parameter name="homogeneous" transfer-ownership="none">
38876             <doc xml:whitespace="preserve">%TRUE if all tabs should be the same size.</doc>
38877             <type name="boolean" c:type="gboolean"/>
38878           </parameter>
38879         </parameters>
38880       </method>
38881       <method name="set_tab_border" c:identifier="gtk_notebook_set_tab_border">
38882         <doc xml:whitespace="preserve">Sets the width the border around the tab labels
38883 in a notebook. This is equivalent to calling
38884 gtk_notebook_set_tab_hborder (@notebook, @border_width) followed
38885 by gtk_notebook_set_tab_vborder (@notebook, @border_width).</doc>
38886         <return-value transfer-ownership="none">
38887           <type name="none" c:type="void"/>
38888         </return-value>
38889         <parameters>
38890           <parameter name="border_width" transfer-ownership="none">
38891             <doc xml:whitespace="preserve">width of the border around the tab labels.</doc>
38892             <type name="uint" c:type="guint"/>
38893           </parameter>
38894         </parameters>
38895       </method>
38896       <method name="set_tab_hborder"
38897               c:identifier="gtk_notebook_set_tab_hborder">
38898         <doc xml:whitespace="preserve">Sets the width of the horizontal border of tab labels.</doc>
38899         <return-value transfer-ownership="none">
38900           <type name="none" c:type="void"/>
38901         </return-value>
38902         <parameters>
38903           <parameter name="tab_hborder" transfer-ownership="none">
38904             <doc xml:whitespace="preserve">width of the horizontal border of tab labels.</doc>
38905             <type name="uint" c:type="guint"/>
38906           </parameter>
38907         </parameters>
38908       </method>
38909       <method name="set_tab_vborder"
38910               c:identifier="gtk_notebook_set_tab_vborder">
38911         <doc xml:whitespace="preserve">Sets the width of the vertical border of tab labels.</doc>
38912         <return-value transfer-ownership="none">
38913           <type name="none" c:type="void"/>
38914         </return-value>
38915         <parameters>
38916           <parameter name="tab_vborder" transfer-ownership="none">
38917             <doc xml:whitespace="preserve">width of the vertical border of tab labels.</doc>
38918             <type name="uint" c:type="guint"/>
38919           </parameter>
38920         </parameters>
38921       </method>
38922       <method name="set_scrollable" c:identifier="gtk_notebook_set_scrollable">
38923         <doc xml:whitespace="preserve">Sets whether the tab label area will have arrows for scrolling if
38924 there are too many tabs to fit in the area.</doc>
38925         <return-value transfer-ownership="none">
38926           <type name="none" c:type="void"/>
38927         </return-value>
38928         <parameters>
38929           <parameter name="scrollable" transfer-ownership="none">
38930             <doc xml:whitespace="preserve">%TRUE if scroll arrows should be added</doc>
38931             <type name="boolean" c:type="gboolean"/>
38932           </parameter>
38933         </parameters>
38934       </method>
38935       <method name="get_scrollable" c:identifier="gtk_notebook_get_scrollable">
38936         <doc xml:whitespace="preserve">Returns whether the tab label area has arrows for scrolling. See
38937 gtk_notebook_set_scrollable().</doc>
38938         <return-value transfer-ownership="none">
38939           <doc xml:whitespace="preserve">%TRUE if arrows for scrolling are present</doc>
38940           <type name="boolean" c:type="gboolean"/>
38941         </return-value>
38942       </method>
38943       <method name="popup_enable" c:identifier="gtk_notebook_popup_enable">
38944         <doc xml:whitespace="preserve">the tab labels, a menu with all the pages will be popped up.</doc>
38945         <return-value transfer-ownership="none">
38946           <type name="none" c:type="void"/>
38947         </return-value>
38948       </method>
38949       <method name="popup_disable" c:identifier="gtk_notebook_popup_disable">
38950         <doc xml:whitespace="preserve">Disables the popup menu.</doc>
38951         <return-value transfer-ownership="none">
38952           <type name="none" c:type="void"/>
38953         </return-value>
38954       </method>
38955       <method name="get_tab_label" c:identifier="gtk_notebook_get_tab_label">
38956         <doc xml:whitespace="preserve">Returns the tab label widget for the page @child. %NULL is returned
38957 if @child is not in @notebook or if no tab label has specifically
38958 been set for @child.</doc>
38959         <return-value transfer-ownership="none">
38960           <doc xml:whitespace="preserve">the tab label</doc>
38961           <type name="Widget" c:type="GtkWidget*"/>
38962         </return-value>
38963         <parameters>
38964           <parameter name="child" transfer-ownership="none">
38965             <doc xml:whitespace="preserve">the page</doc>
38966             <type name="Widget" c:type="GtkWidget*"/>
38967           </parameter>
38968         </parameters>
38969       </method>
38970       <method name="set_tab_label" c:identifier="gtk_notebook_set_tab_label">
38971         <doc xml:whitespace="preserve">Changes the tab label for @child. If %NULL is specified
38972 for @tab_label, then the page will have the label 'page N'.</doc>
38973         <return-value transfer-ownership="none">
38974           <type name="none" c:type="void"/>
38975         </return-value>
38976         <parameters>
38977           <parameter name="child" transfer-ownership="none">
38978             <doc xml:whitespace="preserve">the page</doc>
38979             <type name="Widget" c:type="GtkWidget*"/>
38980           </parameter>
38981           <parameter name="tab_label" transfer-ownership="none" allow-none="1">
38982             <doc xml:whitespace="preserve">the tab label widget to use, or %NULL for default tab label.</doc>
38983             <type name="Widget" c:type="GtkWidget*"/>
38984           </parameter>
38985         </parameters>
38986       </method>
38987       <method name="set_tab_label_text"
38988               c:identifier="gtk_notebook_set_tab_label_text">
38989         <doc xml:whitespace="preserve">Creates a new label and sets it as the tab label for the page
38990 containing @child.</doc>
38991         <return-value transfer-ownership="none">
38992           <type name="none" c:type="void"/>
38993         </return-value>
38994         <parameters>
38995           <parameter name="child" transfer-ownership="none">
38996             <doc xml:whitespace="preserve">the page</doc>
38997             <type name="Widget" c:type="GtkWidget*"/>
38998           </parameter>
38999           <parameter name="tab_text" transfer-ownership="none">
39000             <doc xml:whitespace="preserve">the label text</doc>
39001             <type name="utf8" c:type="gchar*"/>
39002           </parameter>
39003         </parameters>
39004       </method>
39005       <method name="get_tab_label_text"
39006               c:identifier="gtk_notebook_get_tab_label_text">
39007         <doc xml:whitespace="preserve">Retrieves the text of the tab label for the page containing
39008 tab label widget is not a #GtkLabel. The
39009 string is owned by the widget and must not
39010 be freed.</doc>
39011         <return-value transfer-ownership="none">
39012           <doc xml:whitespace="preserve">the text of the tab label, or %NULL if the</doc>
39013           <type name="utf8" c:type="gchar*"/>
39014         </return-value>
39015         <parameters>
39016           <parameter name="child" transfer-ownership="none">
39017             <doc xml:whitespace="preserve">a widget contained in a page of @notebook</doc>
39018             <type name="Widget" c:type="GtkWidget*"/>
39019           </parameter>
39020         </parameters>
39021       </method>
39022       <method name="get_menu_label" c:identifier="gtk_notebook_get_menu_label">
39023         <doc xml:whitespace="preserve">Retrieves the menu label widget of the page containing @child.
39024 notebook page does not have a menu label other
39025 than the default (the tab label).</doc>
39026         <return-value transfer-ownership="full">
39027           <doc xml:whitespace="preserve">the menu label, or %NULL if the</doc>
39028           <type name="Widget" c:type="GtkWidget*"/>
39029         </return-value>
39030         <parameters>
39031           <parameter name="child" transfer-ownership="none">
39032             <doc xml:whitespace="preserve">a widget contained in a page of @notebook</doc>
39033             <type name="Widget" c:type="GtkWidget*"/>
39034           </parameter>
39035         </parameters>
39036       </method>
39037       <method name="set_menu_label" c:identifier="gtk_notebook_set_menu_label">
39038         <doc xml:whitespace="preserve">Changes the menu label for the page containing @child.</doc>
39039         <return-value transfer-ownership="none">
39040           <type name="none" c:type="void"/>
39041         </return-value>
39042         <parameters>
39043           <parameter name="child" transfer-ownership="none">
39044             <doc xml:whitespace="preserve">the child widget</doc>
39045             <type name="Widget" c:type="GtkWidget*"/>
39046           </parameter>
39047           <parameter name="menu_label"
39048                      transfer-ownership="none"
39049                      allow-none="1">
39050             <doc xml:whitespace="preserve">the menu label, or NULL for default</doc>
39051             <type name="Widget" c:type="GtkWidget*"/>
39052           </parameter>
39053         </parameters>
39054       </method>
39055       <method name="set_menu_label_text"
39056               c:identifier="gtk_notebook_set_menu_label_text">
39057         <doc xml:whitespace="preserve">Creates a new label and sets it as the menu label of @child.</doc>
39058         <return-value transfer-ownership="none">
39059           <type name="none" c:type="void"/>
39060         </return-value>
39061         <parameters>
39062           <parameter name="child" transfer-ownership="none">
39063             <doc xml:whitespace="preserve">the child widget</doc>
39064             <type name="Widget" c:type="GtkWidget*"/>
39065           </parameter>
39066           <parameter name="menu_text" transfer-ownership="none">
39067             <doc xml:whitespace="preserve">the label text</doc>
39068             <type name="utf8" c:type="gchar*"/>
39069           </parameter>
39070         </parameters>
39071       </method>
39072       <method name="get_menu_label_text"
39073               c:identifier="gtk_notebook_get_menu_label_text">
39074         <doc xml:whitespace="preserve">Retrieves the text of the menu label for the page containing
39075 widget does not have a menu label other than
39076 the default menu label, or the menu label widget
39077 is not a #GtkLabel. The string is owned by
39078 the widget and must not be freed.</doc>
39079         <return-value transfer-ownership="none">
39080           <doc xml:whitespace="preserve">the text of the tab label, or %NULL if the</doc>
39081           <type name="utf8" c:type="gchar*"/>
39082         </return-value>
39083         <parameters>
39084           <parameter name="child" transfer-ownership="none">
39085             <doc xml:whitespace="preserve">the child widget of a page of the notebook.</doc>
39086             <type name="Widget" c:type="GtkWidget*"/>
39087           </parameter>
39088         </parameters>
39089       </method>
39090       <method name="query_tab_label_packing"
39091               c:identifier="gtk_notebook_query_tab_label_packing"
39092               deprecated="Modify the #GtkNotebook:tab-expand and"
39093               deprecated-version="2.20">
39094         <doc xml:whitespace="preserve">Query the packing attributes for the tab label of the page
39095 containing @child.
39096 #GtkNotebook:tab-fill child properties instead.</doc>
39097         <return-value transfer-ownership="none">
39098           <type name="none" c:type="void"/>
39099         </return-value>
39100         <parameters>
39101           <parameter name="child" transfer-ownership="none">
39102             <doc xml:whitespace="preserve">the page</doc>
39103             <type name="Widget" c:type="GtkWidget*"/>
39104           </parameter>
39105           <parameter name="expand"
39106                      direction="out"
39107                      caller-allocates="0"
39108                      transfer-ownership="full">
39109             <doc xml:whitespace="preserve">location to store the expand value (or NULL)</doc>
39110             <type name="boolean" c:type="gboolean*"/>
39111           </parameter>
39112           <parameter name="fill"
39113                      direction="out"
39114                      caller-allocates="0"
39115                      transfer-ownership="full">
39116             <doc xml:whitespace="preserve">location to store the fill value (or NULL)</doc>
39117             <type name="boolean" c:type="gboolean*"/>
39118           </parameter>
39119           <parameter name="pack_type" transfer-ownership="none">
39120             <doc xml:whitespace="preserve">location to store the pack_type (or NULL)</doc>
39121             <type name="PackType" c:type="GtkPackType*"/>
39122           </parameter>
39123         </parameters>
39124       </method>
39125       <method name="set_tab_label_packing"
39126               c:identifier="gtk_notebook_set_tab_label_packing"
39127               deprecated="Modify the #GtkNotebook:tab-expand and"
39128               deprecated-version="2.20">
39129         <doc xml:whitespace="preserve">Sets the packing parameters for the tab label of the page
39130 containing @child. See gtk_box_pack_start() for the exact meaning
39131 of the parameters.
39132 #GtkNotebook:tab-fill child properties instead.
39133 Modifying the packing of the tab label is a deprecated feature and
39134 shouldn't be done anymore.</doc>
39135         <return-value transfer-ownership="none">
39136           <type name="none" c:type="void"/>
39137         </return-value>
39138         <parameters>
39139           <parameter name="child" transfer-ownership="none">
39140             <doc xml:whitespace="preserve">the child widget</doc>
39141             <type name="Widget" c:type="GtkWidget*"/>
39142           </parameter>
39143           <parameter name="expand" transfer-ownership="none">
39144             <doc xml:whitespace="preserve">whether to expand the tab label or not</doc>
39145             <type name="boolean" c:type="gboolean"/>
39146           </parameter>
39147           <parameter name="fill" transfer-ownership="none">
39148             <doc xml:whitespace="preserve">whether the tab label should fill the allocated area or not</doc>
39149             <type name="boolean" c:type="gboolean"/>
39150           </parameter>
39151           <parameter name="pack_type" transfer-ownership="none">
39152             <doc xml:whitespace="preserve">the position of the tab label</doc>
39153             <type name="PackType" c:type="GtkPackType"/>
39154           </parameter>
39155         </parameters>
39156       </method>
39157       <method name="reorder_child" c:identifier="gtk_notebook_reorder_child">
39158         <doc xml:whitespace="preserve">Reorders the page containing @child, so that it appears in position
39159 children in the list or negative, @child will be moved to the end
39160 of the list.</doc>
39161         <return-value transfer-ownership="none">
39162           <type name="none" c:type="void"/>
39163         </return-value>
39164         <parameters>
39165           <parameter name="child" transfer-ownership="none">
39166             <doc xml:whitespace="preserve">the child to move</doc>
39167             <type name="Widget" c:type="GtkWidget*"/>
39168           </parameter>
39169           <parameter name="position" transfer-ownership="none">
39170             <doc xml:whitespace="preserve">the new position, or -1 to move to the end</doc>
39171             <type name="int" c:type="gint"/>
39172           </parameter>
39173         </parameters>
39174       </method>
39175       <method name="get_tab_reorderable"
39176               c:identifier="gtk_notebook_get_tab_reorderable"
39177               version="2.10">
39178         <doc xml:whitespace="preserve">Gets whether the tab can be reordered via drag and drop or not.</doc>
39179         <return-value transfer-ownership="none">
39180           <doc xml:whitespace="preserve">%TRUE if the tab is reorderable.</doc>
39181           <type name="boolean" c:type="gboolean"/>
39182         </return-value>
39183         <parameters>
39184           <parameter name="child" transfer-ownership="none">
39185             <doc xml:whitespace="preserve">a child #GtkWidget</doc>
39186             <type name="Widget" c:type="GtkWidget*"/>
39187           </parameter>
39188         </parameters>
39189       </method>
39190       <method name="set_tab_reorderable"
39191               c:identifier="gtk_notebook_set_tab_reorderable"
39192               version="2.10">
39193         <doc xml:whitespace="preserve">Sets whether the notebook tab can be reordered
39194 via drag and drop or not.</doc>
39195         <return-value transfer-ownership="none">
39196           <type name="none" c:type="void"/>
39197         </return-value>
39198         <parameters>
39199           <parameter name="child" transfer-ownership="none">
39200             <doc xml:whitespace="preserve">a child #GtkWidget</doc>
39201             <type name="Widget" c:type="GtkWidget*"/>
39202           </parameter>
39203           <parameter name="reorderable" transfer-ownership="none">
39204             <doc xml:whitespace="preserve">whether the tab is reorderable or not.</doc>
39205             <type name="boolean" c:type="gboolean"/>
39206           </parameter>
39207         </parameters>
39208       </method>
39209       <method name="get_tab_detachable"
39210               c:identifier="gtk_notebook_get_tab_detachable"
39211               version="2.10">
39212         <doc xml:whitespace="preserve">Returns whether the tab contents can be detached from @notebook.</doc>
39213         <return-value transfer-ownership="none">
39214           <doc xml:whitespace="preserve">TRUE if the tab is detachable.</doc>
39215           <type name="boolean" c:type="gboolean"/>
39216         </return-value>
39217         <parameters>
39218           <parameter name="child" transfer-ownership="none">
39219             <doc xml:whitespace="preserve">a child #GtkWidget</doc>
39220             <type name="Widget" c:type="GtkWidget*"/>
39221           </parameter>
39222         </parameters>
39223       </method>
39224       <method name="set_tab_detachable"
39225               c:identifier="gtk_notebook_set_tab_detachable"
39226               version="2.10">
39227         <doc xml:whitespace="preserve">Sets whether the tab can be detached from @notebook to another
39228 notebook or widget.
39229 Note that 2 notebooks must share a common group identificator
39230 (see gtk_notebook_set_group_id ()) to allow automatic tabs
39231 interchange between them.
39232 If you want a widget to interact with a notebook through DnD
39233 (i.e.: accept dragged tabs from it) it must be set as a drop
39234 destination and accept the target "GTK_NOTEBOOK_TAB". The notebook
39235 will fill the selection with a GtkWidget** pointing to the child
39236 widget that corresponds to the dropped tab.
39237 |[
39238 static void
39239 on_drop_zone_drag_data_received (GtkWidget        *widget,
39240 GdkDragContext   *context,
39241 gint              x,
39242 gint              y,
39243 GtkSelectionData *selection_data,
39244 guint             info,
39245 guint             time,
39246 gpointer          user_data)
39247 {
39248 GtkWidget *notebook;
39249 GtkWidget **child;
39250 notebook = gtk_drag_get_source_widget (context);
39251 child = (void*) selection_data-&gt;data;
39252 process_widget (*child);
39253 gtk_container_remove (GTK_CONTAINER (notebook), *child);
39254 }
39255 ]|
39256 If you want a notebook to accept drags from other widgets,
39257 you will have to set your own DnD code to do it.</doc>
39258         <return-value transfer-ownership="none">
39259           <type name="none" c:type="void"/>
39260         </return-value>
39261         <parameters>
39262           <parameter name="child" transfer-ownership="none">
39263             <doc xml:whitespace="preserve">a child #GtkWidget</doc>
39264             <type name="Widget" c:type="GtkWidget*"/>
39265           </parameter>
39266           <parameter name="detachable" transfer-ownership="none">
39267             <doc xml:whitespace="preserve">whether the tab is detachable or not</doc>
39268             <type name="boolean" c:type="gboolean"/>
39269           </parameter>
39270         </parameters>
39271       </method>
39272       <method name="get_action_widget"
39273               c:identifier="gtk_notebook_get_action_widget"
39274               version="2.20">
39275         <doc xml:whitespace="preserve">Gets one of the action widgets. See gtk_notebook_set_action_widget().
39276 %NULL when this action widget has not been set</doc>
39277         <return-value transfer-ownership="full">
39278           <doc xml:whitespace="preserve">The action widget with the given @pack_type or</doc>
39279           <type name="Widget" c:type="GtkWidget*"/>
39280         </return-value>
39281         <parameters>
39282           <parameter name="pack_type" transfer-ownership="none">
39283             <doc xml:whitespace="preserve">pack type of the action widget to receive</doc>
39284             <type name="PackType" c:type="GtkPackType"/>
39285           </parameter>
39286         </parameters>
39287       </method>
39288       <method name="set_action_widget"
39289               c:identifier="gtk_notebook_set_action_widget"
39290               version="2.20">
39291         <doc xml:whitespace="preserve">Sets @widget as one of the action widgets. Depending on the pack type
39292 the widget will be placed before or after the tabs. You can use
39293 a #GtkBox if you need to pack more than one widget on the same side.
39294 Note that action widgets are "internal" children of the notebook and thus
39295 not included in the list returned from gtk_container_foreach().</doc>
39296         <return-value transfer-ownership="none">
39297           <type name="none" c:type="void"/>
39298         </return-value>
39299         <parameters>
39300           <parameter name="widget" transfer-ownership="none">
39301             <doc xml:whitespace="preserve">a #GtkWidget</doc>
39302             <type name="Widget" c:type="GtkWidget*"/>
39303           </parameter>
39304           <parameter name="pack_type" transfer-ownership="none">
39305             <doc xml:whitespace="preserve">pack type of the action widget</doc>
39306             <type name="PackType" c:type="GtkPackType"/>
39307           </parameter>
39308         </parameters>
39309       </method>
39310       <property name="enable-popup" writable="1" transfer-ownership="none">
39311         <type name="boolean" c:type="gboolean"/>
39312       </property>
39313       <property name="group"
39314                 version="2.12"
39315                 writable="1"
39316                 transfer-ownership="none">
39317         <doc xml:whitespace="preserve">Group for tabs drag and drop.</doc>
39318         <type name="any" c:type="gpointer"/>
39319       </property>
39320       <property name="group-id" writable="1" transfer-ownership="none">
39321         <type name="int" c:type="gint"/>
39322       </property>
39323       <property name="homogeneous" writable="1" transfer-ownership="none">
39324         <type name="boolean" c:type="gboolean"/>
39325       </property>
39326       <property name="page" writable="1" transfer-ownership="none">
39327         <type name="int" c:type="gint"/>
39328       </property>
39329       <property name="scrollable" writable="1" transfer-ownership="none">
39330         <type name="boolean" c:type="gboolean"/>
39331       </property>
39332       <property name="show-border" writable="1" transfer-ownership="none">
39333         <type name="boolean" c:type="gboolean"/>
39334       </property>
39335       <property name="show-tabs" writable="1" transfer-ownership="none">
39336         <type name="boolean" c:type="gboolean"/>
39337       </property>
39338       <property name="tab-border"
39339                 readable="0"
39340                 writable="1"
39341                 transfer-ownership="none">
39342         <type name="uint" c:type="guint"/>
39343       </property>
39344       <property name="tab-hborder" writable="1" transfer-ownership="none">
39345         <type name="uint" c:type="guint"/>
39346       </property>
39347       <property name="tab-pos" writable="1" transfer-ownership="none">
39348         <type name="PositionType" c:type="GtkPositionType"/>
39349       </property>
39350       <property name="tab-vborder" writable="1" transfer-ownership="none">
39351         <type name="uint" c:type="guint"/>
39352       </property>
39353       <field name="container">
39354         <type name="Container" c:type="GtkContainer"/>
39355       </field>
39356       <field name="cur_page">
39357         <type name="NotebookPage" c:type="GtkNotebookPage*"/>
39358       </field>
39359       <field name="children">
39360         <type name="GLib.List" c:type="GList*">
39361           <type name="any" c:type="gpointer"/>
39362         </type>
39363       </field>
39364       <field name="first_tab">
39365         <type name="GLib.List" c:type="GList*">
39366           <type name="any" c:type="gpointer"/>
39367         </type>
39368       </field>
39369       <field name="focus_tab">
39370         <type name="GLib.List" c:type="GList*">
39371           <type name="any" c:type="gpointer"/>
39372         </type>
39373       </field>
39374       <field name="menu">
39375         <type name="Widget" c:type="GtkWidget*"/>
39376       </field>
39377       <field name="event_window">
39378         <type name="Gdk.Window" c:type="GdkWindow*"/>
39379       </field>
39380       <field name="timer">
39381         <type name="uint32" c:type="guint32"/>
39382       </field>
39383       <field name="tab_hborder">
39384         <type name="uint16" c:type="guint16"/>
39385       </field>
39386       <field name="tab_vborder">
39387         <type name="uint16" c:type="guint16"/>
39388       </field>
39389       <field name="show_tabs" bits="1">
39390         <type name="uint" c:type="guint"/>
39391       </field>
39392       <field name="homogeneous" bits="1">
39393         <type name="uint" c:type="guint"/>
39394       </field>
39395       <field name="show_border" bits="1">
39396         <type name="uint" c:type="guint"/>
39397       </field>
39398       <field name="tab_pos" bits="2">
39399         <type name="uint" c:type="guint"/>
39400       </field>
39401       <field name="scrollable" bits="1">
39402         <type name="uint" c:type="guint"/>
39403       </field>
39404       <field name="in_child" bits="3">
39405         <type name="uint" c:type="guint"/>
39406       </field>
39407       <field name="click_child" bits="3">
39408         <type name="uint" c:type="guint"/>
39409       </field>
39410       <field name="button" bits="2">
39411         <type name="uint" c:type="guint"/>
39412       </field>
39413       <field name="need_timer" bits="1">
39414         <type name="uint" c:type="guint"/>
39415       </field>
39416       <field name="child_has_focus" bits="1">
39417         <type name="uint" c:type="guint"/>
39418       </field>
39419       <field name="have_visible_child" bits="1">
39420         <type name="uint" c:type="guint"/>
39421       </field>
39422       <field name="focus_out" bits="1">
39423         <type name="uint" c:type="guint"/>
39424       </field>
39425       <field name="has_before_previous" bits="1">
39426         <type name="uint" c:type="guint"/>
39427       </field>
39428       <field name="has_before_next" bits="1">
39429         <type name="uint" c:type="guint"/>
39430       </field>
39431       <field name="has_after_previous" bits="1">
39432         <type name="uint" c:type="guint"/>
39433       </field>
39434       <field name="has_after_next" bits="1">
39435         <type name="uint" c:type="guint"/>
39436       </field>
39437       <glib:signal name="change-current-page">
39438         <return-value transfer-ownership="full">
39439           <type name="boolean" c:type="gboolean"/>
39440         </return-value>
39441         <parameters>
39442           <parameter name="object" transfer-ownership="none">
39443             <type name="int" c:type="gint"/>
39444           </parameter>
39445         </parameters>
39446       </glib:signal>
39447       <glib:signal name="create-window" version="2.12">
39448         <doc xml:whitespace="preserve">The ::create-window signal is emitted when a detachable
39449 tab is dropped on the root window. 
39450 A handler for this signal can create a window containing 
39451 a notebook where the tab will be attached. It is also 
39452 responsible for moving/resizing the window and adding the 
39453 necessary properties to the notebook (e.g. the 
39454 #GtkNotebook:group-id ).
39455 The default handler uses the global window creation hook,
39456 if one has been set with gtk_notebook_set_window_creation_hook().</doc>
39457         <return-value transfer-ownership="full">
39458           <doc xml:whitespace="preserve">a #GtkNotebook that @page should be added to, or %NULL.</doc>
39459           <type name="Notebook" c:type="GtkNotebook"/>
39460         </return-value>
39461         <parameters>
39462           <parameter name="page" transfer-ownership="none">
39463             <doc xml:whitespace="preserve">the tab of @notebook that is being detached</doc>
39464             <type name="Widget" c:type="GtkWidget"/>
39465           </parameter>
39466           <parameter name="x" transfer-ownership="none">
39467             <doc xml:whitespace="preserve">the X coordinate where the drop happens</doc>
39468             <type name="int" c:type="gint"/>
39469           </parameter>
39470           <parameter name="y" transfer-ownership="none">
39471             <doc xml:whitespace="preserve">the Y coordinate where the drop happens</doc>
39472             <type name="int" c:type="gint"/>
39473           </parameter>
39474         </parameters>
39475       </glib:signal>
39476       <glib:signal name="focus-tab">
39477         <return-value transfer-ownership="full">
39478           <type name="boolean" c:type="gboolean"/>
39479         </return-value>
39480         <parameters>
39481           <parameter name="object" transfer-ownership="none">
39482             <type name="NotebookTab" c:type="GtkNotebookTab"/>
39483           </parameter>
39484         </parameters>
39485       </glib:signal>
39486       <glib:signal name="move-focus-out">
39487         <return-value transfer-ownership="full">
39488           <type name="none" c:type="void"/>
39489         </return-value>
39490         <parameters>
39491           <parameter name="object" transfer-ownership="none">
39492             <type name="DirectionType" c:type="GtkDirectionType"/>
39493           </parameter>
39494         </parameters>
39495       </glib:signal>
39496       <glib:signal name="page-added" version="2.10">
39497         <doc xml:whitespace="preserve">the ::page-added signal is emitted in the notebook
39498 right after a page is added to the notebook.</doc>
39499         <return-value transfer-ownership="full">
39500           <type name="none" c:type="void"/>
39501         </return-value>
39502         <parameters>
39503           <parameter name="child" transfer-ownership="none">
39504             <doc xml:whitespace="preserve">the child #GtkWidget affected</doc>
39505             <type name="Widget" c:type="GtkWidget"/>
39506           </parameter>
39507           <parameter name="page_num" transfer-ownership="none">
39508             <doc xml:whitespace="preserve">the new page number for @child</doc>
39509             <type name="uint" c:type="guint"/>
39510           </parameter>
39511         </parameters>
39512       </glib:signal>
39513       <glib:signal name="page-removed" version="2.10">
39514         <doc xml:whitespace="preserve">the ::page-removed signal is emitted in the notebook
39515 right after a page is removed from the notebook.</doc>
39516         <return-value transfer-ownership="full">
39517           <type name="none" c:type="void"/>
39518         </return-value>
39519         <parameters>
39520           <parameter name="child" transfer-ownership="none">
39521             <doc xml:whitespace="preserve">the child #GtkWidget affected</doc>
39522             <type name="Widget" c:type="GtkWidget"/>
39523           </parameter>
39524           <parameter name="page_num" transfer-ownership="none">
39525             <doc xml:whitespace="preserve">the @child page number</doc>
39526             <type name="uint" c:type="guint"/>
39527           </parameter>
39528         </parameters>
39529       </glib:signal>
39530       <glib:signal name="page-reordered" version="2.10">
39531         <doc xml:whitespace="preserve">the ::page-reordered signal is emitted in the notebook
39532 right after a page has been reordered.</doc>
39533         <return-value transfer-ownership="full">
39534           <type name="none" c:type="void"/>
39535         </return-value>
39536         <parameters>
39537           <parameter name="child" transfer-ownership="none">
39538             <doc xml:whitespace="preserve">the child #GtkWidget affected</doc>
39539             <type name="Widget" c:type="GtkWidget"/>
39540           </parameter>
39541           <parameter name="page_num" transfer-ownership="none">
39542             <doc xml:whitespace="preserve">the new page number for @child</doc>
39543             <type name="uint" c:type="guint"/>
39544           </parameter>
39545         </parameters>
39546       </glib:signal>
39547       <glib:signal name="reorder-tab">
39548         <return-value transfer-ownership="full">
39549           <type name="boolean" c:type="gboolean"/>
39550         </return-value>
39551         <parameters>
39552           <parameter name="object" transfer-ownership="none">
39553             <type name="DirectionType" c:type="GtkDirectionType"/>
39554           </parameter>
39555           <parameter name="p0" transfer-ownership="none">
39556             <type name="boolean" c:type="gboolean"/>
39557           </parameter>
39558         </parameters>
39559       </glib:signal>
39560       <glib:signal name="select-page">
39561         <return-value transfer-ownership="full">
39562           <type name="boolean" c:type="gboolean"/>
39563         </return-value>
39564         <parameters>
39565           <parameter name="object" transfer-ownership="none">
39566             <type name="boolean" c:type="gboolean"/>
39567           </parameter>
39568         </parameters>
39569       </glib:signal>
39570       <glib:signal name="switch-page">
39571         <return-value transfer-ownership="full">
39572           <type name="none" c:type="void"/>
39573         </return-value>
39574         <parameters>
39575           <parameter name="object" transfer-ownership="none">
39576             <type name="any" c:type="gpointer"/>
39577           </parameter>
39578           <parameter name="p0" transfer-ownership="none">
39579             <type name="uint" c:type="guint"/>
39580           </parameter>
39581         </parameters>
39582       </glib:signal>
39583     </class>
39584     <record name="NotebookClass"
39585             c:type="GtkNotebookClass"
39586             glib:is-gtype-struct-for="Notebook">
39587       <field name="parent_class">
39588         <type name="ContainerClass" c:type="GtkContainerClass"/>
39589       </field>
39590       <field name="switch_page">
39591         <callback name="switch_page" c:type="switch_page">
39592           <return-value transfer-ownership="none">
39593             <type name="none" c:type="void"/>
39594           </return-value>
39595           <parameters>
39596             <parameter name="notebook" transfer-ownership="none">
39597               <type name="Notebook" c:type="GtkNotebook*"/>
39598             </parameter>
39599             <parameter name="page" transfer-ownership="none">
39600               <type name="NotebookPage" c:type="GtkNotebookPage*"/>
39601             </parameter>
39602             <parameter name="page_num" transfer-ownership="none">
39603               <type name="uint" c:type="guint"/>
39604             </parameter>
39605           </parameters>
39606         </callback>
39607       </field>
39608       <field name="select_page">
39609         <callback name="select_page" c:type="select_page">
39610           <return-value transfer-ownership="none">
39611             <type name="boolean" c:type="gboolean"/>
39612           </return-value>
39613           <parameters>
39614             <parameter name="notebook" transfer-ownership="none">
39615               <type name="Notebook" c:type="GtkNotebook*"/>
39616             </parameter>
39617             <parameter name="move_focus" transfer-ownership="none">
39618               <type name="boolean" c:type="gboolean"/>
39619             </parameter>
39620           </parameters>
39621         </callback>
39622       </field>
39623       <field name="focus_tab">
39624         <callback name="focus_tab" c:type="focus_tab">
39625           <return-value transfer-ownership="none">
39626             <type name="boolean" c:type="gboolean"/>
39627           </return-value>
39628           <parameters>
39629             <parameter name="notebook" transfer-ownership="none">
39630               <type name="Notebook" c:type="GtkNotebook*"/>
39631             </parameter>
39632             <parameter name="type" transfer-ownership="none">
39633               <type name="NotebookTab" c:type="GtkNotebookTab"/>
39634             </parameter>
39635           </parameters>
39636         </callback>
39637       </field>
39638       <field name="change_current_page">
39639         <callback name="change_current_page" c:type="change_current_page">
39640           <return-value transfer-ownership="none">
39641             <type name="boolean" c:type="gboolean"/>
39642           </return-value>
39643           <parameters>
39644             <parameter name="notebook" transfer-ownership="none">
39645               <type name="Notebook" c:type="GtkNotebook*"/>
39646             </parameter>
39647             <parameter name="offset" transfer-ownership="none">
39648               <type name="int" c:type="gint"/>
39649             </parameter>
39650           </parameters>
39651         </callback>
39652       </field>
39653       <field name="move_focus_out">
39654         <callback name="move_focus_out" c:type="move_focus_out">
39655           <return-value transfer-ownership="none">
39656             <type name="none" c:type="void"/>
39657           </return-value>
39658           <parameters>
39659             <parameter name="notebook" transfer-ownership="none">
39660               <type name="Notebook" c:type="GtkNotebook*"/>
39661             </parameter>
39662             <parameter name="direction" transfer-ownership="none">
39663               <type name="DirectionType" c:type="GtkDirectionType"/>
39664             </parameter>
39665           </parameters>
39666         </callback>
39667       </field>
39668       <field name="reorder_tab">
39669         <callback name="reorder_tab" c:type="reorder_tab">
39670           <return-value transfer-ownership="none">
39671             <type name="boolean" c:type="gboolean"/>
39672           </return-value>
39673           <parameters>
39674             <parameter name="notebook" transfer-ownership="none">
39675               <type name="Notebook" c:type="GtkNotebook*"/>
39676             </parameter>
39677             <parameter name="direction" transfer-ownership="none">
39678               <type name="DirectionType" c:type="GtkDirectionType"/>
39679             </parameter>
39680             <parameter name="move_to_last" transfer-ownership="none">
39681               <type name="boolean" c:type="gboolean"/>
39682             </parameter>
39683           </parameters>
39684         </callback>
39685       </field>
39686       <field name="insert_page">
39687         <callback name="insert_page" c:type="insert_page">
39688           <return-value transfer-ownership="none">
39689             <type name="int" c:type="gint"/>
39690           </return-value>
39691           <parameters>
39692             <parameter name="notebook" transfer-ownership="none">
39693               <type name="Notebook" c:type="GtkNotebook*"/>
39694             </parameter>
39695             <parameter name="child" transfer-ownership="none">
39696               <type name="Widget" c:type="GtkWidget*"/>
39697             </parameter>
39698             <parameter name="tab_label" transfer-ownership="none">
39699               <type name="Widget" c:type="GtkWidget*"/>
39700             </parameter>
39701             <parameter name="menu_label" transfer-ownership="none">
39702               <type name="Widget" c:type="GtkWidget*"/>
39703             </parameter>
39704             <parameter name="position" transfer-ownership="none">
39705               <type name="int" c:type="gint"/>
39706             </parameter>
39707           </parameters>
39708         </callback>
39709       </field>
39710       <field name="create_window">
39711         <callback name="create_window" c:type="create_window">
39712           <return-value transfer-ownership="full">
39713             <type name="Notebook" c:type="GtkNotebook*"/>
39714           </return-value>
39715           <parameters>
39716             <parameter name="notebook" transfer-ownership="none">
39717               <type name="Notebook" c:type="GtkNotebook*"/>
39718             </parameter>
39719             <parameter name="page" transfer-ownership="none">
39720               <type name="Widget" c:type="GtkWidget*"/>
39721             </parameter>
39722             <parameter name="x" transfer-ownership="none">
39723               <type name="int" c:type="gint"/>
39724             </parameter>
39725             <parameter name="y" transfer-ownership="none">
39726               <type name="int" c:type="gint"/>
39727             </parameter>
39728           </parameters>
39729         </callback>
39730       </field>
39731       <field name="gtk_reserved1">
39732         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
39733           <return-value transfer-ownership="none">
39734             <type name="none" c:type="void"/>
39735           </return-value>
39736         </callback>
39737       </field>
39738     </record>
39739     <record name="NotebookPage" c:type="GtkNotebookPage">
39740     </record>
39741     <enumeration name="NotebookTab"
39742                  glib:type-name="GtkNotebookTab"
39743                  glib:get-type="gtk_notebook_tab_get_type"
39744                  c:type="GtkNotebookTab">
39745       <member name="first"
39746               value="0"
39747               c:identifier="GTK_NOTEBOOK_TAB_FIRST"
39748               glib:nick="first"/>
39749       <member name="last"
39750               value="1"
39751               c:identifier="GTK_NOTEBOOK_TAB_LAST"
39752               glib:nick="last"/>
39753     </enumeration>
39754     <callback name="NotebookWindowCreationFunc"
39755               c:type="GtkNotebookWindowCreationFunc">
39756       <return-value transfer-ownership="full">
39757         <type name="Notebook" c:type="GtkNotebook*"/>
39758       </return-value>
39759       <parameters>
39760         <parameter name="source" transfer-ownership="none">
39761           <type name="Notebook" c:type="GtkNotebook*"/>
39762         </parameter>
39763         <parameter name="page" transfer-ownership="none">
39764           <type name="Widget" c:type="GtkWidget*"/>
39765         </parameter>
39766         <parameter name="x" transfer-ownership="none">
39767           <type name="int" c:type="gint"/>
39768         </parameter>
39769         <parameter name="y" transfer-ownership="none">
39770           <type name="int" c:type="gint"/>
39771         </parameter>
39772         <parameter name="data" transfer-ownership="none">
39773           <type name="any" c:type="gpointer"/>
39774         </parameter>
39775       </parameters>
39776     </callback>
39777     <enumeration name="NumberUpLayout"
39778                  glib:type-name="GtkNumberUpLayout"
39779                  glib:get-type="gtk_number_up_layout_get_type"
39780                  c:type="GtkNumberUpLayout">
39781       <member name="lrtb"
39782               value="0"
39783               c:identifier="GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_TOP_TO_BOTTOM"
39784               glib:nick="lrtb"/>
39785       <member name="lrbt"
39786               value="1"
39787               c:identifier="GTK_NUMBER_UP_LAYOUT_LEFT_TO_RIGHT_BOTTOM_TO_TOP"
39788               glib:nick="lrbt"/>
39789       <member name="rltb"
39790               value="2"
39791               c:identifier="GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_TOP_TO_BOTTOM"
39792               glib:nick="rltb"/>
39793       <member name="rlbt"
39794               value="3"
39795               c:identifier="GTK_NUMBER_UP_LAYOUT_RIGHT_TO_LEFT_BOTTOM_TO_TOP"
39796               glib:nick="rlbt"/>
39797       <member name="tblr"
39798               value="4"
39799               c:identifier="GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_LEFT_TO_RIGHT"
39800               glib:nick="tblr"/>
39801       <member name="tbrl"
39802               value="5"
39803               c:identifier="GTK_NUMBER_UP_LAYOUT_TOP_TO_BOTTOM_RIGHT_TO_LEFT"
39804               glib:nick="tbrl"/>
39805       <member name="btlr"
39806               value="6"
39807               c:identifier="GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_LEFT_TO_RIGHT"
39808               glib:nick="btlr"/>
39809       <member name="btrl"
39810               value="7"
39811               c:identifier="GTK_NUMBER_UP_LAYOUT_BOTTOM_TO_TOP_RIGHT_TO_LEFT"
39812               glib:nick="btrl"/>
39813     </enumeration>
39814     <class name="Object"
39815            c:type="GtkObject"
39816            parent="GObject.InitiallyUnowned"
39817            abstract="1"
39818            glib:type-name="GtkObject"
39819            glib:get-type="gtk_object_get_type"
39820            glib:type-struct="ObjectClass">
39821       <constructor name="new" c:identifier="gtk_object_new" introspectable="0">
39822         <return-value transfer-ownership="full">
39823           <type name="Object" c:type="GtkObject*"/>
39824         </return-value>
39825         <parameters>
39826           <parameter name="type" transfer-ownership="none">
39827             <type name="GType" c:type="GType"/>
39828           </parameter>
39829           <parameter name="first_property_name" transfer-ownership="none">
39830             <type name="utf8" c:type="gchar*"/>
39831           </parameter>
39832           <parameter transfer-ownership="none">
39833             <varargs>
39834             </varargs>
39835           </parameter>
39836         </parameters>
39837       </constructor>
39838       <function name="add_arg_type" c:identifier="gtk_object_add_arg_type">
39839         <return-value transfer-ownership="none">
39840           <type name="none" c:type="void"/>
39841         </return-value>
39842         <parameters>
39843           <parameter name="arg_name" transfer-ownership="none">
39844             <type name="utf8" c:type="gchar*"/>
39845           </parameter>
39846           <parameter name="arg_type" transfer-ownership="none">
39847             <type name="GType" c:type="GType"/>
39848           </parameter>
39849           <parameter name="arg_flags" transfer-ownership="none">
39850             <type name="uint" c:type="guint"/>
39851           </parameter>
39852           <parameter name="arg_id" transfer-ownership="none">
39853             <type name="uint" c:type="guint"/>
39854           </parameter>
39855         </parameters>
39856       </function>
39857       <virtual-method name="set_arg">
39858         <return-value transfer-ownership="none">
39859           <type name="none" c:type="void"/>
39860         </return-value>
39861         <parameters>
39862           <parameter name="arg" transfer-ownership="none">
39863             <type name="Arg" c:type="GtkArg*"/>
39864           </parameter>
39865           <parameter name="arg_id" transfer-ownership="none">
39866             <type name="uint" c:type="guint"/>
39867           </parameter>
39868         </parameters>
39869       </virtual-method>
39870       <virtual-method name="get_arg">
39871         <return-value transfer-ownership="none">
39872           <type name="none" c:type="void"/>
39873         </return-value>
39874         <parameters>
39875           <parameter name="arg" transfer-ownership="none">
39876             <type name="Arg" c:type="GtkArg*"/>
39877           </parameter>
39878           <parameter name="arg_id" transfer-ownership="none">
39879             <type name="uint" c:type="guint"/>
39880           </parameter>
39881         </parameters>
39882       </virtual-method>
39883       <method name="sink" c:identifier="gtk_object_sink">
39884         <return-value transfer-ownership="none">
39885           <type name="none" c:type="void"/>
39886         </return-value>
39887       </method>
39888       <method name="destroy" c:identifier="gtk_object_destroy">
39889         <return-value transfer-ownership="none">
39890           <type name="none" c:type="void"/>
39891         </return-value>
39892       </method>
39893       <method name="ref" c:identifier="gtk_object_ref">
39894         <return-value transfer-ownership="full">
39895           <type name="Object" c:type="GtkObject*"/>
39896         </return-value>
39897       </method>
39898       <method name="unref" c:identifier="gtk_object_unref">
39899         <return-value transfer-ownership="none">
39900           <type name="none" c:type="void"/>
39901         </return-value>
39902       </method>
39903       <method name="weakref" c:identifier="gtk_object_weakref">
39904         <return-value transfer-ownership="none">
39905           <type name="none" c:type="void"/>
39906         </return-value>
39907         <parameters>
39908           <parameter name="notify"
39909                      transfer-ownership="none"
39910                      scope="call"
39911                      closure="2">
39912             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
39913           </parameter>
39914           <parameter name="data" transfer-ownership="none">
39915             <type name="any" c:type="gpointer"/>
39916           </parameter>
39917         </parameters>
39918       </method>
39919       <method name="weakunref" c:identifier="gtk_object_weakunref">
39920         <return-value transfer-ownership="none">
39921           <type name="none" c:type="void"/>
39922         </return-value>
39923         <parameters>
39924           <parameter name="notify"
39925                      transfer-ownership="none"
39926                      scope="call"
39927                      closure="2">
39928             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
39929           </parameter>
39930           <parameter name="data" transfer-ownership="none">
39931             <type name="any" c:type="gpointer"/>
39932           </parameter>
39933         </parameters>
39934       </method>
39935       <method name="set_data" c:identifier="gtk_object_set_data">
39936         <return-value transfer-ownership="none">
39937           <type name="none" c:type="void"/>
39938         </return-value>
39939         <parameters>
39940           <parameter name="key" transfer-ownership="none">
39941             <type name="utf8" c:type="gchar*"/>
39942           </parameter>
39943           <parameter name="data" transfer-ownership="none">
39944             <type name="any" c:type="gpointer"/>
39945           </parameter>
39946         </parameters>
39947       </method>
39948       <method name="set_data_full" c:identifier="gtk_object_set_data_full">
39949         <return-value transfer-ownership="none">
39950           <type name="none" c:type="void"/>
39951         </return-value>
39952         <parameters>
39953           <parameter name="key" transfer-ownership="none">
39954             <type name="utf8" c:type="gchar*"/>
39955           </parameter>
39956           <parameter name="data" transfer-ownership="none">
39957             <type name="any" c:type="gpointer"/>
39958           </parameter>
39959           <parameter name="destroy" transfer-ownership="none" scope="call">
39960             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
39961           </parameter>
39962         </parameters>
39963       </method>
39964       <method name="remove_data" c:identifier="gtk_object_remove_data">
39965         <return-value transfer-ownership="none">
39966           <type name="none" c:type="void"/>
39967         </return-value>
39968         <parameters>
39969           <parameter name="key" transfer-ownership="none">
39970             <type name="utf8" c:type="gchar*"/>
39971           </parameter>
39972         </parameters>
39973       </method>
39974       <method name="get_data" c:identifier="gtk_object_get_data">
39975         <return-value transfer-ownership="none">
39976           <type name="any" c:type="gpointer"/>
39977         </return-value>
39978         <parameters>
39979           <parameter name="key" transfer-ownership="none">
39980             <type name="utf8" c:type="gchar*"/>
39981           </parameter>
39982         </parameters>
39983       </method>
39984       <method name="remove_no_notify"
39985               c:identifier="gtk_object_remove_no_notify">
39986         <return-value transfer-ownership="none">
39987           <type name="none" c:type="void"/>
39988         </return-value>
39989         <parameters>
39990           <parameter name="key" transfer-ownership="none">
39991             <type name="utf8" c:type="gchar*"/>
39992           </parameter>
39993         </parameters>
39994       </method>
39995       <method name="set_user_data" c:identifier="gtk_object_set_user_data">
39996         <return-value transfer-ownership="none">
39997           <type name="none" c:type="void"/>
39998         </return-value>
39999         <parameters>
40000           <parameter name="data" transfer-ownership="none">
40001             <type name="any" c:type="gpointer"/>
40002           </parameter>
40003         </parameters>
40004       </method>
40005       <method name="get_user_data" c:identifier="gtk_object_get_user_data">
40006         <return-value transfer-ownership="none">
40007           <type name="any" c:type="gpointer"/>
40008         </return-value>
40009       </method>
40010       <method name="set_data_by_id" c:identifier="gtk_object_set_data_by_id">
40011         <return-value transfer-ownership="none">
40012           <type name="none" c:type="void"/>
40013         </return-value>
40014         <parameters>
40015           <parameter name="data_id" transfer-ownership="none">
40016             <type name="GLib.Quark" c:type="GQuark"/>
40017           </parameter>
40018           <parameter name="data" transfer-ownership="none">
40019             <type name="any" c:type="gpointer"/>
40020           </parameter>
40021         </parameters>
40022       </method>
40023       <method name="set_data_by_id_full"
40024               c:identifier="gtk_object_set_data_by_id_full">
40025         <return-value transfer-ownership="none">
40026           <type name="none" c:type="void"/>
40027         </return-value>
40028         <parameters>
40029           <parameter name="data_id" transfer-ownership="none">
40030             <type name="GLib.Quark" c:type="GQuark"/>
40031           </parameter>
40032           <parameter name="data" transfer-ownership="none">
40033             <type name="any" c:type="gpointer"/>
40034           </parameter>
40035           <parameter name="destroy" transfer-ownership="none" scope="call">
40036             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
40037           </parameter>
40038         </parameters>
40039       </method>
40040       <method name="get_data_by_id" c:identifier="gtk_object_get_data_by_id">
40041         <return-value transfer-ownership="none">
40042           <type name="any" c:type="gpointer"/>
40043         </return-value>
40044         <parameters>
40045           <parameter name="data_id" transfer-ownership="none">
40046             <type name="GLib.Quark" c:type="GQuark"/>
40047           </parameter>
40048         </parameters>
40049       </method>
40050       <method name="remove_data_by_id"
40051               c:identifier="gtk_object_remove_data_by_id">
40052         <return-value transfer-ownership="none">
40053           <type name="none" c:type="void"/>
40054         </return-value>
40055         <parameters>
40056           <parameter name="data_id" transfer-ownership="none">
40057             <type name="GLib.Quark" c:type="GQuark"/>
40058           </parameter>
40059         </parameters>
40060       </method>
40061       <method name="remove_no_notify_by_id"
40062               c:identifier="gtk_object_remove_no_notify_by_id">
40063         <return-value transfer-ownership="none">
40064           <type name="none" c:type="void"/>
40065         </return-value>
40066         <parameters>
40067           <parameter name="key_id" transfer-ownership="none">
40068             <type name="GLib.Quark" c:type="GQuark"/>
40069           </parameter>
40070         </parameters>
40071       </method>
40072       <method name="get" c:identifier="gtk_object_get" introspectable="0">
40073         <return-value transfer-ownership="none">
40074           <type name="none" c:type="void"/>
40075         </return-value>
40076         <parameters>
40077           <parameter name="first_property_name" transfer-ownership="none">
40078             <type name="utf8" c:type="gchar*"/>
40079           </parameter>
40080           <parameter transfer-ownership="none">
40081             <varargs>
40082             </varargs>
40083           </parameter>
40084         </parameters>
40085       </method>
40086       <method name="set" c:identifier="gtk_object_set" introspectable="0">
40087         <return-value transfer-ownership="none">
40088           <type name="none" c:type="void"/>
40089         </return-value>
40090         <parameters>
40091           <parameter name="first_property_name" transfer-ownership="none">
40092             <type name="utf8" c:type="gchar*"/>
40093           </parameter>
40094           <parameter transfer-ownership="none">
40095             <varargs>
40096             </varargs>
40097           </parameter>
40098         </parameters>
40099       </method>
40100       <property name="user-data" writable="1" transfer-ownership="none">
40101         <type name="any" c:type="gpointer"/>
40102       </property>
40103       <field name="parent_instance">
40104         <type name="GObject.InitiallyUnowned" c:type="GInitiallyUnowned"/>
40105       </field>
40106       <field name="flags">
40107         <type name="uint32" c:type="guint32"/>
40108       </field>
40109       <glib:signal name="destroy">
40110         <return-value transfer-ownership="full">
40111           <type name="none" c:type="void"/>
40112         </return-value>
40113       </glib:signal>
40114     </class>
40115     <record name="ObjectClass"
40116             c:type="GtkObjectClass"
40117             glib:is-gtype-struct-for="Object">
40118       <field name="parent_class">
40119         <type name="GObject.InitiallyUnownedClass"
40120               c:type="GInitiallyUnownedClass"/>
40121       </field>
40122       <field name="set_arg">
40123         <callback name="set_arg" c:type="set_arg">
40124           <return-value transfer-ownership="none">
40125             <type name="none" c:type="void"/>
40126           </return-value>
40127           <parameters>
40128             <parameter name="object" transfer-ownership="none">
40129               <type name="Object" c:type="GtkObject*"/>
40130             </parameter>
40131             <parameter name="arg" transfer-ownership="none">
40132               <type name="Arg" c:type="GtkArg*"/>
40133             </parameter>
40134             <parameter name="arg_id" transfer-ownership="none">
40135               <type name="uint" c:type="guint"/>
40136             </parameter>
40137           </parameters>
40138         </callback>
40139       </field>
40140       <field name="get_arg">
40141         <callback name="get_arg" c:type="get_arg">
40142           <return-value transfer-ownership="none">
40143             <type name="none" c:type="void"/>
40144           </return-value>
40145           <parameters>
40146             <parameter name="object" transfer-ownership="none">
40147               <type name="Object" c:type="GtkObject*"/>
40148             </parameter>
40149             <parameter name="arg" transfer-ownership="none">
40150               <type name="Arg" c:type="GtkArg*"/>
40151             </parameter>
40152             <parameter name="arg_id" transfer-ownership="none">
40153               <type name="uint" c:type="guint"/>
40154             </parameter>
40155           </parameters>
40156         </callback>
40157       </field>
40158       <field name="destroy">
40159         <callback name="destroy" c:type="destroy">
40160           <return-value transfer-ownership="none">
40161             <type name="none" c:type="void"/>
40162           </return-value>
40163           <parameters>
40164             <parameter name="object" transfer-ownership="none">
40165               <type name="Object" c:type="GtkObject*"/>
40166             </parameter>
40167           </parameters>
40168         </callback>
40169       </field>
40170     </record>
40171     <bitfield name="ObjectFlags"
40172               glib:type-name="GtkObjectFlags"
40173               glib:get-type="gtk_object_flags_get_type"
40174               c:type="GtkObjectFlags">
40175       <member name="in_destruction"
40176               value="1"
40177               c:identifier="GTK_IN_DESTRUCTION"
40178               glib:nick="in-destruction"/>
40179       <member name="floating"
40180               value="2"
40181               c:identifier="GTK_FLOATING"
40182               glib:nick="floating"/>
40183       <member name="reserved_1"
40184               value="4"
40185               c:identifier="GTK_RESERVED_1"
40186               glib:nick="reserved-1"/>
40187       <member name="reserved_2"
40188               value="8"
40189               c:identifier="GTK_RESERVED_2"
40190               glib:nick="reserved-2"/>
40191     </bitfield>
40192     <class name="OffscreenWindow"
40193            c:type="GtkOffscreenWindow"
40194            parent="Window"
40195            glib:type-name="GtkOffscreenWindow"
40196            glib:get-type="gtk_offscreen_window_get_type"
40197            glib:type-struct="OffscreenWindowClass">
40198       <implements name="Atk.ImplementorIface"/>
40199       <implements name="Buildable"/>
40200       <constructor name="new"
40201                    c:identifier="gtk_offscreen_window_new"
40202                    version="2.20">
40203         <doc xml:whitespace="preserve">Creates a toplevel container widget that is used to retrieve
40204 snapshots of widgets without showing them on the screen.  For
40205 widgets that are on the screen and part of a normal widget
40206 hierarchy, gtk_widget_get_snapshot() can be used instead.</doc>
40207         <return-value transfer-ownership="full">
40208           <doc xml:whitespace="preserve">A pointer to a #GtkWidget</doc>
40209           <type name="OffscreenWindow" c:type="GtkWidget*"/>
40210         </return-value>
40211       </constructor>
40212       <method name="get_pixmap"
40213               c:identifier="gtk_offscreen_window_get_pixmap"
40214               version="2.20">
40215         <doc xml:whitespace="preserve">Retrieves a snapshot of the contained widget in the form of
40216 a #GdkPixmap.  If you need to keep this around over window
40217 resizes then you should add a reference to it.</doc>
40218         <return-value transfer-ownership="full">
40219           <doc xml:whitespace="preserve">A #GdkPixmap pointer to the offscreen pixmap, or %NULL.</doc>
40220           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
40221         </return-value>
40222       </method>
40223       <method name="get_pixbuf"
40224               c:identifier="gtk_offscreen_window_get_pixbuf"
40225               version="2.20">
40226         <doc xml:whitespace="preserve">Retrieves a snapshot of the contained widget in the form of
40227 a #GdkPixbuf.  This is a new pixbuf with a reference count of 1,
40228 and the application should unreference it once it is no longer
40229 needed.</doc>
40230         <return-value transfer-ownership="full">
40231           <doc xml:whitespace="preserve">A #GdkPixbuf pointer, or %NULL.</doc>
40232           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
40233         </return-value>
40234       </method>
40235       <field name="parent_object">
40236         <type name="Window" c:type="GtkWindow"/>
40237       </field>
40238     </class>
40239     <record name="OffscreenWindowClass"
40240             c:type="GtkOffscreenWindowClass"
40241             glib:is-gtype-struct-for="OffscreenWindow">
40242       <field name="parent_class">
40243         <type name="WindowClass" c:type="GtkWindowClass"/>
40244       </field>
40245     </record>
40246     <class name="OldEditable"
40247            c:type="GtkOldEditable"
40248            parent="Widget"
40249            abstract="1"
40250            glib:type-name="GtkOldEditable"
40251            glib:get-type="gtk_old_editable_get_type"
40252            glib:type-struct="OldEditableClass">
40253       <implements name="Atk.ImplementorIface"/>
40254       <implements name="Buildable"/>
40255       <implements name="Editable"/>
40256       <virtual-method name="update_text">
40257         <return-value transfer-ownership="none">
40258           <type name="none" c:type="void"/>
40259         </return-value>
40260         <parameters>
40261           <parameter name="start_pos" transfer-ownership="none">
40262             <type name="int" c:type="gint"/>
40263           </parameter>
40264           <parameter name="end_pos" transfer-ownership="none">
40265             <type name="int" c:type="gint"/>
40266           </parameter>
40267         </parameters>
40268       </virtual-method>
40269       <virtual-method name="get_chars">
40270         <return-value transfer-ownership="full">
40271           <type name="utf8" c:type="gchar*"/>
40272         </return-value>
40273         <parameters>
40274           <parameter name="start_pos" transfer-ownership="none">
40275             <type name="int" c:type="gint"/>
40276           </parameter>
40277           <parameter name="end_pos" transfer-ownership="none">
40278             <type name="int" c:type="gint"/>
40279           </parameter>
40280         </parameters>
40281       </virtual-method>
40282       <virtual-method name="set_selection">
40283         <return-value transfer-ownership="none">
40284           <type name="none" c:type="void"/>
40285         </return-value>
40286         <parameters>
40287           <parameter name="start_pos" transfer-ownership="none">
40288             <type name="int" c:type="gint"/>
40289           </parameter>
40290           <parameter name="end_pos" transfer-ownership="none">
40291             <type name="int" c:type="gint"/>
40292           </parameter>
40293         </parameters>
40294       </virtual-method>
40295       <virtual-method name="set_position">
40296         <return-value transfer-ownership="none">
40297           <type name="none" c:type="void"/>
40298         </return-value>
40299         <parameters>
40300           <parameter name="position" transfer-ownership="none">
40301             <type name="int" c:type="gint"/>
40302           </parameter>
40303         </parameters>
40304       </virtual-method>
40305       <method name="claim_selection"
40306               c:identifier="gtk_old_editable_claim_selection">
40307         <doc xml:whitespace="preserve">Claims or gives up ownership of the selection.</doc>
40308         <return-value transfer-ownership="none">
40309           <type name="none" c:type="void"/>
40310         </return-value>
40311         <parameters>
40312           <parameter name="claim" transfer-ownership="none">
40313             <doc xml:whitespace="preserve">if %TRUE, claim ownership of the selection, if %FALSE, give up ownership</doc>
40314             <type name="boolean" c:type="gboolean"/>
40315           </parameter>
40316           <parameter name="time_" transfer-ownership="none">
40317             <doc xml:whitespace="preserve">timestamp for this operation</doc>
40318             <type name="uint32" c:type="guint32"/>
40319           </parameter>
40320         </parameters>
40321       </method>
40322       <method name="changed" c:identifier="gtk_old_editable_changed">
40323         <doc xml:whitespace="preserve">Emits the ::changed signal on @old_editable.</doc>
40324         <return-value transfer-ownership="none">
40325           <type name="none" c:type="void"/>
40326         </return-value>
40327       </method>
40328       <property name="editable" writable="1" transfer-ownership="none">
40329         <type name="boolean" c:type="gboolean"/>
40330       </property>
40331       <property name="text-position" writable="1" transfer-ownership="none">
40332         <type name="int" c:type="gint"/>
40333       </property>
40334       <field name="widget">
40335         <type name="Widget" c:type="GtkWidget"/>
40336       </field>
40337       <field name="current_pos">
40338         <type name="uint" c:type="guint"/>
40339       </field>
40340       <field name="selection_start_pos">
40341         <type name="uint" c:type="guint"/>
40342       </field>
40343       <field name="selection_end_pos">
40344         <type name="uint" c:type="guint"/>
40345       </field>
40346       <field name="has_selection" bits="1">
40347         <type name="uint" c:type="guint"/>
40348       </field>
40349       <field name="editable" bits="1">
40350         <type name="uint" c:type="guint"/>
40351       </field>
40352       <field name="visible" bits="1">
40353         <type name="uint" c:type="guint"/>
40354       </field>
40355       <field name="clipboard_text">
40356         <type name="utf8" c:type="gchar*"/>
40357       </field>
40358       <glib:signal name="activate">
40359         <return-value transfer-ownership="full">
40360           <type name="none" c:type="void"/>
40361         </return-value>
40362       </glib:signal>
40363       <glib:signal name="copy-clipboard">
40364         <return-value transfer-ownership="full">
40365           <type name="none" c:type="void"/>
40366         </return-value>
40367       </glib:signal>
40368       <glib:signal name="cut-clipboard">
40369         <return-value transfer-ownership="full">
40370           <type name="none" c:type="void"/>
40371         </return-value>
40372       </glib:signal>
40373       <glib:signal name="kill-char">
40374         <return-value transfer-ownership="full">
40375           <type name="none" c:type="void"/>
40376         </return-value>
40377         <parameters>
40378           <parameter name="object" transfer-ownership="none">
40379             <type name="int" c:type="gint"/>
40380           </parameter>
40381         </parameters>
40382       </glib:signal>
40383       <glib:signal name="kill-line">
40384         <return-value transfer-ownership="full">
40385           <type name="none" c:type="void"/>
40386         </return-value>
40387         <parameters>
40388           <parameter name="object" transfer-ownership="none">
40389             <type name="int" c:type="gint"/>
40390           </parameter>
40391         </parameters>
40392       </glib:signal>
40393       <glib:signal name="kill-word">
40394         <return-value transfer-ownership="full">
40395           <type name="none" c:type="void"/>
40396         </return-value>
40397         <parameters>
40398           <parameter name="object" transfer-ownership="none">
40399             <type name="int" c:type="gint"/>
40400           </parameter>
40401         </parameters>
40402       </glib:signal>
40403       <glib:signal name="move-cursor">
40404         <return-value transfer-ownership="full">
40405           <type name="none" c:type="void"/>
40406         </return-value>
40407         <parameters>
40408           <parameter name="object" transfer-ownership="none">
40409             <type name="int" c:type="gint"/>
40410           </parameter>
40411           <parameter name="p0" transfer-ownership="none">
40412             <type name="int" c:type="gint"/>
40413           </parameter>
40414         </parameters>
40415       </glib:signal>
40416       <glib:signal name="move-page">
40417         <return-value transfer-ownership="full">
40418           <type name="none" c:type="void"/>
40419         </return-value>
40420         <parameters>
40421           <parameter name="object" transfer-ownership="none">
40422             <type name="int" c:type="gint"/>
40423           </parameter>
40424           <parameter name="p0" transfer-ownership="none">
40425             <type name="int" c:type="gint"/>
40426           </parameter>
40427         </parameters>
40428       </glib:signal>
40429       <glib:signal name="move-to-column">
40430         <return-value transfer-ownership="full">
40431           <type name="none" c:type="void"/>
40432         </return-value>
40433         <parameters>
40434           <parameter name="object" transfer-ownership="none">
40435             <type name="int" c:type="gint"/>
40436           </parameter>
40437         </parameters>
40438       </glib:signal>
40439       <glib:signal name="move-to-row">
40440         <return-value transfer-ownership="full">
40441           <type name="none" c:type="void"/>
40442         </return-value>
40443         <parameters>
40444           <parameter name="object" transfer-ownership="none">
40445             <type name="int" c:type="gint"/>
40446           </parameter>
40447         </parameters>
40448       </glib:signal>
40449       <glib:signal name="move-word">
40450         <return-value transfer-ownership="full">
40451           <type name="none" c:type="void"/>
40452         </return-value>
40453         <parameters>
40454           <parameter name="object" transfer-ownership="none">
40455             <type name="int" c:type="gint"/>
40456           </parameter>
40457         </parameters>
40458       </glib:signal>
40459       <glib:signal name="paste-clipboard">
40460         <return-value transfer-ownership="full">
40461           <type name="none" c:type="void"/>
40462         </return-value>
40463       </glib:signal>
40464       <glib:signal name="set-editable">
40465         <return-value transfer-ownership="full">
40466           <type name="none" c:type="void"/>
40467         </return-value>
40468         <parameters>
40469           <parameter name="object" transfer-ownership="none">
40470             <type name="boolean" c:type="gboolean"/>
40471           </parameter>
40472         </parameters>
40473       </glib:signal>
40474     </class>
40475     <record name="OldEditableClass"
40476             c:type="GtkOldEditableClass"
40477             glib:is-gtype-struct-for="OldEditable">
40478       <field name="parent_class">
40479         <type name="WidgetClass" c:type="GtkWidgetClass"/>
40480       </field>
40481       <field name="activate">
40482         <callback name="activate" c:type="activate">
40483           <return-value transfer-ownership="none">
40484             <type name="none" c:type="void"/>
40485           </return-value>
40486           <parameters>
40487             <parameter name="editable" transfer-ownership="none">
40488               <type name="OldEditable" c:type="GtkOldEditable*"/>
40489             </parameter>
40490           </parameters>
40491         </callback>
40492       </field>
40493       <field name="set_editable">
40494         <callback name="set_editable" c:type="set_editable">
40495           <return-value transfer-ownership="none">
40496             <type name="none" c:type="void"/>
40497           </return-value>
40498           <parameters>
40499             <parameter name="editable" transfer-ownership="none">
40500               <type name="OldEditable" c:type="GtkOldEditable*"/>
40501             </parameter>
40502             <parameter name="is_editable" transfer-ownership="none">
40503               <type name="boolean" c:type="gboolean"/>
40504             </parameter>
40505           </parameters>
40506         </callback>
40507       </field>
40508       <field name="move_cursor">
40509         <callback name="move_cursor" c:type="move_cursor">
40510           <return-value transfer-ownership="none">
40511             <type name="none" c:type="void"/>
40512           </return-value>
40513           <parameters>
40514             <parameter name="editable" transfer-ownership="none">
40515               <type name="OldEditable" c:type="GtkOldEditable*"/>
40516             </parameter>
40517             <parameter name="x" transfer-ownership="none">
40518               <type name="int" c:type="gint"/>
40519             </parameter>
40520             <parameter name="y" transfer-ownership="none">
40521               <type name="int" c:type="gint"/>
40522             </parameter>
40523           </parameters>
40524         </callback>
40525       </field>
40526       <field name="move_word">
40527         <callback name="move_word" c:type="move_word">
40528           <return-value transfer-ownership="none">
40529             <type name="none" c:type="void"/>
40530           </return-value>
40531           <parameters>
40532             <parameter name="editable" transfer-ownership="none">
40533               <type name="OldEditable" c:type="GtkOldEditable*"/>
40534             </parameter>
40535             <parameter name="n" transfer-ownership="none">
40536               <type name="int" c:type="gint"/>
40537             </parameter>
40538           </parameters>
40539         </callback>
40540       </field>
40541       <field name="move_page">
40542         <callback name="move_page" c:type="move_page">
40543           <return-value transfer-ownership="none">
40544             <type name="none" c:type="void"/>
40545           </return-value>
40546           <parameters>
40547             <parameter name="editable" transfer-ownership="none">
40548               <type name="OldEditable" c:type="GtkOldEditable*"/>
40549             </parameter>
40550             <parameter name="x" transfer-ownership="none">
40551               <type name="int" c:type="gint"/>
40552             </parameter>
40553             <parameter name="y" transfer-ownership="none">
40554               <type name="int" c:type="gint"/>
40555             </parameter>
40556           </parameters>
40557         </callback>
40558       </field>
40559       <field name="move_to_row">
40560         <callback name="move_to_row" c:type="move_to_row">
40561           <return-value transfer-ownership="none">
40562             <type name="none" c:type="void"/>
40563           </return-value>
40564           <parameters>
40565             <parameter name="editable" transfer-ownership="none">
40566               <type name="OldEditable" c:type="GtkOldEditable*"/>
40567             </parameter>
40568             <parameter name="row" transfer-ownership="none">
40569               <type name="int" c:type="gint"/>
40570             </parameter>
40571           </parameters>
40572         </callback>
40573       </field>
40574       <field name="move_to_column">
40575         <callback name="move_to_column" c:type="move_to_column">
40576           <return-value transfer-ownership="none">
40577             <type name="none" c:type="void"/>
40578           </return-value>
40579           <parameters>
40580             <parameter name="editable" transfer-ownership="none">
40581               <type name="OldEditable" c:type="GtkOldEditable*"/>
40582             </parameter>
40583             <parameter name="row" transfer-ownership="none">
40584               <type name="int" c:type="gint"/>
40585             </parameter>
40586           </parameters>
40587         </callback>
40588       </field>
40589       <field name="kill_char">
40590         <callback name="kill_char" c:type="kill_char">
40591           <return-value transfer-ownership="none">
40592             <type name="none" c:type="void"/>
40593           </return-value>
40594           <parameters>
40595             <parameter name="editable" transfer-ownership="none">
40596               <type name="OldEditable" c:type="GtkOldEditable*"/>
40597             </parameter>
40598             <parameter name="direction" transfer-ownership="none">
40599               <type name="int" c:type="gint"/>
40600             </parameter>
40601           </parameters>
40602         </callback>
40603       </field>
40604       <field name="kill_word">
40605         <callback name="kill_word" c:type="kill_word">
40606           <return-value transfer-ownership="none">
40607             <type name="none" c:type="void"/>
40608           </return-value>
40609           <parameters>
40610             <parameter name="editable" transfer-ownership="none">
40611               <type name="OldEditable" c:type="GtkOldEditable*"/>
40612             </parameter>
40613             <parameter name="direction" transfer-ownership="none">
40614               <type name="int" c:type="gint"/>
40615             </parameter>
40616           </parameters>
40617         </callback>
40618       </field>
40619       <field name="kill_line">
40620         <callback name="kill_line" c:type="kill_line">
40621           <return-value transfer-ownership="none">
40622             <type name="none" c:type="void"/>
40623           </return-value>
40624           <parameters>
40625             <parameter name="editable" transfer-ownership="none">
40626               <type name="OldEditable" c:type="GtkOldEditable*"/>
40627             </parameter>
40628             <parameter name="direction" transfer-ownership="none">
40629               <type name="int" c:type="gint"/>
40630             </parameter>
40631           </parameters>
40632         </callback>
40633       </field>
40634       <field name="cut_clipboard">
40635         <callback name="cut_clipboard" c:type="cut_clipboard">
40636           <return-value transfer-ownership="none">
40637             <type name="none" c:type="void"/>
40638           </return-value>
40639           <parameters>
40640             <parameter name="editable" transfer-ownership="none">
40641               <type name="OldEditable" c:type="GtkOldEditable*"/>
40642             </parameter>
40643           </parameters>
40644         </callback>
40645       </field>
40646       <field name="copy_clipboard">
40647         <callback name="copy_clipboard" c:type="copy_clipboard">
40648           <return-value transfer-ownership="none">
40649             <type name="none" c:type="void"/>
40650           </return-value>
40651           <parameters>
40652             <parameter name="editable" transfer-ownership="none">
40653               <type name="OldEditable" c:type="GtkOldEditable*"/>
40654             </parameter>
40655           </parameters>
40656         </callback>
40657       </field>
40658       <field name="paste_clipboard">
40659         <callback name="paste_clipboard" c:type="paste_clipboard">
40660           <return-value transfer-ownership="none">
40661             <type name="none" c:type="void"/>
40662           </return-value>
40663           <parameters>
40664             <parameter name="editable" transfer-ownership="none">
40665               <type name="OldEditable" c:type="GtkOldEditable*"/>
40666             </parameter>
40667           </parameters>
40668         </callback>
40669       </field>
40670       <field name="update_text">
40671         <callback name="update_text" c:type="update_text">
40672           <return-value transfer-ownership="none">
40673             <type name="none" c:type="void"/>
40674           </return-value>
40675           <parameters>
40676             <parameter name="editable" transfer-ownership="none">
40677               <type name="OldEditable" c:type="GtkOldEditable*"/>
40678             </parameter>
40679             <parameter name="start_pos" transfer-ownership="none">
40680               <type name="int" c:type="gint"/>
40681             </parameter>
40682             <parameter name="end_pos" transfer-ownership="none">
40683               <type name="int" c:type="gint"/>
40684             </parameter>
40685           </parameters>
40686         </callback>
40687       </field>
40688       <field name="get_chars">
40689         <callback name="get_chars" c:type="get_chars">
40690           <return-value transfer-ownership="full">
40691             <type name="utf8" c:type="gchar*"/>
40692           </return-value>
40693           <parameters>
40694             <parameter name="editable" transfer-ownership="none">
40695               <type name="OldEditable" c:type="GtkOldEditable*"/>
40696             </parameter>
40697             <parameter name="start_pos" transfer-ownership="none">
40698               <type name="int" c:type="gint"/>
40699             </parameter>
40700             <parameter name="end_pos" transfer-ownership="none">
40701               <type name="int" c:type="gint"/>
40702             </parameter>
40703           </parameters>
40704         </callback>
40705       </field>
40706       <field name="set_selection">
40707         <callback name="set_selection" c:type="set_selection">
40708           <return-value transfer-ownership="none">
40709             <type name="none" c:type="void"/>
40710           </return-value>
40711           <parameters>
40712             <parameter name="editable" transfer-ownership="none">
40713               <type name="OldEditable" c:type="GtkOldEditable*"/>
40714             </parameter>
40715             <parameter name="start_pos" transfer-ownership="none">
40716               <type name="int" c:type="gint"/>
40717             </parameter>
40718             <parameter name="end_pos" transfer-ownership="none">
40719               <type name="int" c:type="gint"/>
40720             </parameter>
40721           </parameters>
40722         </callback>
40723       </field>
40724       <field name="set_position">
40725         <callback name="set_position" c:type="set_position">
40726           <return-value transfer-ownership="none">
40727             <type name="none" c:type="void"/>
40728           </return-value>
40729           <parameters>
40730             <parameter name="editable" transfer-ownership="none">
40731               <type name="OldEditable" c:type="GtkOldEditable*"/>
40732             </parameter>
40733             <parameter name="position" transfer-ownership="none">
40734               <type name="int" c:type="gint"/>
40735             </parameter>
40736           </parameters>
40737         </callback>
40738       </field>
40739     </record>
40740     <class name="OptionMenu"
40741            c:type="GtkOptionMenu"
40742            parent="Button"
40743            glib:type-name="GtkOptionMenu"
40744            glib:get-type="gtk_option_menu_get_type"
40745            glib:type-struct="OptionMenuClass">
40746       <implements name="Activatable"/>
40747       <implements name="Atk.ImplementorIface"/>
40748       <implements name="Buildable"/>
40749       <constructor name="new" c:identifier="gtk_option_menu_new">
40750         <return-value transfer-ownership="full">
40751           <type name="OptionMenu" c:type="GtkWidget*"/>
40752         </return-value>
40753       </constructor>
40754       <method name="get_menu" c:identifier="gtk_option_menu_get_menu">
40755         <return-value transfer-ownership="full">
40756           <type name="Widget" c:type="GtkWidget*"/>
40757         </return-value>
40758       </method>
40759       <method name="set_menu" c:identifier="gtk_option_menu_set_menu">
40760         <return-value transfer-ownership="none">
40761           <type name="none" c:type="void"/>
40762         </return-value>
40763         <parameters>
40764           <parameter name="menu" transfer-ownership="none">
40765             <type name="Widget" c:type="GtkWidget*"/>
40766           </parameter>
40767         </parameters>
40768       </method>
40769       <method name="remove_menu" c:identifier="gtk_option_menu_remove_menu">
40770         <return-value transfer-ownership="none">
40771           <type name="none" c:type="void"/>
40772         </return-value>
40773       </method>
40774       <method name="get_history"
40775               c:identifier="gtk_option_menu_get_history"
40776               deprecated="Use #GtkComboBox instead."
40777               deprecated-version="2.4">
40778         <doc xml:whitespace="preserve">Retrieves the index of the currently selected menu item. The menu
40779 items are numbered from top to bottom, starting with 0.</doc>
40780         <return-value transfer-ownership="none">
40781           <doc xml:whitespace="preserve">index of the selected menu item, or -1 if there are no menu items</doc>
40782           <type name="int" c:type="gint"/>
40783         </return-value>
40784       </method>
40785       <method name="set_history" c:identifier="gtk_option_menu_set_history">
40786         <return-value transfer-ownership="none">
40787           <type name="none" c:type="void"/>
40788         </return-value>
40789         <parameters>
40790           <parameter name="index_" transfer-ownership="none">
40791             <type name="uint" c:type="guint"/>
40792           </parameter>
40793         </parameters>
40794       </method>
40795       <property name="menu" writable="1" transfer-ownership="none">
40796         <type name="Menu" c:type="GtkMenu"/>
40797       </property>
40798       <field name="button">
40799         <type name="Button" c:type="GtkButton"/>
40800       </field>
40801       <field name="menu">
40802         <type name="Widget" c:type="GtkWidget*"/>
40803       </field>
40804       <field name="menu_item">
40805         <type name="Widget" c:type="GtkWidget*"/>
40806       </field>
40807       <field name="width">
40808         <type name="uint16" c:type="guint16"/>
40809       </field>
40810       <field name="height">
40811         <type name="uint16" c:type="guint16"/>
40812       </field>
40813       <glib:signal name="changed">
40814         <return-value transfer-ownership="full">
40815           <type name="none" c:type="void"/>
40816         </return-value>
40817       </glib:signal>
40818     </class>
40819     <record name="OptionMenuClass"
40820             c:type="GtkOptionMenuClass"
40821             glib:is-gtype-struct-for="OptionMenu">
40822       <field name="parent_class">
40823         <type name="ButtonClass" c:type="GtkButtonClass"/>
40824       </field>
40825       <field name="changed">
40826         <callback name="changed" c:type="changed">
40827           <return-value transfer-ownership="none">
40828             <type name="none" c:type="void"/>
40829           </return-value>
40830           <parameters>
40831             <parameter name="option_menu" transfer-ownership="none">
40832               <type name="OptionMenu" c:type="GtkOptionMenu*"/>
40833             </parameter>
40834           </parameters>
40835         </callback>
40836       </field>
40837       <field name="gtk_reserved1">
40838         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
40839           <return-value transfer-ownership="none">
40840             <type name="none" c:type="void"/>
40841           </return-value>
40842         </callback>
40843       </field>
40844       <field name="gtk_reserved2">
40845         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
40846           <return-value transfer-ownership="none">
40847             <type name="none" c:type="void"/>
40848           </return-value>
40849         </callback>
40850       </field>
40851       <field name="gtk_reserved3">
40852         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
40853           <return-value transfer-ownership="none">
40854             <type name="none" c:type="void"/>
40855           </return-value>
40856         </callback>
40857       </field>
40858       <field name="gtk_reserved4">
40859         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
40860           <return-value transfer-ownership="none">
40861             <type name="none" c:type="void"/>
40862           </return-value>
40863         </callback>
40864       </field>
40865     </record>
40866     <interface name="Orientable"
40867                c:type="GtkOrientable"
40868                glib:type-name="GtkOrientable"
40869                glib:get-type="gtk_orientable_get_type"
40870                glib:type-struct="OrientableIface">
40871       <method name="set_orientation"
40872               c:identifier="gtk_orientable_set_orientation"
40873               version="2.16">
40874         <doc xml:whitespace="preserve">Sets the orientation of the @orientable.</doc>
40875         <return-value transfer-ownership="none">
40876           <type name="none" c:type="void"/>
40877         </return-value>
40878         <parameters>
40879           <parameter name="orientation" transfer-ownership="none">
40880             <doc xml:whitespace="preserve">the orientable's new orientation.</doc>
40881             <type name="Orientation" c:type="GtkOrientation"/>
40882           </parameter>
40883         </parameters>
40884       </method>
40885       <method name="get_orientation"
40886               c:identifier="gtk_orientable_get_orientation"
40887               version="2.16">
40888         <doc xml:whitespace="preserve">Retrieves the orientation of the @orientable.</doc>
40889         <return-value transfer-ownership="full">
40890           <doc xml:whitespace="preserve">the orientation of the @orientable.</doc>
40891           <type name="Orientation" c:type="GtkOrientation"/>
40892         </return-value>
40893       </method>
40894       <property name="orientation"
40895                 version="2.16"
40896                 writable="1"
40897                 transfer-ownership="none">
40898         <doc xml:whitespace="preserve">The orientation of the orientable.</doc>
40899         <type name="Orientation" c:type="GtkOrientation"/>
40900       </property>
40901     </interface>
40902     <record name="OrientableIface"
40903             c:type="GtkOrientableIface"
40904             glib:is-gtype-struct-for="Orientable">
40905       <field name="base_iface">
40906         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
40907       </field>
40908     </record>
40909     <enumeration name="Orientation"
40910                  glib:type-name="GtkOrientation"
40911                  glib:get-type="gtk_orientation_get_type"
40912                  c:type="GtkOrientation">
40913       <member name="horizontal"
40914               value="0"
40915               c:identifier="GTK_ORIENTATION_HORIZONTAL"
40916               glib:nick="horizontal"/>
40917       <member name="vertical"
40918               value="1"
40919               c:identifier="GTK_ORIENTATION_VERTICAL"
40920               glib:nick="vertical"/>
40921     </enumeration>
40922     <constant name="PAPER_NAME_A3" value="iso_a3">
40923       <type name="utf8"/>
40924     </constant>
40925     <constant name="PAPER_NAME_A4" value="iso_a4">
40926       <type name="utf8"/>
40927     </constant>
40928     <constant name="PAPER_NAME_A5" value="iso_a5">
40929       <type name="utf8"/>
40930     </constant>
40931     <constant name="PAPER_NAME_B5" value="iso_b5">
40932       <type name="utf8"/>
40933     </constant>
40934     <constant name="PAPER_NAME_EXECUTIVE" value="na_executive">
40935       <type name="utf8"/>
40936     </constant>
40937     <constant name="PAPER_NAME_LEGAL" value="na_legal">
40938       <type name="utf8"/>
40939     </constant>
40940     <constant name="PAPER_NAME_LETTER" value="na_letter">
40941       <type name="utf8"/>
40942     </constant>
40943     <constant name="PARAM_READABLE" value="0">
40944       <type name="int"/>
40945     </constant>
40946     <constant name="PARAM_READWRITE" value="0">
40947       <type name="int"/>
40948     </constant>
40949     <constant name="PARAM_WRITABLE" value="0">
40950       <type name="int"/>
40951     </constant>
40952     <constant name="PATH_PRIO_MASK" value="15">
40953       <type name="int"/>
40954     </constant>
40955     <constant name="PRINT_SETTINGS_COLLATE" value="collate">
40956       <type name="utf8"/>
40957     </constant>
40958     <constant name="PRINT_SETTINGS_DEFAULT_SOURCE" value="default-source">
40959       <type name="utf8"/>
40960     </constant>
40961     <constant name="PRINT_SETTINGS_DITHER" value="dither">
40962       <type name="utf8"/>
40963     </constant>
40964     <constant name="PRINT_SETTINGS_DUPLEX" value="duplex">
40965       <type name="utf8"/>
40966     </constant>
40967     <constant name="PRINT_SETTINGS_FINISHINGS" value="finishings">
40968       <type name="utf8"/>
40969     </constant>
40970     <constant name="PRINT_SETTINGS_MEDIA_TYPE" value="media-type">
40971       <type name="utf8"/>
40972     </constant>
40973     <constant name="PRINT_SETTINGS_NUMBER_UP" value="number-up">
40974       <type name="utf8"/>
40975     </constant>
40976     <constant name="PRINT_SETTINGS_NUMBER_UP_LAYOUT" value="number-up-layout">
40977       <type name="utf8"/>
40978     </constant>
40979     <constant name="PRINT_SETTINGS_N_COPIES" value="n-copies">
40980       <type name="utf8"/>
40981     </constant>
40982     <constant name="PRINT_SETTINGS_ORIENTATION" value="orientation">
40983       <type name="utf8"/>
40984     </constant>
40985     <constant name="PRINT_SETTINGS_OUTPUT_BIN" value="output-bin">
40986       <type name="utf8"/>
40987     </constant>
40988     <constant name="PRINT_SETTINGS_OUTPUT_FILE_FORMAT"
40989               value="output-file-format">
40990       <type name="utf8"/>
40991     </constant>
40992     <constant name="PRINT_SETTINGS_OUTPUT_URI" value="output-uri">
40993       <type name="utf8"/>
40994     </constant>
40995     <constant name="PRINT_SETTINGS_PAGE_RANGES" value="page-ranges">
40996       <type name="utf8"/>
40997     </constant>
40998     <constant name="PRINT_SETTINGS_PAGE_SET" value="page-set">
40999       <type name="utf8"/>
41000     </constant>
41001     <constant name="PRINT_SETTINGS_PAPER_FORMAT" value="paper-format">
41002       <type name="utf8"/>
41003     </constant>
41004     <constant name="PRINT_SETTINGS_PAPER_HEIGHT" value="paper-height">
41005       <type name="utf8"/>
41006     </constant>
41007     <constant name="PRINT_SETTINGS_PAPER_WIDTH" value="paper-width">
41008       <type name="utf8"/>
41009     </constant>
41010     <constant name="PRINT_SETTINGS_PRINTER" value="printer">
41011       <type name="utf8"/>
41012     </constant>
41013     <constant name="PRINT_SETTINGS_PRINTER_LPI" value="printer-lpi">
41014       <type name="utf8"/>
41015     </constant>
41016     <constant name="PRINT_SETTINGS_PRINT_PAGES" value="print-pages">
41017       <type name="utf8"/>
41018     </constant>
41019     <constant name="PRINT_SETTINGS_QUALITY" value="quality">
41020       <type name="utf8"/>
41021     </constant>
41022     <constant name="PRINT_SETTINGS_RESOLUTION" value="resolution">
41023       <type name="utf8"/>
41024     </constant>
41025     <constant name="PRINT_SETTINGS_RESOLUTION_X" value="resolution-x">
41026       <type name="utf8"/>
41027     </constant>
41028     <constant name="PRINT_SETTINGS_RESOLUTION_Y" value="resolution-y">
41029       <type name="utf8"/>
41030     </constant>
41031     <constant name="PRINT_SETTINGS_REVERSE" value="reverse">
41032       <type name="utf8"/>
41033     </constant>
41034     <constant name="PRINT_SETTINGS_SCALE" value="scale">
41035       <type name="utf8"/>
41036     </constant>
41037     <constant name="PRINT_SETTINGS_USE_COLOR" value="use-color">
41038       <type name="utf8"/>
41039     </constant>
41040     <constant name="PRINT_SETTINGS_WIN32_DRIVER_EXTRA"
41041               value="win32-driver-extra">
41042       <type name="utf8"/>
41043     </constant>
41044     <constant name="PRINT_SETTINGS_WIN32_DRIVER_VERSION"
41045               value="win32-driver-version">
41046       <type name="utf8"/>
41047     </constant>
41048     <constant name="PRIORITY_REDRAW" value="20">
41049       <type name="int"/>
41050     </constant>
41051     <constant name="PRIORITY_RESIZE" value="10">
41052       <type name="int"/>
41053     </constant>
41054     <enumeration name="PackDirection"
41055                  glib:type-name="GtkPackDirection"
41056                  glib:get-type="gtk_pack_direction_get_type"
41057                  c:type="GtkPackDirection">
41058       <member name="ltr"
41059               value="0"
41060               c:identifier="GTK_PACK_DIRECTION_LTR"
41061               glib:nick="ltr"/>
41062       <member name="rtl"
41063               value="1"
41064               c:identifier="GTK_PACK_DIRECTION_RTL"
41065               glib:nick="rtl"/>
41066       <member name="ttb"
41067               value="2"
41068               c:identifier="GTK_PACK_DIRECTION_TTB"
41069               glib:nick="ttb"/>
41070       <member name="btt"
41071               value="3"
41072               c:identifier="GTK_PACK_DIRECTION_BTT"
41073               glib:nick="btt"/>
41074     </enumeration>
41075     <enumeration name="PackType"
41076                  glib:type-name="GtkPackType"
41077                  glib:get-type="gtk_pack_type_get_type"
41078                  c:type="GtkPackType">
41079       <member name="start"
41080               value="0"
41081               c:identifier="GTK_PACK_START"
41082               glib:nick="start"/>
41083       <member name="end"
41084               value="1"
41085               c:identifier="GTK_PACK_END"
41086               glib:nick="end"/>
41087     </enumeration>
41088     <enumeration name="PageOrientation"
41089                  glib:type-name="GtkPageOrientation"
41090                  glib:get-type="gtk_page_orientation_get_type"
41091                  c:type="GtkPageOrientation">
41092       <member name="portrait"
41093               value="0"
41094               c:identifier="GTK_PAGE_ORIENTATION_PORTRAIT"
41095               glib:nick="portrait"/>
41096       <member name="landscape"
41097               value="1"
41098               c:identifier="GTK_PAGE_ORIENTATION_LANDSCAPE"
41099               glib:nick="landscape"/>
41100       <member name="reverse_portrait"
41101               value="2"
41102               c:identifier="GTK_PAGE_ORIENTATION_REVERSE_PORTRAIT"
41103               glib:nick="reverse-portrait"/>
41104       <member name="reverse_landscape"
41105               value="3"
41106               c:identifier="GTK_PAGE_ORIENTATION_REVERSE_LANDSCAPE"
41107               glib:nick="reverse-landscape"/>
41108     </enumeration>
41109     <record name="PageRange" c:type="GtkPageRange">
41110       <field name="start" writable="1">
41111         <type name="int" c:type="gint"/>
41112       </field>
41113       <field name="end" writable="1">
41114         <type name="int" c:type="gint"/>
41115       </field>
41116     </record>
41117     <enumeration name="PageSet"
41118                  glib:type-name="GtkPageSet"
41119                  glib:get-type="gtk_page_set_get_type"
41120                  c:type="GtkPageSet">
41121       <member name="all"
41122               value="0"
41123               c:identifier="GTK_PAGE_SET_ALL"
41124               glib:nick="all"/>
41125       <member name="even"
41126               value="1"
41127               c:identifier="GTK_PAGE_SET_EVEN"
41128               glib:nick="even"/>
41129       <member name="odd"
41130               value="2"
41131               c:identifier="GTK_PAGE_SET_ODD"
41132               glib:nick="odd"/>
41133     </enumeration>
41134     <class name="PageSetup"
41135            c:type="GtkPageSetup"
41136            parent="GObject.Object"
41137            glib:type-name="GtkPageSetup"
41138            glib:get-type="gtk_page_setup_get_type">
41139       <constructor name="new" c:identifier="gtk_page_setup_new" version="2.10">
41140         <doc xml:whitespace="preserve">Creates a new #GtkPageSetup.</doc>
41141         <return-value transfer-ownership="full">
41142           <doc xml:whitespace="preserve">a new #GtkPageSetup.</doc>
41143           <type name="PageSetup" c:type="GtkPageSetup*"/>
41144         </return-value>
41145       </constructor>
41146       <constructor name="new_from_file"
41147                    c:identifier="gtk_page_setup_new_from_file"
41148                    version="2.12"
41149                    throws="1">
41150         <doc xml:whitespace="preserve">Reads the page setup from the file @file_name. Returns a 
41151 new #GtkPageSetup object with the restored page setup, 
41152 or %NULL if an error occurred. See gtk_page_setup_to_file().</doc>
41153         <return-value transfer-ownership="full">
41154           <doc xml:whitespace="preserve">the restored #GtkPageSetup</doc>
41155           <type name="PageSetup" c:type="GtkPageSetup*"/>
41156         </return-value>
41157         <parameters>
41158           <parameter name="file_name" transfer-ownership="none">
41159             <doc xml:whitespace="preserve">the filename to read the page setup from</doc>
41160             <type name="utf8" c:type="gchar*"/>
41161           </parameter>
41162         </parameters>
41163       </constructor>
41164       <constructor name="new_from_key_file"
41165                    c:identifier="gtk_page_setup_new_from_key_file"
41166                    version="2.12"
41167                    throws="1">
41168         <doc xml:whitespace="preserve">Reads the page setup from the group @group_name in the key file
41169 page setup, or %NULL if an error occurred.</doc>
41170         <return-value transfer-ownership="full">
41171           <doc xml:whitespace="preserve">the restored #GtkPageSetup</doc>
41172           <type name="PageSetup" c:type="GtkPageSetup*"/>
41173         </return-value>
41174         <parameters>
41175           <parameter name="key_file" transfer-ownership="none">
41176             <doc xml:whitespace="preserve">the #GKeyFile to retrieve the page_setup from</doc>
41177             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
41178           </parameter>
41179           <parameter name="group_name"
41180                      transfer-ownership="none"
41181                      allow-none="1">
41182             <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>
41183             <type name="utf8" c:type="gchar*"/>
41184           </parameter>
41185         </parameters>
41186       </constructor>
41187       <method name="copy" c:identifier="gtk_page_setup_copy" version="2.10">
41188         <doc xml:whitespace="preserve">Copies a #GtkPageSetup.</doc>
41189         <return-value transfer-ownership="full">
41190           <doc xml:whitespace="preserve">a copy of @other</doc>
41191           <type name="PageSetup" c:type="GtkPageSetup*"/>
41192         </return-value>
41193       </method>
41194       <method name="get_orientation"
41195               c:identifier="gtk_page_setup_get_orientation"
41196               version="2.10">
41197         <doc xml:whitespace="preserve">Gets the page orientation of the #GtkPageSetup.</doc>
41198         <return-value transfer-ownership="full">
41199           <doc xml:whitespace="preserve">the page orientation</doc>
41200           <type name="PageOrientation" c:type="GtkPageOrientation"/>
41201         </return-value>
41202       </method>
41203       <method name="set_orientation"
41204               c:identifier="gtk_page_setup_set_orientation"
41205               version="2.10">
41206         <doc xml:whitespace="preserve">Sets the page orientation of the #GtkPageSetup.</doc>
41207         <return-value transfer-ownership="none">
41208           <type name="none" c:type="void"/>
41209         </return-value>
41210         <parameters>
41211           <parameter name="orientation" transfer-ownership="none">
41212             <doc xml:whitespace="preserve">a #GtkPageOrientation value</doc>
41213             <type name="PageOrientation" c:type="GtkPageOrientation"/>
41214           </parameter>
41215         </parameters>
41216       </method>
41217       <method name="get_paper_size"
41218               c:identifier="gtk_page_setup_get_paper_size"
41219               version="2.10">
41220         <doc xml:whitespace="preserve">Gets the paper size of the #GtkPageSetup.</doc>
41221         <return-value transfer-ownership="full">
41222           <doc xml:whitespace="preserve">the paper size</doc>
41223           <type name="PaperSize" c:type="GtkPaperSize*"/>
41224         </return-value>
41225       </method>
41226       <method name="set_paper_size"
41227               c:identifier="gtk_page_setup_set_paper_size"
41228               version="2.10">
41229         <doc xml:whitespace="preserve">Sets the paper size of the #GtkPageSetup without
41230 changing the margins. See 
41231 gtk_page_setup_set_paper_size_and_default_margins().</doc>
41232         <return-value transfer-ownership="none">
41233           <type name="none" c:type="void"/>
41234         </return-value>
41235         <parameters>
41236           <parameter name="size" transfer-ownership="none">
41237             <doc xml:whitespace="preserve">a #GtkPaperSize</doc>
41238             <type name="PaperSize" c:type="GtkPaperSize*"/>
41239           </parameter>
41240         </parameters>
41241       </method>
41242       <method name="get_top_margin"
41243               c:identifier="gtk_page_setup_get_top_margin"
41244               version="2.10">
41245         <doc xml:whitespace="preserve">Gets the top margin in units of @unit.</doc>
41246         <return-value transfer-ownership="none">
41247           <doc xml:whitespace="preserve">the top margin</doc>
41248           <type name="double" c:type="gdouble"/>
41249         </return-value>
41250         <parameters>
41251           <parameter name="unit" transfer-ownership="none">
41252             <doc xml:whitespace="preserve">the unit for the return value</doc>
41253             <type name="Unit" c:type="GtkUnit"/>
41254           </parameter>
41255         </parameters>
41256       </method>
41257       <method name="set_top_margin"
41258               c:identifier="gtk_page_setup_set_top_margin"
41259               version="2.10">
41260         <doc xml:whitespace="preserve">Sets the top margin of the #GtkPageSetup.</doc>
41261         <return-value transfer-ownership="none">
41262           <type name="none" c:type="void"/>
41263         </return-value>
41264         <parameters>
41265           <parameter name="margin" transfer-ownership="none">
41266             <doc xml:whitespace="preserve">the new top margin in units of @unit</doc>
41267             <type name="double" c:type="gdouble"/>
41268           </parameter>
41269           <parameter name="unit" transfer-ownership="none">
41270             <doc xml:whitespace="preserve">the units for @margin</doc>
41271             <type name="Unit" c:type="GtkUnit"/>
41272           </parameter>
41273         </parameters>
41274       </method>
41275       <method name="get_bottom_margin"
41276               c:identifier="gtk_page_setup_get_bottom_margin"
41277               version="2.10">
41278         <doc xml:whitespace="preserve">Gets the bottom margin in units of @unit.</doc>
41279         <return-value transfer-ownership="none">
41280           <doc xml:whitespace="preserve">the bottom margin</doc>
41281           <type name="double" c:type="gdouble"/>
41282         </return-value>
41283         <parameters>
41284           <parameter name="unit" transfer-ownership="none">
41285             <doc xml:whitespace="preserve">the unit for the return value</doc>
41286             <type name="Unit" c:type="GtkUnit"/>
41287           </parameter>
41288         </parameters>
41289       </method>
41290       <method name="set_bottom_margin"
41291               c:identifier="gtk_page_setup_set_bottom_margin"
41292               version="2.10">
41293         <doc xml:whitespace="preserve">Sets the bottom margin of the #GtkPageSetup.</doc>
41294         <return-value transfer-ownership="none">
41295           <type name="none" c:type="void"/>
41296         </return-value>
41297         <parameters>
41298           <parameter name="margin" transfer-ownership="none">
41299             <doc xml:whitespace="preserve">the new bottom margin in units of @unit</doc>
41300             <type name="double" c:type="gdouble"/>
41301           </parameter>
41302           <parameter name="unit" transfer-ownership="none">
41303             <doc xml:whitespace="preserve">the units for @margin</doc>
41304             <type name="Unit" c:type="GtkUnit"/>
41305           </parameter>
41306         </parameters>
41307       </method>
41308       <method name="get_left_margin"
41309               c:identifier="gtk_page_setup_get_left_margin"
41310               version="2.10">
41311         <doc xml:whitespace="preserve">Gets the left margin in units of @unit.</doc>
41312         <return-value transfer-ownership="none">
41313           <doc xml:whitespace="preserve">the left margin</doc>
41314           <type name="double" c:type="gdouble"/>
41315         </return-value>
41316         <parameters>
41317           <parameter name="unit" transfer-ownership="none">
41318             <doc xml:whitespace="preserve">the unit for the return value</doc>
41319             <type name="Unit" c:type="GtkUnit"/>
41320           </parameter>
41321         </parameters>
41322       </method>
41323       <method name="set_left_margin"
41324               c:identifier="gtk_page_setup_set_left_margin"
41325               version="2.10">
41326         <doc xml:whitespace="preserve">Sets the left margin of the #GtkPageSetup.</doc>
41327         <return-value transfer-ownership="none">
41328           <type name="none" c:type="void"/>
41329         </return-value>
41330         <parameters>
41331           <parameter name="margin" transfer-ownership="none">
41332             <doc xml:whitespace="preserve">the new left margin in units of @unit</doc>
41333             <type name="double" c:type="gdouble"/>
41334           </parameter>
41335           <parameter name="unit" transfer-ownership="none">
41336             <doc xml:whitespace="preserve">the units for @margin</doc>
41337             <type name="Unit" c:type="GtkUnit"/>
41338           </parameter>
41339         </parameters>
41340       </method>
41341       <method name="get_right_margin"
41342               c:identifier="gtk_page_setup_get_right_margin"
41343               version="2.10">
41344         <doc xml:whitespace="preserve">Gets the right margin in units of @unit.</doc>
41345         <return-value transfer-ownership="none">
41346           <doc xml:whitespace="preserve">the right margin</doc>
41347           <type name="double" c:type="gdouble"/>
41348         </return-value>
41349         <parameters>
41350           <parameter name="unit" transfer-ownership="none">
41351             <doc xml:whitespace="preserve">the unit for the return value</doc>
41352             <type name="Unit" c:type="GtkUnit"/>
41353           </parameter>
41354         </parameters>
41355       </method>
41356       <method name="set_right_margin"
41357               c:identifier="gtk_page_setup_set_right_margin"
41358               version="2.10">
41359         <doc xml:whitespace="preserve">Sets the right margin of the #GtkPageSetup.</doc>
41360         <return-value transfer-ownership="none">
41361           <type name="none" c:type="void"/>
41362         </return-value>
41363         <parameters>
41364           <parameter name="margin" transfer-ownership="none">
41365             <doc xml:whitespace="preserve">the new right margin in units of @unit</doc>
41366             <type name="double" c:type="gdouble"/>
41367           </parameter>
41368           <parameter name="unit" transfer-ownership="none">
41369             <doc xml:whitespace="preserve">the units for @margin</doc>
41370             <type name="Unit" c:type="GtkUnit"/>
41371           </parameter>
41372         </parameters>
41373       </method>
41374       <method name="set_paper_size_and_default_margins"
41375               c:identifier="gtk_page_setup_set_paper_size_and_default_margins"
41376               version="2.10">
41377         <doc xml:whitespace="preserve">Sets the paper size of the #GtkPageSetup and modifies
41378 the margins according to the new paper size.</doc>
41379         <return-value transfer-ownership="none">
41380           <type name="none" c:type="void"/>
41381         </return-value>
41382         <parameters>
41383           <parameter name="size" transfer-ownership="none">
41384             <doc xml:whitespace="preserve">a #GtkPaperSize</doc>
41385             <type name="PaperSize" c:type="GtkPaperSize*"/>
41386           </parameter>
41387         </parameters>
41388       </method>
41389       <method name="get_paper_width"
41390               c:identifier="gtk_page_setup_get_paper_width"
41391               version="2.10">
41392         <doc xml:whitespace="preserve">Returns the paper width in units of @unit.
41393 Note that this function takes orientation, but 
41394 not margins into consideration. 
41395 See gtk_page_setup_get_page_width().</doc>
41396         <return-value transfer-ownership="none">
41397           <doc xml:whitespace="preserve">the paper width.</doc>
41398           <type name="double" c:type="gdouble"/>
41399         </return-value>
41400         <parameters>
41401           <parameter name="unit" transfer-ownership="none">
41402             <doc xml:whitespace="preserve">the unit for the return value</doc>
41403             <type name="Unit" c:type="GtkUnit"/>
41404           </parameter>
41405         </parameters>
41406       </method>
41407       <method name="get_paper_height"
41408               c:identifier="gtk_page_setup_get_paper_height"
41409               version="2.10">
41410         <doc xml:whitespace="preserve">Returns the paper height in units of @unit.
41411 Note that this function takes orientation, but 
41412 not margins into consideration.
41413 See gtk_page_setup_get_page_height().</doc>
41414         <return-value transfer-ownership="none">
41415           <doc xml:whitespace="preserve">the paper height.</doc>
41416           <type name="double" c:type="gdouble"/>
41417         </return-value>
41418         <parameters>
41419           <parameter name="unit" transfer-ownership="none">
41420             <doc xml:whitespace="preserve">the unit for the return value</doc>
41421             <type name="Unit" c:type="GtkUnit"/>
41422           </parameter>
41423         </parameters>
41424       </method>
41425       <method name="get_page_width"
41426               c:identifier="gtk_page_setup_get_page_width"
41427               version="2.10">
41428         <doc xml:whitespace="preserve">Returns the page width in units of @unit.
41429 Note that this function takes orientation and
41430 margins into consideration. 
41431 See gtk_page_setup_get_paper_width().</doc>
41432         <return-value transfer-ownership="none">
41433           <doc xml:whitespace="preserve">the page width.</doc>
41434           <type name="double" c:type="gdouble"/>
41435         </return-value>
41436         <parameters>
41437           <parameter name="unit" transfer-ownership="none">
41438             <doc xml:whitespace="preserve">the unit for the return value</doc>
41439             <type name="Unit" c:type="GtkUnit"/>
41440           </parameter>
41441         </parameters>
41442       </method>
41443       <method name="get_page_height"
41444               c:identifier="gtk_page_setup_get_page_height"
41445               version="2.10">
41446         <doc xml:whitespace="preserve">Returns the page height in units of @unit.
41447 Note that this function takes orientation and
41448 margins into consideration. 
41449 See gtk_page_setup_get_paper_height().</doc>
41450         <return-value transfer-ownership="none">
41451           <doc xml:whitespace="preserve">the page height.</doc>
41452           <type name="double" c:type="gdouble"/>
41453         </return-value>
41454         <parameters>
41455           <parameter name="unit" transfer-ownership="none">
41456             <doc xml:whitespace="preserve">the unit for the return value</doc>
41457             <type name="Unit" c:type="GtkUnit"/>
41458           </parameter>
41459         </parameters>
41460       </method>
41461       <method name="load_file"
41462               c:identifier="gtk_page_setup_load_file"
41463               version="2.14"
41464               throws="1">
41465         <doc xml:whitespace="preserve">Reads the page setup from the file @file_name.
41466 See gtk_page_setup_to_file().</doc>
41467         <return-value transfer-ownership="none">
41468           <doc xml:whitespace="preserve">%TRUE on success</doc>
41469           <type name="boolean" c:type="gboolean"/>
41470         </return-value>
41471         <parameters>
41472           <parameter name="file_name" transfer-ownership="none">
41473             <doc xml:whitespace="preserve">the filename to read the page setup from</doc>
41474             <type name="utf8" c:type="char*"/>
41475           </parameter>
41476         </parameters>
41477       </method>
41478       <method name="to_file"
41479               c:identifier="gtk_page_setup_to_file"
41480               version="2.12"
41481               throws="1">
41482         <doc xml:whitespace="preserve">This function saves the information from @setup to @file_name.</doc>
41483         <return-value transfer-ownership="none">
41484           <doc xml:whitespace="preserve">%TRUE on success</doc>
41485           <type name="boolean" c:type="gboolean"/>
41486         </return-value>
41487         <parameters>
41488           <parameter name="file_name" transfer-ownership="none">
41489             <doc xml:whitespace="preserve">the file to save to</doc>
41490             <type name="utf8" c:type="char*"/>
41491           </parameter>
41492         </parameters>
41493       </method>
41494       <method name="load_key_file"
41495               c:identifier="gtk_page_setup_load_key_file"
41496               version="2.14"
41497               throws="1">
41498         <doc xml:whitespace="preserve">Reads the page setup from the group @group_name in the key file</doc>
41499         <return-value transfer-ownership="none">
41500           <doc xml:whitespace="preserve">%TRUE on success</doc>
41501           <type name="boolean" c:type="gboolean"/>
41502         </return-value>
41503         <parameters>
41504           <parameter name="key_file" transfer-ownership="none">
41505             <doc xml:whitespace="preserve">the #GKeyFile to retrieve the page_setup from</doc>
41506             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
41507           </parameter>
41508           <parameter name="group_name"
41509                      transfer-ownership="none"
41510                      allow-none="1">
41511             <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>
41512             <type name="utf8" c:type="gchar*"/>
41513           </parameter>
41514         </parameters>
41515       </method>
41516       <method name="to_key_file"
41517               c:identifier="gtk_page_setup_to_key_file"
41518               version="2.12">
41519         <doc xml:whitespace="preserve">This function adds the page setup from @setup to @key_file.</doc>
41520         <return-value transfer-ownership="none">
41521           <type name="none" c:type="void"/>
41522         </return-value>
41523         <parameters>
41524           <parameter name="key_file" transfer-ownership="none">
41525             <doc xml:whitespace="preserve">the #GKeyFile to save the page setup to</doc>
41526             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
41527           </parameter>
41528           <parameter name="group_name" transfer-ownership="none">
41529             <doc xml:whitespace="preserve">the group to add the settings to in @key_file, or %NULL to use the default name "Page Setup"</doc>
41530             <type name="utf8" c:type="gchar*"/>
41531           </parameter>
41532         </parameters>
41533       </method>
41534     </class>
41535     <callback name="PageSetupDoneFunc" c:type="GtkPageSetupDoneFunc">
41536       <return-value transfer-ownership="none">
41537         <type name="none" c:type="void"/>
41538       </return-value>
41539       <parameters>
41540         <parameter name="page_setup" transfer-ownership="none">
41541           <type name="PageSetup" c:type="GtkPageSetup*"/>
41542         </parameter>
41543         <parameter name="data" transfer-ownership="none">
41544           <type name="any" c:type="gpointer"/>
41545         </parameter>
41546       </parameters>
41547     </callback>
41548     <class name="Paned"
41549            c:type="GtkPaned"
41550            parent="Container"
41551            abstract="1"
41552            glib:type-name="GtkPaned"
41553            glib:get-type="gtk_paned_get_type"
41554            glib:type-struct="PanedClass">
41555       <implements name="Atk.ImplementorIface"/>
41556       <implements name="Buildable"/>
41557       <implements name="Orientable"/>
41558       <method name="add1" c:identifier="gtk_paned_add1">
41559         <return-value transfer-ownership="none">
41560           <type name="none" c:type="void"/>
41561         </return-value>
41562         <parameters>
41563           <parameter name="child" transfer-ownership="none">
41564             <type name="Widget" c:type="GtkWidget*"/>
41565           </parameter>
41566         </parameters>
41567       </method>
41568       <method name="add2" c:identifier="gtk_paned_add2">
41569         <return-value transfer-ownership="none">
41570           <type name="none" c:type="void"/>
41571         </return-value>
41572         <parameters>
41573           <parameter name="child" transfer-ownership="none">
41574             <type name="Widget" c:type="GtkWidget*"/>
41575           </parameter>
41576         </parameters>
41577       </method>
41578       <method name="pack1" c:identifier="gtk_paned_pack1">
41579         <return-value transfer-ownership="none">
41580           <type name="none" c:type="void"/>
41581         </return-value>
41582         <parameters>
41583           <parameter name="child" transfer-ownership="none">
41584             <type name="Widget" c:type="GtkWidget*"/>
41585           </parameter>
41586           <parameter name="resize" transfer-ownership="none">
41587             <type name="boolean" c:type="gboolean"/>
41588           </parameter>
41589           <parameter name="shrink" transfer-ownership="none">
41590             <type name="boolean" c:type="gboolean"/>
41591           </parameter>
41592         </parameters>
41593       </method>
41594       <method name="pack2" c:identifier="gtk_paned_pack2">
41595         <return-value transfer-ownership="none">
41596           <type name="none" c:type="void"/>
41597         </return-value>
41598         <parameters>
41599           <parameter name="child" transfer-ownership="none">
41600             <type name="Widget" c:type="GtkWidget*"/>
41601           </parameter>
41602           <parameter name="resize" transfer-ownership="none">
41603             <type name="boolean" c:type="gboolean"/>
41604           </parameter>
41605           <parameter name="shrink" transfer-ownership="none">
41606             <type name="boolean" c:type="gboolean"/>
41607           </parameter>
41608         </parameters>
41609       </method>
41610       <method name="get_position" c:identifier="gtk_paned_get_position">
41611         <doc xml:whitespace="preserve">Obtains the position of the divider between the two panes.</doc>
41612         <return-value transfer-ownership="none">
41613           <doc xml:whitespace="preserve">position of the divider</doc>
41614           <type name="int" c:type="gint"/>
41615         </return-value>
41616       </method>
41617       <method name="set_position" c:identifier="gtk_paned_set_position">
41618         <doc xml:whitespace="preserve">Sets the position of the divider between the two panes.</doc>
41619         <return-value transfer-ownership="none">
41620           <type name="none" c:type="void"/>
41621         </return-value>
41622         <parameters>
41623           <parameter name="position" transfer-ownership="none">
41624             <doc xml:whitespace="preserve">pixel position of divider, a negative value means that the position is unset.</doc>
41625             <type name="int" c:type="gint"/>
41626           </parameter>
41627         </parameters>
41628       </method>
41629       <method name="get_child1"
41630               c:identifier="gtk_paned_get_child1"
41631               version="2.4">
41632         <doc xml:whitespace="preserve">Obtains the first child of the paned widget.</doc>
41633         <return-value transfer-ownership="full">
41634           <doc xml:whitespace="preserve">first child, or %NULL if it is not set.</doc>
41635           <type name="Widget" c:type="GtkWidget*"/>
41636         </return-value>
41637       </method>
41638       <method name="get_child2"
41639               c:identifier="gtk_paned_get_child2"
41640               version="2.4">
41641         <doc xml:whitespace="preserve">Obtains the second child of the paned widget.</doc>
41642         <return-value transfer-ownership="full">
41643           <doc xml:whitespace="preserve">second child, or %NULL if it is not set.</doc>
41644           <type name="Widget" c:type="GtkWidget*"/>
41645         </return-value>
41646       </method>
41647       <method name="get_handle_window"
41648               c:identifier="gtk_paned_get_handle_window"
41649               version="2.20">
41650         <doc xml:whitespace="preserve">Returns the #GdkWindow of the handle. This function is
41651 useful when handling button or motion events because it
41652 enables the callback to distinguish between the window
41653 of the paned, a child and the handle.</doc>
41654         <return-value transfer-ownership="full">
41655           <doc xml:whitespace="preserve">the paned's handle window.</doc>
41656           <type name="Gdk.Window" c:type="GdkWindow*"/>
41657         </return-value>
41658       </method>
41659       <method name="compute_position"
41660               c:identifier="gtk_paned_compute_position">
41661         <return-value transfer-ownership="none">
41662           <type name="none" c:type="void"/>
41663         </return-value>
41664         <parameters>
41665           <parameter name="allocation" transfer-ownership="none">
41666             <type name="int" c:type="gint"/>
41667           </parameter>
41668           <parameter name="child1_req" transfer-ownership="none">
41669             <type name="int" c:type="gint"/>
41670           </parameter>
41671           <parameter name="child2_req" transfer-ownership="none">
41672             <type name="int" c:type="gint"/>
41673           </parameter>
41674         </parameters>
41675       </method>
41676       <property name="max-position" version="2.4" transfer-ownership="none">
41677         <doc xml:whitespace="preserve">The largest possible value for the position property. This property is derived from the
41678 size and shrinkability of the widget's children.</doc>
41679         <type name="int" c:type="gint"/>
41680       </property>
41681       <property name="min-position" version="2.4" transfer-ownership="none">
41682         <doc xml:whitespace="preserve">The smallest possible value for the position property. This property is derived from the
41683 size and shrinkability of the widget's children.</doc>
41684         <type name="int" c:type="gint"/>
41685       </property>
41686       <property name="position" writable="1" transfer-ownership="none">
41687         <type name="int" c:type="gint"/>
41688       </property>
41689       <property name="position-set" writable="1" transfer-ownership="none">
41690         <type name="boolean" c:type="gboolean"/>
41691       </property>
41692       <field name="container">
41693         <type name="Container" c:type="GtkContainer"/>
41694       </field>
41695       <field name="child1">
41696         <type name="Widget" c:type="GtkWidget*"/>
41697       </field>
41698       <field name="child2">
41699         <type name="Widget" c:type="GtkWidget*"/>
41700       </field>
41701       <field name="handle">
41702         <type name="Gdk.Window" c:type="GdkWindow*"/>
41703       </field>
41704       <field name="xor_gc">
41705         <type name="Gdk.GC" c:type="GdkGC*"/>
41706       </field>
41707       <field name="cursor_type">
41708         <type name="Gdk.CursorType" c:type="GdkCursorType"/>
41709       </field>
41710       <field name="handle_pos">
41711         <type name="Gdk.Rectangle" c:type="GdkRectangle"/>
41712       </field>
41713       <field name="child1_size">
41714         <type name="int" c:type="gint"/>
41715       </field>
41716       <field name="last_allocation">
41717         <type name="int" c:type="gint"/>
41718       </field>
41719       <field name="min_position">
41720         <type name="int" c:type="gint"/>
41721       </field>
41722       <field name="max_position">
41723         <type name="int" c:type="gint"/>
41724       </field>
41725       <field name="position_set" bits="1">
41726         <type name="uint" c:type="guint"/>
41727       </field>
41728       <field name="in_drag" bits="1">
41729         <type name="uint" c:type="guint"/>
41730       </field>
41731       <field name="child1_shrink" bits="1">
41732         <type name="uint" c:type="guint"/>
41733       </field>
41734       <field name="child1_resize" bits="1">
41735         <type name="uint" c:type="guint"/>
41736       </field>
41737       <field name="child2_shrink" bits="1">
41738         <type name="uint" c:type="guint"/>
41739       </field>
41740       <field name="child2_resize" bits="1">
41741         <type name="uint" c:type="guint"/>
41742       </field>
41743       <field name="orientation" bits="1">
41744         <type name="uint" c:type="guint"/>
41745       </field>
41746       <field name="in_recursion" bits="1">
41747         <type name="uint" c:type="guint"/>
41748       </field>
41749       <field name="handle_prelit" bits="1">
41750         <type name="uint" c:type="guint"/>
41751       </field>
41752       <field name="last_child1_focus">
41753         <type name="Widget" c:type="GtkWidget*"/>
41754       </field>
41755       <field name="last_child2_focus">
41756         <type name="Widget" c:type="GtkWidget*"/>
41757       </field>
41758       <field name="priv">
41759         <type name="PanedPrivate" c:type="GtkPanedPrivate*"/>
41760       </field>
41761       <field name="drag_pos">
41762         <type name="int" c:type="gint"/>
41763       </field>
41764       <field name="original_position">
41765         <type name="int" c:type="gint"/>
41766       </field>
41767       <glib:signal name="accept-position" version="2.0">
41768         <doc xml:whitespace="preserve">The ::accept-position signal is a 
41769 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
41770 which gets emitted to accept the current position of the handle when 
41771 moving it using key bindings.
41772 The default binding for this signal is Return or Space.</doc>
41773         <return-value transfer-ownership="full">
41774           <type name="boolean" c:type="gboolean"/>
41775         </return-value>
41776       </glib:signal>
41777       <glib:signal name="cancel-position" version="2.0">
41778         <doc xml:whitespace="preserve">The ::cancel-position signal is a 
41779 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
41780 which gets emitted to cancel moving the position of the handle using key 
41781 bindings. The position of the handle will be reset to the value prior to 
41782 moving it.
41783 The default binding for this signal is Escape.</doc>
41784         <return-value transfer-ownership="full">
41785           <type name="boolean" c:type="gboolean"/>
41786         </return-value>
41787       </glib:signal>
41788       <glib:signal name="cycle-child-focus" version="2.0">
41789         <doc xml:whitespace="preserve">The ::cycle-child-focus signal is a 
41790 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
41791 which gets emitted to cycle the focus between the children of the paned.
41792 The default binding is f6.</doc>
41793         <return-value transfer-ownership="full">
41794           <type name="boolean" c:type="gboolean"/>
41795         </return-value>
41796         <parameters>
41797           <parameter name="reversed" transfer-ownership="none">
41798             <doc xml:whitespace="preserve">whether cycling backward or forward</doc>
41799             <type name="boolean" c:type="gboolean"/>
41800           </parameter>
41801         </parameters>
41802       </glib:signal>
41803       <glib:signal name="cycle-handle-focus" version="2.0">
41804         <doc xml:whitespace="preserve">The ::cycle-handle-focus signal is a 
41805 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
41806 which gets emitted to cycle whether the paned should grab focus to allow
41807 the user to change position of the handle by using key bindings.
41808 The default binding for this signal is f8.</doc>
41809         <return-value transfer-ownership="full">
41810           <type name="boolean" c:type="gboolean"/>
41811         </return-value>
41812         <parameters>
41813           <parameter name="reversed" transfer-ownership="none">
41814             <doc xml:whitespace="preserve">whether cycling backward or forward</doc>
41815             <type name="boolean" c:type="gboolean"/>
41816           </parameter>
41817         </parameters>
41818       </glib:signal>
41819       <glib:signal name="move-handle" version="2.0">
41820         <doc xml:whitespace="preserve">The ::move-handle signal is a 
41821 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
41822 which gets emitted to move the handle when the user is using key bindings 
41823 to move it.</doc>
41824         <return-value transfer-ownership="full">
41825           <type name="boolean" c:type="gboolean"/>
41826         </return-value>
41827         <parameters>
41828           <parameter name="scroll_type" transfer-ownership="none">
41829             <doc xml:whitespace="preserve">a #GtkScrollType</doc>
41830             <type name="ScrollType" c:type="GtkScrollType"/>
41831           </parameter>
41832         </parameters>
41833       </glib:signal>
41834       <glib:signal name="toggle-handle-focus" version="2.0">
41835         <doc xml:whitespace="preserve">The ::toggle-handle-focus is a 
41836 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
41837 which gets emitted to accept the current position of the handle and then 
41838 move focus to the next widget in the focus chain.
41839 The default binding is Tab.</doc>
41840         <return-value transfer-ownership="full">
41841           <type name="boolean" c:type="gboolean"/>
41842         </return-value>
41843       </glib:signal>
41844     </class>
41845     <record name="PanedClass"
41846             c:type="GtkPanedClass"
41847             glib:is-gtype-struct-for="Paned">
41848       <field name="parent_class">
41849         <type name="ContainerClass" c:type="GtkContainerClass"/>
41850       </field>
41851       <field name="cycle_child_focus">
41852         <callback name="cycle_child_focus" c:type="cycle_child_focus">
41853           <return-value transfer-ownership="none">
41854             <type name="boolean" c:type="gboolean"/>
41855           </return-value>
41856           <parameters>
41857             <parameter name="paned" transfer-ownership="none">
41858               <type name="Paned" c:type="GtkPaned*"/>
41859             </parameter>
41860             <parameter name="reverse" transfer-ownership="none">
41861               <type name="boolean" c:type="gboolean"/>
41862             </parameter>
41863           </parameters>
41864         </callback>
41865       </field>
41866       <field name="toggle_handle_focus">
41867         <callback name="toggle_handle_focus" c:type="toggle_handle_focus">
41868           <return-value transfer-ownership="none">
41869             <type name="boolean" c:type="gboolean"/>
41870           </return-value>
41871           <parameters>
41872             <parameter name="paned" transfer-ownership="none">
41873               <type name="Paned" c:type="GtkPaned*"/>
41874             </parameter>
41875           </parameters>
41876         </callback>
41877       </field>
41878       <field name="move_handle">
41879         <callback name="move_handle" c:type="move_handle">
41880           <return-value transfer-ownership="none">
41881             <type name="boolean" c:type="gboolean"/>
41882           </return-value>
41883           <parameters>
41884             <parameter name="paned" transfer-ownership="none">
41885               <type name="Paned" c:type="GtkPaned*"/>
41886             </parameter>
41887             <parameter name="scroll" transfer-ownership="none">
41888               <type name="ScrollType" c:type="GtkScrollType"/>
41889             </parameter>
41890           </parameters>
41891         </callback>
41892       </field>
41893       <field name="cycle_handle_focus">
41894         <callback name="cycle_handle_focus" c:type="cycle_handle_focus">
41895           <return-value transfer-ownership="none">
41896             <type name="boolean" c:type="gboolean"/>
41897           </return-value>
41898           <parameters>
41899             <parameter name="paned" transfer-ownership="none">
41900               <type name="Paned" c:type="GtkPaned*"/>
41901             </parameter>
41902             <parameter name="reverse" transfer-ownership="none">
41903               <type name="boolean" c:type="gboolean"/>
41904             </parameter>
41905           </parameters>
41906         </callback>
41907       </field>
41908       <field name="accept_position">
41909         <callback name="accept_position" c:type="accept_position">
41910           <return-value transfer-ownership="none">
41911             <type name="boolean" c:type="gboolean"/>
41912           </return-value>
41913           <parameters>
41914             <parameter name="paned" transfer-ownership="none">
41915               <type name="Paned" c:type="GtkPaned*"/>
41916             </parameter>
41917           </parameters>
41918         </callback>
41919       </field>
41920       <field name="cancel_position">
41921         <callback name="cancel_position" c:type="cancel_position">
41922           <return-value transfer-ownership="none">
41923             <type name="boolean" c:type="gboolean"/>
41924           </return-value>
41925           <parameters>
41926             <parameter name="paned" transfer-ownership="none">
41927               <type name="Paned" c:type="GtkPaned*"/>
41928             </parameter>
41929           </parameters>
41930         </callback>
41931       </field>
41932       <field name="gtk_reserved1">
41933         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
41934           <return-value transfer-ownership="none">
41935             <type name="none" c:type="void"/>
41936           </return-value>
41937         </callback>
41938       </field>
41939       <field name="gtk_reserved2">
41940         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
41941           <return-value transfer-ownership="none">
41942             <type name="none" c:type="void"/>
41943           </return-value>
41944         </callback>
41945       </field>
41946       <field name="gtk_reserved3">
41947         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
41948           <return-value transfer-ownership="none">
41949             <type name="none" c:type="void"/>
41950           </return-value>
41951         </callback>
41952       </field>
41953       <field name="gtk_reserved4">
41954         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
41955           <return-value transfer-ownership="none">
41956             <type name="none" c:type="void"/>
41957           </return-value>
41958         </callback>
41959       </field>
41960     </record>
41961     <record name="PanedPrivate" c:type="GtkPanedPrivate">
41962     </record>
41963     <record name="PaperSize"
41964             c:type="GtkPaperSize"
41965             glib:type-name="GtkPaperSize"
41966             glib:get-type="gtk_paper_size_get_type">
41967       <constructor name="new" c:identifier="gtk_paper_size_new" version="2.10">
41968         <doc xml:whitespace="preserve">Creates a new #GtkPaperSize object by parsing a
41969 &lt;ulink url="ftp://ftp.pwg.org/pub/pwg/candidates/cs-pwgmsn10-20020226-5101.1.pdf"&gt;PWG 5101.1-2002&lt;/ulink&gt;
41970 paper name.
41971 If @name is %NULL, the default paper size is returned,
41972 see gtk_paper_size_get_default().
41973 to free it</doc>
41974         <return-value transfer-ownership="full">
41975           <doc xml:whitespace="preserve">a new #GtkPaperSize, use gtk_paper_size_free()</doc>
41976           <type name="PaperSize" c:type="GtkPaperSize*"/>
41977         </return-value>
41978         <parameters>
41979           <parameter name="name" transfer-ownership="none" allow-none="1">
41980             <doc xml:whitespace="preserve">a paper size name, or %NULL</doc>
41981             <type name="utf8" c:type="gchar*"/>
41982           </parameter>
41983         </parameters>
41984       </constructor>
41985       <constructor name="new_from_ppd"
41986                    c:identifier="gtk_paper_size_new_from_ppd"
41987                    version="2.10">
41988         <doc xml:whitespace="preserve">Creates a new #GtkPaperSize object by using 
41989 PPD information. 
41990 If @ppd_name is not a recognized PPD paper name, 
41991 construct a custom #GtkPaperSize object.
41992 to free it</doc>
41993         <return-value transfer-ownership="full">
41994           <doc xml:whitespace="preserve">a new #GtkPaperSize, use gtk_paper_size_free()</doc>
41995           <type name="PaperSize" c:type="GtkPaperSize*"/>
41996         </return-value>
41997         <parameters>
41998           <parameter name="ppd_name" transfer-ownership="none">
41999             <doc xml:whitespace="preserve">a PPD paper name</doc>
42000             <type name="utf8" c:type="gchar*"/>
42001           </parameter>
42002           <parameter name="ppd_display_name" transfer-ownership="none">
42003             <doc xml:whitespace="preserve">the corresponding human-readable name</doc>
42004             <type name="utf8" c:type="gchar*"/>
42005           </parameter>
42006           <parameter name="width" transfer-ownership="none">
42007             <doc xml:whitespace="preserve">the paper width, in points</doc>
42008             <type name="double" c:type="gdouble"/>
42009           </parameter>
42010           <parameter name="height" transfer-ownership="none">
42011             <doc xml:whitespace="preserve">the paper height in points</doc>
42012             <type name="double" c:type="gdouble"/>
42013           </parameter>
42014         </parameters>
42015       </constructor>
42016       <constructor name="new_custom"
42017                    c:identifier="gtk_paper_size_new_custom"
42018                    version="2.10">
42019         <doc xml:whitespace="preserve">Creates a new #GtkPaperSize object with the
42020 given parameters.
42021 to free it</doc>
42022         <return-value transfer-ownership="full">
42023           <doc xml:whitespace="preserve">a new #GtkPaperSize object, use gtk_paper_size_free()</doc>
42024           <type name="PaperSize" c:type="GtkPaperSize*"/>
42025         </return-value>
42026         <parameters>
42027           <parameter name="name" transfer-ownership="none">
42028             <doc xml:whitespace="preserve">the paper name</doc>
42029             <type name="utf8" c:type="gchar*"/>
42030           </parameter>
42031           <parameter name="display_name" transfer-ownership="none">
42032             <doc xml:whitespace="preserve">the human-readable name</doc>
42033             <type name="utf8" c:type="gchar*"/>
42034           </parameter>
42035           <parameter name="width" transfer-ownership="none">
42036             <doc xml:whitespace="preserve">the paper width, in units of @unit</doc>
42037             <type name="double" c:type="gdouble"/>
42038           </parameter>
42039           <parameter name="height" transfer-ownership="none">
42040             <doc xml:whitespace="preserve">the paper height, in units of @unit</doc>
42041             <type name="double" c:type="gdouble"/>
42042           </parameter>
42043           <parameter name="unit" transfer-ownership="none">
42044             <doc xml:whitespace="preserve">the unit for @width and @height</doc>
42045             <type name="Unit" c:type="GtkUnit"/>
42046           </parameter>
42047         </parameters>
42048       </constructor>
42049       <constructor name="new_from_key_file"
42050                    c:identifier="gtk_paper_size_new_from_key_file"
42051                    version="2.12"
42052                    throws="1">
42053         <doc xml:whitespace="preserve">Reads a paper size from the group @group_name in the key file
42054 paper size, or %NULL if an error occurred.</doc>
42055         <return-value transfer-ownership="full">
42056           <doc xml:whitespace="preserve">a new #GtkPaperSize object with the restored</doc>
42057           <type name="PaperSize" c:type="GtkPaperSize*"/>
42058         </return-value>
42059         <parameters>
42060           <parameter name="key_file" transfer-ownership="none">
42061             <doc xml:whitespace="preserve">the #GKeyFile to retrieve the papersize from</doc>
42062             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
42063           </parameter>
42064           <parameter name="group_name" transfer-ownership="none">
42065             <doc xml:whitespace="preserve">the name ofthe group in the key file to read, or %NULL to read the first group</doc>
42066             <type name="utf8" c:type="gchar*"/>
42067           </parameter>
42068         </parameters>
42069       </constructor>
42070       <method name="copy" c:identifier="gtk_paper_size_copy" version="2.10">
42071         <doc xml:whitespace="preserve">Copies an existing #GtkPaperSize.</doc>
42072         <return-value transfer-ownership="full">
42073           <doc xml:whitespace="preserve">a copy of @other</doc>
42074           <type name="PaperSize" c:type="GtkPaperSize*"/>
42075         </return-value>
42076       </method>
42077       <method name="free" c:identifier="gtk_paper_size_free" version="2.10">
42078         <doc xml:whitespace="preserve">Free the given #GtkPaperSize object.</doc>
42079         <return-value transfer-ownership="none">
42080           <type name="none" c:type="void"/>
42081         </return-value>
42082       </method>
42083       <method name="is_equal"
42084               c:identifier="gtk_paper_size_is_equal"
42085               version="2.10">
42086         <doc xml:whitespace="preserve">Compares two #GtkPaperSize objects.
42087 represent the same paper size</doc>
42088         <return-value transfer-ownership="none">
42089           <doc xml:whitespace="preserve">%TRUE, if @size1 and @size2</doc>
42090           <type name="boolean" c:type="gboolean"/>
42091         </return-value>
42092         <parameters>
42093           <parameter name="size2" transfer-ownership="none">
42094             <doc xml:whitespace="preserve">another #GtkPaperSize object</doc>
42095             <type name="PaperSize" c:type="GtkPaperSize*"/>
42096           </parameter>
42097         </parameters>
42098       </method>
42099       <method name="get_name"
42100               c:identifier="gtk_paper_size_get_name"
42101               version="2.10">
42102         <doc xml:whitespace="preserve">Gets the name of the #GtkPaperSize.</doc>
42103         <return-value transfer-ownership="none">
42104           <doc xml:whitespace="preserve">the name of @size</doc>
42105           <type name="utf8" c:type="gchar*"/>
42106         </return-value>
42107       </method>
42108       <method name="get_display_name"
42109               c:identifier="gtk_paper_size_get_display_name"
42110               version="2.10">
42111         <doc xml:whitespace="preserve">Gets the human-readable name of the #GtkPaperSize.</doc>
42112         <return-value transfer-ownership="none">
42113           <doc xml:whitespace="preserve">the human-readable name of @size</doc>
42114           <type name="utf8" c:type="gchar*"/>
42115         </return-value>
42116       </method>
42117       <method name="get_ppd_name"
42118               c:identifier="gtk_paper_size_get_ppd_name"
42119               version="2.10">
42120         <doc xml:whitespace="preserve">Gets the PPD name of the #GtkPaperSize, which
42121 may be %NULL.</doc>
42122         <return-value transfer-ownership="none">
42123           <doc xml:whitespace="preserve">the PPD name of @size</doc>
42124           <type name="utf8" c:type="gchar*"/>
42125         </return-value>
42126       </method>
42127       <method name="get_width"
42128               c:identifier="gtk_paper_size_get_width"
42129               version="2.10">
42130         <doc xml:whitespace="preserve">Gets the paper width of the #GtkPaperSize, in 
42131 units of @unit.</doc>
42132         <return-value transfer-ownership="none">
42133           <doc xml:whitespace="preserve">the paper width</doc>
42134           <type name="double" c:type="gdouble"/>
42135         </return-value>
42136         <parameters>
42137           <parameter name="unit" transfer-ownership="none">
42138             <doc xml:whitespace="preserve">the unit for the return value</doc>
42139             <type name="Unit" c:type="GtkUnit"/>
42140           </parameter>
42141         </parameters>
42142       </method>
42143       <method name="get_height"
42144               c:identifier="gtk_paper_size_get_height"
42145               version="2.10">
42146         <doc xml:whitespace="preserve">Gets the paper height of the #GtkPaperSize, in 
42147 units of @unit.</doc>
42148         <return-value transfer-ownership="none">
42149           <doc xml:whitespace="preserve">the paper height</doc>
42150           <type name="double" c:type="gdouble"/>
42151         </return-value>
42152         <parameters>
42153           <parameter name="unit" transfer-ownership="none">
42154             <doc xml:whitespace="preserve">the unit for the return value</doc>
42155             <type name="Unit" c:type="GtkUnit"/>
42156           </parameter>
42157         </parameters>
42158       </method>
42159       <method name="is_custom" c:identifier="gtk_paper_size_is_custom">
42160         <doc xml:whitespace="preserve">Returns %TRUE if @size is not a standard paper size.</doc>
42161         <return-value transfer-ownership="none">
42162           <doc xml:whitespace="preserve">whether @size is a custom paper size.</doc>
42163           <type name="boolean" c:type="gboolean"/>
42164         </return-value>
42165       </method>
42166       <method name="set_size"
42167               c:identifier="gtk_paper_size_set_size"
42168               version="2.10">
42169         <doc xml:whitespace="preserve">Changes the dimensions of a @size to @width x @height.</doc>
42170         <return-value transfer-ownership="none">
42171           <type name="none" c:type="void"/>
42172         </return-value>
42173         <parameters>
42174           <parameter name="width" transfer-ownership="none">
42175             <doc xml:whitespace="preserve">the new width in units of @unit</doc>
42176             <type name="double" c:type="gdouble"/>
42177           </parameter>
42178           <parameter name="height" transfer-ownership="none">
42179             <doc xml:whitespace="preserve">the new height in units of @unit</doc>
42180             <type name="double" c:type="gdouble"/>
42181           </parameter>
42182           <parameter name="unit" transfer-ownership="none">
42183             <doc xml:whitespace="preserve">the unit for @width and @height</doc>
42184             <type name="Unit" c:type="GtkUnit"/>
42185           </parameter>
42186         </parameters>
42187       </method>
42188       <method name="get_default_top_margin"
42189               c:identifier="gtk_paper_size_get_default_top_margin"
42190               version="2.10">
42191         <doc xml:whitespace="preserve">Gets the default top margin for the #GtkPaperSize.</doc>
42192         <return-value transfer-ownership="none">
42193           <doc xml:whitespace="preserve">the default top margin</doc>
42194           <type name="double" c:type="gdouble"/>
42195         </return-value>
42196         <parameters>
42197           <parameter name="unit" transfer-ownership="none">
42198             <doc xml:whitespace="preserve">the unit for the return value</doc>
42199             <type name="Unit" c:type="GtkUnit"/>
42200           </parameter>
42201         </parameters>
42202       </method>
42203       <method name="get_default_bottom_margin"
42204               c:identifier="gtk_paper_size_get_default_bottom_margin"
42205               version="2.10">
42206         <doc xml:whitespace="preserve">Gets the default bottom margin for the #GtkPaperSize.</doc>
42207         <return-value transfer-ownership="none">
42208           <doc xml:whitespace="preserve">the default bottom margin</doc>
42209           <type name="double" c:type="gdouble"/>
42210         </return-value>
42211         <parameters>
42212           <parameter name="unit" transfer-ownership="none">
42213             <doc xml:whitespace="preserve">the unit for the return value</doc>
42214             <type name="Unit" c:type="GtkUnit"/>
42215           </parameter>
42216         </parameters>
42217       </method>
42218       <method name="get_default_left_margin"
42219               c:identifier="gtk_paper_size_get_default_left_margin"
42220               version="2.10">
42221         <doc xml:whitespace="preserve">Gets the default left margin for the #GtkPaperSize.</doc>
42222         <return-value transfer-ownership="none">
42223           <doc xml:whitespace="preserve">the default left margin</doc>
42224           <type name="double" c:type="gdouble"/>
42225         </return-value>
42226         <parameters>
42227           <parameter name="unit" transfer-ownership="none">
42228             <doc xml:whitespace="preserve">the unit for the return value</doc>
42229             <type name="Unit" c:type="GtkUnit"/>
42230           </parameter>
42231         </parameters>
42232       </method>
42233       <method name="get_default_right_margin"
42234               c:identifier="gtk_paper_size_get_default_right_margin"
42235               version="2.10">
42236         <doc xml:whitespace="preserve">Gets the default right margin for the #GtkPaperSize.</doc>
42237         <return-value transfer-ownership="none">
42238           <doc xml:whitespace="preserve">the default right margin</doc>
42239           <type name="double" c:type="gdouble"/>
42240         </return-value>
42241         <parameters>
42242           <parameter name="unit" transfer-ownership="none">
42243             <doc xml:whitespace="preserve">the unit for the return value</doc>
42244             <type name="Unit" c:type="GtkUnit"/>
42245           </parameter>
42246         </parameters>
42247       </method>
42248       <method name="to_key_file"
42249               c:identifier="gtk_paper_size_to_key_file"
42250               version="2.12">
42251         <doc xml:whitespace="preserve">This function adds the paper size from @size to @key_file.</doc>
42252         <return-value transfer-ownership="none">
42253           <type name="none" c:type="void"/>
42254         </return-value>
42255         <parameters>
42256           <parameter name="key_file" transfer-ownership="none">
42257             <doc xml:whitespace="preserve">the #GKeyFile to save the paper size to</doc>
42258             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
42259           </parameter>
42260           <parameter name="group_name" transfer-ownership="none">
42261             <doc xml:whitespace="preserve">the group to add the settings to in @key_file</doc>
42262             <type name="utf8" c:type="gchar*"/>
42263           </parameter>
42264         </parameters>
42265       </method>
42266     </record>
42267     <enumeration name="PathPriorityType"
42268                  glib:type-name="GtkPathPriorityType"
42269                  glib:get-type="gtk_path_priority_type_get_type"
42270                  c:type="GtkPathPriorityType">
42271       <member name="lowest"
42272               value="0"
42273               c:identifier="GTK_PATH_PRIO_LOWEST"
42274               glib:nick="lowest"/>
42275       <member name="gtk"
42276               value="4"
42277               c:identifier="GTK_PATH_PRIO_GTK"
42278               glib:nick="gtk"/>
42279       <member name="application"
42280               value="8"
42281               c:identifier="GTK_PATH_PRIO_APPLICATION"
42282               glib:nick="application"/>
42283       <member name="theme"
42284               value="10"
42285               c:identifier="GTK_PATH_PRIO_THEME"
42286               glib:nick="theme"/>
42287       <member name="rc"
42288               value="12"
42289               c:identifier="GTK_PATH_PRIO_RC"
42290               glib:nick="rc"/>
42291       <member name="highest"
42292               value="15"
42293               c:identifier="GTK_PATH_PRIO_HIGHEST"
42294               glib:nick="highest"/>
42295     </enumeration>
42296     <enumeration name="PathType"
42297                  glib:type-name="GtkPathType"
42298                  glib:get-type="gtk_path_type_get_type"
42299                  c:type="GtkPathType">
42300       <member name="widget"
42301               value="0"
42302               c:identifier="GTK_PATH_WIDGET"
42303               glib:nick="widget"/>
42304       <member name="widget_class"
42305               value="1"
42306               c:identifier="GTK_PATH_WIDGET_CLASS"
42307               glib:nick="widget-class"/>
42308       <member name="class"
42309               value="2"
42310               c:identifier="GTK_PATH_CLASS"
42311               glib:nick="class"/>
42312     </enumeration>
42313     <class name="Pixmap"
42314            c:type="GtkPixmap"
42315            parent="Misc"
42316            glib:type-name="GtkPixmap"
42317            glib:get-type="gtk_pixmap_get_type"
42318            glib:type-struct="PixmapClass">
42319       <implements name="Atk.ImplementorIface"/>
42320       <implements name="Buildable"/>
42321       <constructor name="new" c:identifier="gtk_pixmap_new">
42322         <return-value transfer-ownership="full">
42323           <type name="Pixmap" c:type="GtkWidget*"/>
42324         </return-value>
42325         <parameters>
42326           <parameter name="pixmap" transfer-ownership="none">
42327             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
42328           </parameter>
42329           <parameter name="mask" transfer-ownership="none" allow-none="1">
42330             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
42331           </parameter>
42332         </parameters>
42333       </constructor>
42334       <method name="set" c:identifier="gtk_pixmap_set">
42335         <return-value transfer-ownership="none">
42336           <type name="none" c:type="void"/>
42337         </return-value>
42338         <parameters>
42339           <parameter name="val" transfer-ownership="none">
42340             <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
42341           </parameter>
42342           <parameter name="mask" transfer-ownership="none">
42343             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
42344           </parameter>
42345         </parameters>
42346       </method>
42347       <method name="get" c:identifier="gtk_pixmap_get">
42348         <return-value transfer-ownership="none">
42349           <type name="none" c:type="void"/>
42350         </return-value>
42351         <parameters>
42352           <parameter name="val" transfer-ownership="none">
42353             <type name="Gdk.Pixmap" c:type="GdkPixmap**"/>
42354           </parameter>
42355           <parameter name="mask" transfer-ownership="none">
42356             <type name="Gdk.Bitmap" c:type="GdkBitmap**"/>
42357           </parameter>
42358         </parameters>
42359       </method>
42360       <method name="set_build_insensitive"
42361               c:identifier="gtk_pixmap_set_build_insensitive">
42362         <return-value transfer-ownership="none">
42363           <type name="none" c:type="void"/>
42364         </return-value>
42365         <parameters>
42366           <parameter name="build" transfer-ownership="none">
42367             <type name="boolean" c:type="gboolean"/>
42368           </parameter>
42369         </parameters>
42370       </method>
42371       <field name="misc">
42372         <type name="Misc" c:type="GtkMisc"/>
42373       </field>
42374       <field name="pixmap">
42375         <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
42376       </field>
42377       <field name="mask">
42378         <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
42379       </field>
42380       <field name="pixmap_insensitive">
42381         <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
42382       </field>
42383       <field name="build_insensitive" bits="1">
42384         <type name="uint" c:type="guint"/>
42385       </field>
42386     </class>
42387     <record name="PixmapClass"
42388             c:type="GtkPixmapClass"
42389             glib:is-gtype-struct-for="Pixmap">
42390       <field name="parent_class">
42391         <type name="MiscClass" c:type="GtkMiscClass"/>
42392       </field>
42393     </record>
42394     <class name="Plug"
42395            c:type="GtkPlug"
42396            parent="Window"
42397            glib:type-name="GtkPlug"
42398            glib:get-type="gtk_plug_get_type"
42399            glib:type-struct="PlugClass">
42400       <implements name="Atk.ImplementorIface"/>
42401       <implements name="Buildable"/>
42402       <constructor name="new" c:identifier="gtk_plug_new">
42403         <doc xml:whitespace="preserve">Creates a new plug widget inside the #GtkSocket identified
42404 by @socket_id. If @socket_id is 0, the plug is left "unplugged" and
42405 can later be plugged into a #GtkSocket by  gtk_socket_add_id().</doc>
42406         <return-value transfer-ownership="full">
42407           <doc xml:whitespace="preserve">the new #GtkPlug widget.</doc>
42408           <type name="Plug" c:type="GtkWidget*"/>
42409         </return-value>
42410         <parameters>
42411           <parameter name="socket_id" transfer-ownership="none">
42412             <doc xml:whitespace="preserve">the window ID of the socket, or 0.</doc>
42413             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
42414           </parameter>
42415         </parameters>
42416       </constructor>
42417       <constructor name="new_for_display"
42418                    c:identifier="gtk_plug_new_for_display"
42419                    version="2.2">
42420         <doc xml:whitespace="preserve">Create a new plug widget inside the #GtkSocket identified by socket_id.</doc>
42421         <return-value transfer-ownership="full">
42422           <doc xml:whitespace="preserve">the new #GtkPlug widget.</doc>
42423           <type name="Plug" c:type="GtkWidget*"/>
42424         </return-value>
42425         <parameters>
42426           <parameter name="display" transfer-ownership="none">
42427             <type name="Gdk.Display" c:type="GdkDisplay*"/>
42428           </parameter>
42429           <parameter name="socket_id" transfer-ownership="none">
42430             <doc xml:whitespace="preserve">the XID of the socket's window.</doc>
42431             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
42432           </parameter>
42433         </parameters>
42434       </constructor>
42435       <method name="construct" c:identifier="gtk_plug_construct">
42436         <doc xml:whitespace="preserve">Finish the initialization of @plug for a given #GtkSocket identified by</doc>
42437         <return-value transfer-ownership="none">
42438           <type name="none" c:type="void"/>
42439         </return-value>
42440         <parameters>
42441           <parameter name="socket_id" transfer-ownership="none">
42442             <doc xml:whitespace="preserve">the XID of the socket's window.</doc>
42443             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
42444           </parameter>
42445         </parameters>
42446       </method>
42447       <method name="construct_for_display"
42448               c:identifier="gtk_plug_construct_for_display"
42449               version="2.2">
42450         <doc xml:whitespace="preserve">Finish the initialization of @plug for a given #GtkSocket identified by
42451 This function will generally only be used by classes deriving from #GtkPlug.</doc>
42452         <return-value transfer-ownership="none">
42453           <type name="none" c:type="void"/>
42454         </return-value>
42455         <parameters>
42456           <parameter name="display" transfer-ownership="none">
42457             <doc xml:whitespace="preserve">the #GdkDisplay associated with @socket_id's #GtkSocket.</doc>
42458             <type name="Gdk.Display" c:type="GdkDisplay*"/>
42459           </parameter>
42460           <parameter name="socket_id" transfer-ownership="none">
42461             <doc xml:whitespace="preserve">the XID of the socket's window.</doc>
42462             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
42463           </parameter>
42464         </parameters>
42465       </method>
42466       <method name="get_id" c:identifier="gtk_plug_get_id">
42467         <doc xml:whitespace="preserve">Gets the window ID of a #GtkPlug widget, which can then
42468 be used to embed this window inside another window, for
42469 instance with gtk_socket_add_id().</doc>
42470         <return-value transfer-ownership="full">
42471           <doc xml:whitespace="preserve">the window ID for the plug</doc>
42472           <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
42473         </return-value>
42474       </method>
42475       <method name="get_embedded"
42476               c:identifier="gtk_plug_get_embedded"
42477               version="2.14">
42478         <doc xml:whitespace="preserve">Determines whether the plug is embedded in a socket.</doc>
42479         <return-value transfer-ownership="none">
42480           <doc xml:whitespace="preserve">%TRUE if the plug is embedded in a socket</doc>
42481           <type name="boolean" c:type="gboolean"/>
42482         </return-value>
42483       </method>
42484       <method name="get_socket_window"
42485               c:identifier="gtk_plug_get_socket_window"
42486               version="2.14">
42487         <doc xml:whitespace="preserve">Retrieves the socket the plug is embedded in.</doc>
42488         <return-value transfer-ownership="full">
42489           <doc xml:whitespace="preserve">the window of the socket, or %NULL</doc>
42490           <type name="Gdk.Window" c:type="GdkWindow*"/>
42491         </return-value>
42492       </method>
42493       <property name="embedded" version="2.12" transfer-ownership="none">
42494         <doc xml:whitespace="preserve">%TRUE if the plug is embedded in a socket.</doc>
42495         <type name="boolean" c:type="gboolean"/>
42496       </property>
42497       <property name="socket-window" version="2.14" transfer-ownership="none">
42498         <doc xml:whitespace="preserve">The window of the socket the plug is embedded in.</doc>
42499         <type name="Gdk.Window" c:type="GdkWindow"/>
42500       </property>
42501       <field name="window">
42502         <type name="Window" c:type="GtkWindow"/>
42503       </field>
42504       <field name="socket_window">
42505         <type name="Gdk.Window" c:type="GdkWindow*"/>
42506       </field>
42507       <field name="modality_window">
42508         <type name="Widget" c:type="GtkWidget*"/>
42509       </field>
42510       <field name="modality_group">
42511         <type name="WindowGroup" c:type="GtkWindowGroup*"/>
42512       </field>
42513       <field name="grabbed_keys">
42514         <type name="GLib.HashTable" c:type="GHashTable*"/>
42515       </field>
42516       <field name="same_app" bits="1">
42517         <type name="uint" c:type="guint"/>
42518       </field>
42519       <glib:signal name="embedded">
42520         <doc xml:whitespace="preserve">Gets emitted when the plug becomes embedded in a socket.</doc>
42521         <return-value transfer-ownership="full">
42522           <type name="none" c:type="void"/>
42523         </return-value>
42524       </glib:signal>
42525     </class>
42526     <record name="PlugClass"
42527             c:type="GtkPlugClass"
42528             glib:is-gtype-struct-for="Plug">
42529       <field name="parent_class">
42530         <type name="WindowClass" c:type="GtkWindowClass"/>
42531       </field>
42532       <field name="embedded">
42533         <callback name="embedded" c:type="embedded">
42534           <return-value transfer-ownership="none">
42535             <type name="none" c:type="void"/>
42536           </return-value>
42537           <parameters>
42538             <parameter name="plug" transfer-ownership="none">
42539               <type name="Plug" c:type="GtkPlug*"/>
42540             </parameter>
42541           </parameters>
42542         </callback>
42543       </field>
42544       <field name="gtk_reserved1">
42545         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
42546           <return-value transfer-ownership="none">
42547             <type name="none" c:type="void"/>
42548           </return-value>
42549         </callback>
42550       </field>
42551       <field name="gtk_reserved2">
42552         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
42553           <return-value transfer-ownership="none">
42554             <type name="none" c:type="void"/>
42555           </return-value>
42556         </callback>
42557       </field>
42558       <field name="gtk_reserved3">
42559         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
42560           <return-value transfer-ownership="none">
42561             <type name="none" c:type="void"/>
42562           </return-value>
42563         </callback>
42564       </field>
42565       <field name="gtk_reserved4">
42566         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
42567           <return-value transfer-ownership="none">
42568             <type name="none" c:type="void"/>
42569           </return-value>
42570         </callback>
42571       </field>
42572     </record>
42573     <enumeration name="PolicyType"
42574                  glib:type-name="GtkPolicyType"
42575                  glib:get-type="gtk_policy_type_get_type"
42576                  c:type="GtkPolicyType">
42577       <member name="always"
42578               value="0"
42579               c:identifier="GTK_POLICY_ALWAYS"
42580               glib:nick="always"/>
42581       <member name="automatic"
42582               value="1"
42583               c:identifier="GTK_POLICY_AUTOMATIC"
42584               glib:nick="automatic"/>
42585       <member name="never"
42586               value="2"
42587               c:identifier="GTK_POLICY_NEVER"
42588               glib:nick="never"/>
42589     </enumeration>
42590     <enumeration name="PositionType"
42591                  glib:type-name="GtkPositionType"
42592                  glib:get-type="gtk_position_type_get_type"
42593                  c:type="GtkPositionType">
42594       <member name="left"
42595               value="0"
42596               c:identifier="GTK_POS_LEFT"
42597               glib:nick="left"/>
42598       <member name="right"
42599               value="1"
42600               c:identifier="GTK_POS_RIGHT"
42601               glib:nick="right"/>
42602       <member name="top" value="2" c:identifier="GTK_POS_TOP" glib:nick="top"/>
42603       <member name="bottom"
42604               value="3"
42605               c:identifier="GTK_POS_BOTTOM"
42606               glib:nick="bottom"/>
42607     </enumeration>
42608     <class name="Preview"
42609            c:type="GtkPreview"
42610            parent="Widget"
42611            glib:type-name="GtkPreview"
42612            glib:get-type="gtk_preview_get_type"
42613            glib:type-struct="PreviewClass">
42614       <implements name="Atk.ImplementorIface"/>
42615       <implements name="Buildable"/>
42616       <constructor name="new" c:identifier="gtk_preview_new">
42617         <return-value transfer-ownership="full">
42618           <type name="Preview" c:type="GtkWidget*"/>
42619         </return-value>
42620         <parameters>
42621           <parameter name="type" transfer-ownership="none">
42622             <type name="PreviewType" c:type="GtkPreviewType"/>
42623           </parameter>
42624         </parameters>
42625       </constructor>
42626       <function name="uninit" c:identifier="gtk_preview_uninit">
42627         <return-value transfer-ownership="none">
42628           <type name="none" c:type="void"/>
42629         </return-value>
42630       </function>
42631       <function name="set_gamma" c:identifier="gtk_preview_set_gamma">
42632         <return-value transfer-ownership="none">
42633           <type name="none" c:type="void"/>
42634         </return-value>
42635         <parameters>
42636           <parameter name="gamma_" transfer-ownership="none">
42637             <type name="double" c:type="double"/>
42638           </parameter>
42639         </parameters>
42640       </function>
42641       <function name="set_color_cube"
42642                 c:identifier="gtk_preview_set_color_cube">
42643         <return-value transfer-ownership="none">
42644           <type name="none" c:type="void"/>
42645         </return-value>
42646         <parameters>
42647           <parameter name="nred_shades" transfer-ownership="none">
42648             <type name="uint" c:type="guint"/>
42649           </parameter>
42650           <parameter name="ngreen_shades" transfer-ownership="none">
42651             <type name="uint" c:type="guint"/>
42652           </parameter>
42653           <parameter name="nblue_shades" transfer-ownership="none">
42654             <type name="uint" c:type="guint"/>
42655           </parameter>
42656           <parameter name="ngray_shades" transfer-ownership="none">
42657             <type name="uint" c:type="guint"/>
42658           </parameter>
42659         </parameters>
42660       </function>
42661       <function name="set_install_cmap"
42662                 c:identifier="gtk_preview_set_install_cmap">
42663         <return-value transfer-ownership="none">
42664           <type name="none" c:type="void"/>
42665         </return-value>
42666         <parameters>
42667           <parameter name="install_cmap" transfer-ownership="none">
42668             <type name="int" c:type="gint"/>
42669           </parameter>
42670         </parameters>
42671       </function>
42672       <function name="set_reserved" c:identifier="gtk_preview_set_reserved">
42673         <return-value transfer-ownership="none">
42674           <type name="none" c:type="void"/>
42675         </return-value>
42676         <parameters>
42677           <parameter name="nreserved" transfer-ownership="none">
42678             <type name="int" c:type="gint"/>
42679           </parameter>
42680         </parameters>
42681       </function>
42682       <function name="get_visual" c:identifier="gtk_preview_get_visual">
42683         <return-value transfer-ownership="full">
42684           <type name="Gdk.Visual" c:type="GdkVisual*"/>
42685         </return-value>
42686       </function>
42687       <function name="get_cmap" c:identifier="gtk_preview_get_cmap">
42688         <return-value transfer-ownership="full">
42689           <type name="Gdk.Colormap" c:type="GdkColormap*"/>
42690         </return-value>
42691       </function>
42692       <function name="get_info" c:identifier="gtk_preview_get_info">
42693         <return-value transfer-ownership="full">
42694           <type name="PreviewInfo" c:type="GtkPreviewInfo*"/>
42695         </return-value>
42696       </function>
42697       <function name="reset" c:identifier="gtk_preview_reset">
42698         <return-value transfer-ownership="none">
42699           <type name="none" c:type="void"/>
42700         </return-value>
42701       </function>
42702       <method name="size" c:identifier="gtk_preview_size">
42703         <return-value transfer-ownership="none">
42704           <type name="none" c:type="void"/>
42705         </return-value>
42706         <parameters>
42707           <parameter name="width" transfer-ownership="none">
42708             <type name="int" c:type="gint"/>
42709           </parameter>
42710           <parameter name="height" transfer-ownership="none">
42711             <type name="int" c:type="gint"/>
42712           </parameter>
42713         </parameters>
42714       </method>
42715       <method name="put" c:identifier="gtk_preview_put">
42716         <return-value transfer-ownership="none">
42717           <type name="none" c:type="void"/>
42718         </return-value>
42719         <parameters>
42720           <parameter name="window" transfer-ownership="none">
42721             <type name="Gdk.Window" c:type="GdkWindow*"/>
42722           </parameter>
42723           <parameter name="gc" transfer-ownership="none">
42724             <type name="Gdk.GC" c:type="GdkGC*"/>
42725           </parameter>
42726           <parameter name="srcx" transfer-ownership="none">
42727             <type name="int" c:type="gint"/>
42728           </parameter>
42729           <parameter name="srcy" transfer-ownership="none">
42730             <type name="int" c:type="gint"/>
42731           </parameter>
42732           <parameter name="destx" transfer-ownership="none">
42733             <type name="int" c:type="gint"/>
42734           </parameter>
42735           <parameter name="desty" transfer-ownership="none">
42736             <type name="int" c:type="gint"/>
42737           </parameter>
42738           <parameter name="width" transfer-ownership="none">
42739             <type name="int" c:type="gint"/>
42740           </parameter>
42741           <parameter name="height" transfer-ownership="none">
42742             <type name="int" c:type="gint"/>
42743           </parameter>
42744         </parameters>
42745       </method>
42746       <method name="draw_row" c:identifier="gtk_preview_draw_row">
42747         <return-value transfer-ownership="none">
42748           <type name="none" c:type="void"/>
42749         </return-value>
42750         <parameters>
42751           <parameter name="data" transfer-ownership="none">
42752             <array c:type="guchar*">
42753               <type name="uint8"/>
42754             </array>
42755           </parameter>
42756           <parameter name="x" transfer-ownership="none">
42757             <type name="int" c:type="gint"/>
42758           </parameter>
42759           <parameter name="y" transfer-ownership="none">
42760             <type name="int" c:type="gint"/>
42761           </parameter>
42762           <parameter name="w" transfer-ownership="none">
42763             <type name="int" c:type="gint"/>
42764           </parameter>
42765         </parameters>
42766       </method>
42767       <method name="set_expand" c:identifier="gtk_preview_set_expand">
42768         <return-value transfer-ownership="none">
42769           <type name="none" c:type="void"/>
42770         </return-value>
42771         <parameters>
42772           <parameter name="expand" transfer-ownership="none">
42773             <type name="boolean" c:type="gboolean"/>
42774           </parameter>
42775         </parameters>
42776       </method>
42777       <method name="set_dither" c:identifier="gtk_preview_set_dither">
42778         <return-value transfer-ownership="none">
42779           <type name="none" c:type="void"/>
42780         </return-value>
42781         <parameters>
42782           <parameter name="dither" transfer-ownership="none">
42783             <type name="Gdk.RgbDither" c:type="GdkRgbDither"/>
42784           </parameter>
42785         </parameters>
42786       </method>
42787       <property name="expand" writable="1" transfer-ownership="none">
42788         <type name="boolean" c:type="gboolean"/>
42789       </property>
42790       <field name="widget">
42791         <type name="Widget" c:type="GtkWidget"/>
42792       </field>
42793       <field name="buffer">
42794         <type name="any" c:type="guchar*"/>
42795       </field>
42796       <field name="buffer_width">
42797         <type name="uint16" c:type="guint16"/>
42798       </field>
42799       <field name="buffer_height">
42800         <type name="uint16" c:type="guint16"/>
42801       </field>
42802       <field name="bpp">
42803         <type name="uint16" c:type="guint16"/>
42804       </field>
42805       <field name="rowstride">
42806         <type name="uint16" c:type="guint16"/>
42807       </field>
42808       <field name="dither">
42809         <type name="Gdk.RgbDither" c:type="GdkRgbDither"/>
42810       </field>
42811       <field name="type" bits="1">
42812         <type name="uint" c:type="guint"/>
42813       </field>
42814       <field name="expand" bits="1">
42815         <type name="uint" c:type="guint"/>
42816       </field>
42817     </class>
42818     <record name="PreviewClass"
42819             c:type="GtkPreviewClass"
42820             glib:is-gtype-struct-for="Preview">
42821       <field name="parent_class">
42822         <type name="WidgetClass" c:type="GtkWidgetClass"/>
42823       </field>
42824       <field name="info">
42825         <type name="PreviewInfo" c:type="GtkPreviewInfo"/>
42826       </field>
42827     </record>
42828     <record name="PreviewInfo" c:type="GtkPreviewInfo">
42829       <field name="lookup" writable="1">
42830         <type name="any" c:type="guchar*"/>
42831       </field>
42832       <field name="gamma" writable="1">
42833         <type name="double" c:type="gdouble"/>
42834       </field>
42835     </record>
42836     <enumeration name="PreviewType"
42837                  glib:type-name="GtkPreviewType"
42838                  glib:get-type="gtk_preview_type_get_type"
42839                  c:type="GtkPreviewType">
42840       <member name="color"
42841               value="0"
42842               c:identifier="GTK_PREVIEW_COLOR"
42843               glib:nick="color"/>
42844       <member name="grayscale"
42845               value="1"
42846               c:identifier="GTK_PREVIEW_GRAYSCALE"
42847               glib:nick="grayscale"/>
42848     </enumeration>
42849     <class name="PrintContext"
42850            c:type="GtkPrintContext"
42851            parent="GObject.Object"
42852            glib:type-name="GtkPrintContext"
42853            glib:get-type="gtk_print_context_get_type">
42854       <method name="get_cairo_context"
42855               c:identifier="gtk_print_context_get_cairo_context"
42856               version="2.10">
42857         <doc xml:whitespace="preserve">Obtains the cairo context that is associated with the
42858 #GtkPrintContext.</doc>
42859         <return-value transfer-ownership="full">
42860           <doc xml:whitespace="preserve">the cairo context of @context</doc>
42861           <type name="cairo.Context" c:type="cairo_t*"/>
42862         </return-value>
42863       </method>
42864       <method name="get_page_setup"
42865               c:identifier="gtk_print_context_get_page_setup"
42866               version="2.10">
42867         <doc xml:whitespace="preserve">Obtains the #GtkPageSetup that determines the page
42868 dimensions of the #GtkPrintContext.</doc>
42869         <return-value transfer-ownership="full">
42870           <doc xml:whitespace="preserve">the page setup of @context</doc>
42871           <type name="PageSetup" c:type="GtkPageSetup*"/>
42872         </return-value>
42873       </method>
42874       <method name="get_width"
42875               c:identifier="gtk_print_context_get_width"
42876               version="2.10">
42877         <doc xml:whitespace="preserve">Obtains the width of the #GtkPrintContext, in pixels.</doc>
42878         <return-value transfer-ownership="none">
42879           <doc xml:whitespace="preserve">the width of @context</doc>
42880           <type name="double" c:type="gdouble"/>
42881         </return-value>
42882       </method>
42883       <method name="get_height"
42884               c:identifier="gtk_print_context_get_height"
42885               version="2.10">
42886         <doc xml:whitespace="preserve">Obtains the height of the #GtkPrintContext, in pixels.</doc>
42887         <return-value transfer-ownership="none">
42888           <doc xml:whitespace="preserve">the height of @context</doc>
42889           <type name="double" c:type="gdouble"/>
42890         </return-value>
42891       </method>
42892       <method name="get_dpi_x"
42893               c:identifier="gtk_print_context_get_dpi_x"
42894               version="2.10">
42895         <doc xml:whitespace="preserve">Obtains the horizontal resolution of the #GtkPrintContext,
42896 in dots per inch.</doc>
42897         <return-value transfer-ownership="none">
42898           <doc xml:whitespace="preserve">the horizontal resolution of @context</doc>
42899           <type name="double" c:type="gdouble"/>
42900         </return-value>
42901       </method>
42902       <method name="get_dpi_y"
42903               c:identifier="gtk_print_context_get_dpi_y"
42904               version="2.10">
42905         <doc xml:whitespace="preserve">Obtains the vertical resolution of the #GtkPrintContext,
42906 in dots per inch.</doc>
42907         <return-value transfer-ownership="none">
42908           <doc xml:whitespace="preserve">the vertical resolution of @context</doc>
42909           <type name="double" c:type="gdouble"/>
42910         </return-value>
42911       </method>
42912       <method name="get_hard_margins"
42913               c:identifier="gtk_print_context_get_hard_margins"
42914               version="2.20">
42915         <doc xml:whitespace="preserve">Obtains the hardware printer margins of the #GtkPrintContext, in units.</doc>
42916         <return-value transfer-ownership="none">
42917           <doc xml:whitespace="preserve">%TRUE if the hard margins were retrieved</doc>
42918           <type name="boolean" c:type="gboolean"/>
42919         </return-value>
42920         <parameters>
42921           <parameter name="top"
42922                      direction="out"
42923                      caller-allocates="0"
42924                      transfer-ownership="full">
42925             <doc xml:whitespace="preserve">top hardware printer margin</doc>
42926             <type name="double" c:type="gdouble*"/>
42927           </parameter>
42928           <parameter name="bottom"
42929                      direction="out"
42930                      caller-allocates="0"
42931                      transfer-ownership="full">
42932             <doc xml:whitespace="preserve">bottom hardware printer margin</doc>
42933             <type name="double" c:type="gdouble*"/>
42934           </parameter>
42935           <parameter name="left"
42936                      direction="out"
42937                      caller-allocates="0"
42938                      transfer-ownership="full">
42939             <doc xml:whitespace="preserve">left hardware printer margin</doc>
42940             <type name="double" c:type="gdouble*"/>
42941           </parameter>
42942           <parameter name="right"
42943                      direction="out"
42944                      caller-allocates="0"
42945                      transfer-ownership="full">
42946             <doc xml:whitespace="preserve">right hardware printer margin</doc>
42947             <type name="double" c:type="gdouble*"/>
42948           </parameter>
42949         </parameters>
42950       </method>
42951       <method name="get_pango_fontmap"
42952               c:identifier="gtk_print_context_get_pango_fontmap"
42953               version="2.10">
42954         <doc xml:whitespace="preserve">Returns a #PangoFontMap that is suitable for use 
42955 with the #GtkPrintContext.</doc>
42956         <return-value transfer-ownership="full">
42957           <doc xml:whitespace="preserve">the font map of @context</doc>
42958           <type name="Pango.FontMap" c:type="PangoFontMap*"/>
42959         </return-value>
42960       </method>
42961       <method name="create_pango_context"
42962               c:identifier="gtk_print_context_create_pango_context"
42963               version="2.10">
42964         <doc xml:whitespace="preserve">Creates a new #PangoContext that can be used with the
42965 #GtkPrintContext.</doc>
42966         <return-value transfer-ownership="full">
42967           <doc xml:whitespace="preserve">a new Pango context for @context</doc>
42968           <type name="Pango.Context" c:type="PangoContext*"/>
42969         </return-value>
42970       </method>
42971       <method name="create_pango_layout"
42972               c:identifier="gtk_print_context_create_pango_layout"
42973               version="2.10">
42974         <doc xml:whitespace="preserve">Creates a new #PangoLayout that is suitable for use
42975 with the #GtkPrintContext.</doc>
42976         <return-value transfer-ownership="full">
42977           <doc xml:whitespace="preserve">a new Pango layout for @context</doc>
42978           <type name="Pango.Layout" c:type="PangoLayout*"/>
42979         </return-value>
42980       </method>
42981       <method name="set_cairo_context"
42982               c:identifier="gtk_print_context_set_cairo_context"
42983               version="2.10">
42984         <doc xml:whitespace="preserve">Sets a new cairo context on a print context. 
42985 This function is intended to be used when implementing
42986 an internal print preview, it is not needed for printing,
42987 since GTK+ itself creates a suitable cairo context in that
42988 case.</doc>
42989         <return-value transfer-ownership="none">
42990           <type name="none" c:type="void"/>
42991         </return-value>
42992         <parameters>
42993           <parameter name="cr" transfer-ownership="none">
42994             <doc xml:whitespace="preserve">the cairo context</doc>
42995             <type name="cairo.Context" c:type="cairo_t*"/>
42996           </parameter>
42997           <parameter name="dpi_x" transfer-ownership="none">
42998             <doc xml:whitespace="preserve">the horizontal resolution to use with @cr</doc>
42999             <type name="double" c:type="double"/>
43000           </parameter>
43001           <parameter name="dpi_y" transfer-ownership="none">
43002             <doc xml:whitespace="preserve">the vertical resolution to use with @cr</doc>
43003             <type name="double" c:type="double"/>
43004           </parameter>
43005         </parameters>
43006       </method>
43007     </class>
43008     <enumeration name="PrintDuplex"
43009                  glib:type-name="GtkPrintDuplex"
43010                  glib:get-type="gtk_print_duplex_get_type"
43011                  c:type="GtkPrintDuplex">
43012       <member name="simplex"
43013               value="0"
43014               c:identifier="GTK_PRINT_DUPLEX_SIMPLEX"
43015               glib:nick="simplex"/>
43016       <member name="horizontal"
43017               value="1"
43018               c:identifier="GTK_PRINT_DUPLEX_HORIZONTAL"
43019               glib:nick="horizontal"/>
43020       <member name="vertical"
43021               value="2"
43022               c:identifier="GTK_PRINT_DUPLEX_VERTICAL"
43023               glib:nick="vertical"/>
43024     </enumeration>
43025     <enumeration name="PrintError"
43026                  glib:type-name="GtkPrintError"
43027                  glib:get-type="gtk_print_error_get_type"
43028                  c:type="GtkPrintError"
43029                  glib:error-quark="gtk_print_error_quark">
43030       <member name="general"
43031               value="0"
43032               c:identifier="GTK_PRINT_ERROR_GENERAL"
43033               glib:nick="general"/>
43034       <member name="internal_error"
43035               value="1"
43036               c:identifier="GTK_PRINT_ERROR_INTERNAL_ERROR"
43037               glib:nick="internal-error"/>
43038       <member name="nomem"
43039               value="2"
43040               c:identifier="GTK_PRINT_ERROR_NOMEM"
43041               glib:nick="nomem"/>
43042       <member name="invalid_file"
43043               value="3"
43044               c:identifier="GTK_PRINT_ERROR_INVALID_FILE"
43045               glib:nick="invalid-file"/>
43046     </enumeration>
43047     <callback name="PrintFunc" c:type="GtkPrintFunc">
43048       <return-value transfer-ownership="none">
43049         <type name="none" c:type="void"/>
43050       </return-value>
43051       <parameters>
43052         <parameter name="func_data" transfer-ownership="none">
43053           <type name="any" c:type="gpointer"/>
43054         </parameter>
43055         <parameter name="str" transfer-ownership="none">
43056           <type name="utf8" c:type="gchar*"/>
43057         </parameter>
43058       </parameters>
43059     </callback>
43060     <class name="PrintOperation"
43061            c:type="GtkPrintOperation"
43062            parent="GObject.Object"
43063            glib:type-name="GtkPrintOperation"
43064            glib:get-type="gtk_print_operation_get_type"
43065            glib:type-struct="PrintOperationClass">
43066       <implements name="PrintOperationPreview"/>
43067       <constructor name="new"
43068                    c:identifier="gtk_print_operation_new"
43069                    version="2.10">
43070         <doc xml:whitespace="preserve">Creates a new #GtkPrintOperation.</doc>
43071         <return-value transfer-ownership="full">
43072           <doc xml:whitespace="preserve">a new #GtkPrintOperation</doc>
43073           <type name="PrintOperation" c:type="GtkPrintOperation*"/>
43074         </return-value>
43075       </constructor>
43076       <method name="set_default_page_setup"
43077               c:identifier="gtk_print_operation_set_default_page_setup"
43078               version="2.10">
43079         <doc xml:whitespace="preserve">Makes @default_page_setup the default page setup for @op.
43080 This page setup will be used by gtk_print_operation_run(),
43081 but it can be overridden on a per-page basis by connecting
43082 to the #GtkPrintOperation::request-page-setup signal.</doc>
43083         <return-value transfer-ownership="none">
43084           <type name="none" c:type="void"/>
43085         </return-value>
43086         <parameters>
43087           <parameter name="default_page_setup"
43088                      transfer-ownership="none"
43089                      allow-none="1">
43090             <doc xml:whitespace="preserve">a #GtkPageSetup, or %NULL</doc>
43091             <type name="PageSetup" c:type="GtkPageSetup*"/>
43092           </parameter>
43093         </parameters>
43094       </method>
43095       <method name="get_default_page_setup"
43096               c:identifier="gtk_print_operation_get_default_page_setup"
43097               version="2.10">
43098         <doc xml:whitespace="preserve">Returns the default page setup, see 
43099 gtk_print_operation_set_default_page_setup().</doc>
43100         <return-value transfer-ownership="full">
43101           <doc xml:whitespace="preserve">the default page setup</doc>
43102           <type name="PageSetup" c:type="GtkPageSetup*"/>
43103         </return-value>
43104       </method>
43105       <method name="set_print_settings"
43106               c:identifier="gtk_print_operation_set_print_settings"
43107               version="2.10">
43108         <doc xml:whitespace="preserve">Sets the print settings for @op. This is typically used to
43109 re-establish print settings from a previous print operation,
43110 see gtk_print_operation_run().</doc>
43111         <return-value transfer-ownership="none">
43112           <type name="none" c:type="void"/>
43113         </return-value>
43114         <parameters>
43115           <parameter name="print_settings"
43116                      transfer-ownership="none"
43117                      allow-none="1">
43118             <doc xml:whitespace="preserve">#GtkPrintSettings</doc>
43119             <type name="PrintSettings" c:type="GtkPrintSettings*"/>
43120           </parameter>
43121         </parameters>
43122       </method>
43123       <method name="get_print_settings"
43124               c:identifier="gtk_print_operation_get_print_settings"
43125               version="2.10">
43126         <doc xml:whitespace="preserve">Returns the current print settings. 
43127 Note that the return value is %NULL until either 
43128 gtk_print_operation_set_print_settings() or 
43129 gtk_print_operation_run() have been called.</doc>
43130         <return-value transfer-ownership="full">
43131           <doc xml:whitespace="preserve">the current print settings of @op.</doc>
43132           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
43133         </return-value>
43134       </method>
43135       <method name="set_job_name"
43136               c:identifier="gtk_print_operation_set_job_name"
43137               version="2.10">
43138         <doc xml:whitespace="preserve">Sets the name of the print job. The name is used to identify 
43139 the job (e.g. in monitoring applications like eggcups). 
43140 If you don't set a job name, GTK+ picks a default one by 
43141 numbering successive print jobs.</doc>
43142         <return-value transfer-ownership="none">
43143           <type name="none" c:type="void"/>
43144         </return-value>
43145         <parameters>
43146           <parameter name="job_name" transfer-ownership="none">
43147             <doc xml:whitespace="preserve">a string that identifies the print job</doc>
43148             <type name="utf8" c:type="gchar*"/>
43149           </parameter>
43150         </parameters>
43151       </method>
43152       <method name="set_n_pages"
43153               c:identifier="gtk_print_operation_set_n_pages"
43154               version="2.10">
43155         <doc xml:whitespace="preserve">Sets the number of pages in the document. 
43156 This &lt;emphasis&gt;must&lt;/emphasis&gt; be set to a positive number
43157 before the rendering starts. It may be set in a 
43158 #GtkPrintOperation::begin-print signal hander.
43159 Note that the page numbers passed to the 
43160 #GtkPrintOperation::request-page-setup 
43161 and #GtkPrintOperation::draw-page signals are 0-based, i.e. if 
43162 the user chooses to print all pages, the last ::draw-page signal 
43163 will be for page @n_pages - 1.</doc>
43164         <return-value transfer-ownership="none">
43165           <type name="none" c:type="void"/>
43166         </return-value>
43167         <parameters>
43168           <parameter name="n_pages" transfer-ownership="none">
43169             <doc xml:whitespace="preserve">the number of pages</doc>
43170             <type name="int" c:type="gint"/>
43171           </parameter>
43172         </parameters>
43173       </method>
43174       <method name="set_current_page"
43175               c:identifier="gtk_print_operation_set_current_page"
43176               version="2.10">
43177         <doc xml:whitespace="preserve">Sets the current page.
43178 If this is called before gtk_print_operation_run(), 
43179 the user will be able to select to print only the current page.
43180 Note that this only makes sense for pre-paginated documents.</doc>
43181         <return-value transfer-ownership="none">
43182           <type name="none" c:type="void"/>
43183         </return-value>
43184         <parameters>
43185           <parameter name="current_page" transfer-ownership="none">
43186             <doc xml:whitespace="preserve">the current page, 0-based</doc>
43187             <type name="int" c:type="gint"/>
43188           </parameter>
43189         </parameters>
43190       </method>
43191       <method name="set_use_full_page"
43192               c:identifier="gtk_print_operation_set_use_full_page"
43193               version="2.10">
43194         <doc xml:whitespace="preserve">If @full_page is %TRUE, the transformation for the cairo context 
43195 obtained from #GtkPrintContext puts the origin at the top left 
43196 corner of the page (which may not be the top left corner of the 
43197 sheet, depending on page orientation and the number of pages per 
43198 sheet). Otherwise, the origin is at the top left corner of the
43199 imageable area (i.e. inside the margins).</doc>
43200         <return-value transfer-ownership="none">
43201           <type name="none" c:type="void"/>
43202         </return-value>
43203         <parameters>
43204           <parameter name="full_page" transfer-ownership="none">
43205             <doc xml:whitespace="preserve">%TRUE to set up the #GtkPrintContext for the full page</doc>
43206             <type name="boolean" c:type="gboolean"/>
43207           </parameter>
43208         </parameters>
43209       </method>
43210       <method name="set_unit"
43211               c:identifier="gtk_print_operation_set_unit"
43212               version="2.10">
43213         <doc xml:whitespace="preserve">Sets up the transformation for the cairo context obtained from
43214 #GtkPrintContext in such a way that distances are measured in 
43215 units of @unit.</doc>
43216         <return-value transfer-ownership="none">
43217           <type name="none" c:type="void"/>
43218         </return-value>
43219         <parameters>
43220           <parameter name="unit" transfer-ownership="none">
43221             <doc xml:whitespace="preserve">the unit to use</doc>
43222             <type name="Unit" c:type="GtkUnit"/>
43223           </parameter>
43224         </parameters>
43225       </method>
43226       <method name="set_export_filename"
43227               c:identifier="gtk_print_operation_set_export_filename"
43228               version="2.10">
43229         <doc xml:whitespace="preserve">Sets up the #GtkPrintOperation to generate a file instead
43230 of showing the print dialog. The indended use of this function
43231 is for implementing "Export to PDF" actions. Currently, PDF
43232 is the only supported format.
43233 "Print to PDF" support is independent of this and is done
43234 by letting the user pick the "Print to PDF" item from the list
43235 of printers in the print dialog.</doc>
43236         <return-value transfer-ownership="none">
43237           <type name="none" c:type="void"/>
43238         </return-value>
43239         <parameters>
43240           <parameter name="filename" transfer-ownership="none">
43241             <doc xml:whitespace="preserve">the filename for the exported file</doc>
43242             <type name="utf8" c:type="gchar*"/>
43243           </parameter>
43244         </parameters>
43245       </method>
43246       <method name="set_track_print_status"
43247               c:identifier="gtk_print_operation_set_track_print_status"
43248               version="2.10">
43249         <doc xml:whitespace="preserve">If track_status is %TRUE, the print operation will try to continue report
43250 on the status of the print job in the printer queues and printer. This
43251 can allow your application to show things like "out of paper" issues,
43252 and when the print job actually reaches the printer.
43253 This function is often implemented using some form of polling, so it should
43254 not be enabled unless needed.</doc>
43255         <return-value transfer-ownership="none">
43256           <type name="none" c:type="void"/>
43257         </return-value>
43258         <parameters>
43259           <parameter name="track_status" transfer-ownership="none">
43260             <doc xml:whitespace="preserve">%TRUE to track status after printing</doc>
43261             <type name="boolean" c:type="gboolean"/>
43262           </parameter>
43263         </parameters>
43264       </method>
43265       <method name="set_show_progress"
43266               c:identifier="gtk_print_operation_set_show_progress"
43267               version="2.10">
43268         <doc xml:whitespace="preserve">If @show_progress is %TRUE, the print operation will show a 
43269 progress dialog during the print operation.</doc>
43270         <return-value transfer-ownership="none">
43271           <type name="none" c:type="void"/>
43272         </return-value>
43273         <parameters>
43274           <parameter name="show_progress" transfer-ownership="none">
43275             <doc xml:whitespace="preserve">%TRUE to show a progress dialog</doc>
43276             <type name="boolean" c:type="gboolean"/>
43277           </parameter>
43278         </parameters>
43279       </method>
43280       <method name="set_allow_async"
43281               c:identifier="gtk_print_operation_set_allow_async"
43282               version="2.10">
43283         <doc xml:whitespace="preserve">Sets whether the gtk_print_operation_run() may return
43284 before the print operation is completed. Note that
43285 some platforms may not allow asynchronous operation.</doc>
43286         <return-value transfer-ownership="none">
43287           <type name="none" c:type="void"/>
43288         </return-value>
43289         <parameters>
43290           <parameter name="allow_async" transfer-ownership="none">
43291             <doc xml:whitespace="preserve">%TRUE to allow asynchronous operation</doc>
43292             <type name="boolean" c:type="gboolean"/>
43293           </parameter>
43294         </parameters>
43295       </method>
43296       <method name="set_custom_tab_label"
43297               c:identifier="gtk_print_operation_set_custom_tab_label"
43298               version="2.10">
43299         <doc xml:whitespace="preserve">Sets the label for the tab holding custom widgets.</doc>
43300         <return-value transfer-ownership="none">
43301           <type name="none" c:type="void"/>
43302         </return-value>
43303         <parameters>
43304           <parameter name="label" transfer-ownership="none" allow-none="1">
43305             <doc xml:whitespace="preserve">the label to use, or %NULL to use the default label</doc>
43306             <type name="utf8" c:type="gchar*"/>
43307           </parameter>
43308         </parameters>
43309       </method>
43310       <method name="run"
43311               c:identifier="gtk_print_operation_run"
43312               version="2.10"
43313               throws="1">
43314         <doc xml:whitespace="preserve">Runs the print operation, by first letting the user modify
43315 print settings in the print dialog, and then print the document.
43316 Normally that this function does not return until the rendering of all 
43317 pages is complete. You can connect to the 
43318 #GtkPrintOperation::status-changed signal on @op to obtain some 
43319 information about the progress of the print operation. 
43320 Furthermore, it may use a recursive mainloop to show the print dialog.
43321 If you call gtk_print_operation_set_allow_async() or set the 
43322 #GtkPrintOperation:allow-async property the operation will run 
43323 asynchronously if this is supported on the platform. The 
43324 #GtkPrintOperation::done signal will be emitted with the result of the 
43325 operation when the it is done (i.e. when the dialog is canceled, or when 
43326 the print succeeds or fails).
43327 |[
43328 if (settings != NULL)
43329 gtk_print_operation_set_print_settings (print, settings);
43330 if (page_setup != NULL)
43331 gtk_print_operation_set_default_page_setup (print, page_setup);
43332 g_signal_connect (print, "begin-print", 
43333 G_CALLBACK (begin_print), &amp;data);
43334 g_signal_connect (print, "draw-page", 
43335 G_CALLBACK (draw_page), &amp;data);
43336 res = gtk_print_operation_run (print, 
43337 GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG, 
43338 parent, 
43339 &amp;error);
43340 if (res == GTK_PRINT_OPERATION_RESULT_ERROR)
43341 {
43342 error_dialog = gtk_message_dialog_new (GTK_WINDOW (parent),
43343 GTK_DIALOG_DESTROY_WITH_PARENT,
43344 GTK_MESSAGE_ERROR,
43345 GTK_BUTTONS_CLOSE,
43346 "Error printing file:\n%s",
43347 error-&gt;message);
43348 g_signal_connect (error_dialog, "response", 
43349 G_CALLBACK (gtk_widget_destroy), NULL);
43350 gtk_widget_show (error_dialog);
43351 g_error_free (error);
43352 }
43353 else if (res == GTK_PRINT_OPERATION_RESULT_APPLY)
43354 {
43355 if (settings != NULL)
43356 g_object_unref (settings);
43357 settings = g_object_ref (gtk_print_operation_get_print_settings (print));
43358 }
43359 ]|
43360 Note that gtk_print_operation_run() can only be called once on a
43361 given #GtkPrintOperation.
43362 %GTK_PRINT_OPERATION_RESULT_APPLY indicates that the printing was
43363 completed successfully. In this case, it is a good idea to obtain 
43364 the used print settings with gtk_print_operation_get_print_settings() 
43365 and store them for reuse with the next print operation. A value of
43366 %GTK_PRINT_OPERATION_RESULT_IN_PROGRESS means the operation is running
43367 asynchronously, and will emit the #GtkPrintOperation::done signal when 
43368 done.</doc>
43369         <return-value transfer-ownership="full">
43370           <doc xml:whitespace="preserve">the result of the print operation. A return value of</doc>
43371           <type name="PrintOperationResult" c:type="GtkPrintOperationResult"/>
43372         </return-value>
43373         <parameters>
43374           <parameter name="action" transfer-ownership="none">
43375             <doc xml:whitespace="preserve">the action to start</doc>
43376             <type name="PrintOperationAction"
43377                   c:type="GtkPrintOperationAction"/>
43378           </parameter>
43379           <parameter name="parent" transfer-ownership="none" allow-none="1">
43380             <doc xml:whitespace="preserve">Transient parent of the dialog</doc>
43381             <type name="Window" c:type="GtkWindow*"/>
43382           </parameter>
43383         </parameters>
43384       </method>
43385       <method name="get_status"
43386               c:identifier="gtk_print_operation_get_status"
43387               version="2.10">
43388         <doc xml:whitespace="preserve">Returns the status of the print operation. 
43389 Also see gtk_print_operation_get_status_string().</doc>
43390         <return-value transfer-ownership="full">
43391           <doc xml:whitespace="preserve">the status of the print operation</doc>
43392           <type name="PrintStatus" c:type="GtkPrintStatus"/>
43393         </return-value>
43394       </method>
43395       <method name="get_status_string"
43396               c:identifier="gtk_print_operation_get_status_string"
43397               version="2.10">
43398         <doc xml:whitespace="preserve">Returns a string representation of the status of the 
43399 print operation. The string is translated and suitable
43400 for displaying the print status e.g. in a #GtkStatusbar.
43401 Use gtk_print_operation_get_status() to obtain a status
43402 value that is suitable for programmatic use. 
43403 of the print operation</doc>
43404         <return-value transfer-ownership="none">
43405           <doc xml:whitespace="preserve">a string representation of the status</doc>
43406           <type name="utf8" c:type="gchar*"/>
43407         </return-value>
43408       </method>
43409       <method name="is_finished"
43410               c:identifier="gtk_print_operation_is_finished"
43411               version="2.10">
43412         <doc xml:whitespace="preserve">A convenience function to find out if the print operation
43413 is finished, either successfully (%GTK_PRINT_STATUS_FINISHED)
43414 or unsuccessfully (%GTK_PRINT_STATUS_FINISHED_ABORTED).
43415 can be in a non-finished state even after done has been called, as
43416 the operation status then tracks the print job status on the printer.</doc>
43417         <return-value transfer-ownership="none">
43418           <doc xml:whitespace="preserve">%TRUE, if the print operation is finished.</doc>
43419           <type name="boolean" c:type="gboolean"/>
43420         </return-value>
43421       </method>
43422       <method name="cancel"
43423               c:identifier="gtk_print_operation_cancel"
43424               version="2.10">
43425         <doc xml:whitespace="preserve">Cancels a running print operation. This function may
43426 be called from a #GtkPrintOperation::begin-print, 
43427 #GtkPrintOperation::paginate or #GtkPrintOperation::draw-page
43428 signal handler to stop the currently running print 
43429 operation.</doc>
43430         <return-value transfer-ownership="none">
43431           <type name="none" c:type="void"/>
43432         </return-value>
43433       </method>
43434       <method name="draw_page_finish"
43435               c:identifier="gtk_print_operation_draw_page_finish"
43436               version="2.16">
43437         <doc xml:whitespace="preserve">Signalize that drawing of particular page is complete.
43438 It is called after completion of page drawing (e.g. drawing in another
43439 thread).
43440 If gtk_print_operation_set_defer_drawing() was called before, then this function
43441 has to be called by application. In another case it is called by the library
43442 itself.</doc>
43443         <return-value transfer-ownership="none">
43444           <type name="none" c:type="void"/>
43445         </return-value>
43446       </method>
43447       <method name="set_defer_drawing"
43448               c:identifier="gtk_print_operation_set_defer_drawing"
43449               version="2.16">
43450         <doc xml:whitespace="preserve">Sets up the #GtkPrintOperation to wait for calling of
43451 gtk_print_operation_draw_page_finish() from application. It can
43452 be used for drawing page in another thread.
43453 This function must be called in the callback of "draw-page" signal.</doc>
43454         <return-value transfer-ownership="none">
43455           <type name="none" c:type="void"/>
43456         </return-value>
43457       </method>
43458       <method name="set_support_selection"
43459               c:identifier="gtk_print_operation_set_support_selection"
43460               version="2.18">
43461         <doc xml:whitespace="preserve">Sets whether selection is supported by #GtkPrintOperation.</doc>
43462         <return-value transfer-ownership="none">
43463           <type name="none" c:type="void"/>
43464         </return-value>
43465         <parameters>
43466           <parameter name="support_selection" transfer-ownership="none">
43467             <doc xml:whitespace="preserve">%TRUE to support selection</doc>
43468             <type name="boolean" c:type="gboolean"/>
43469           </parameter>
43470         </parameters>
43471       </method>
43472       <method name="get_support_selection"
43473               c:identifier="gtk_print_operation_get_support_selection"
43474               version="2.18">
43475         <doc xml:whitespace="preserve">Gets the value of #GtkPrintOperation::support-selection property.</doc>
43476         <return-value transfer-ownership="none">
43477           <doc xml:whitespace="preserve">whether the application supports print of selection</doc>
43478           <type name="boolean" c:type="gboolean"/>
43479         </return-value>
43480       </method>
43481       <method name="set_has_selection"
43482               c:identifier="gtk_print_operation_set_has_selection"
43483               version="2.18">
43484         <doc xml:whitespace="preserve">Sets whether there is a selection to print.
43485 Application has to set number of pages to which the selection
43486 will draw by gtk_print_operation_set_n_pages() in a callback of
43487 #GtkPrintOperation::begin-print.</doc>
43488         <return-value transfer-ownership="none">
43489           <type name="none" c:type="void"/>
43490         </return-value>
43491         <parameters>
43492           <parameter name="has_selection" transfer-ownership="none">
43493             <doc xml:whitespace="preserve">%TRUE indicates that a selection exists</doc>
43494             <type name="boolean" c:type="gboolean"/>
43495           </parameter>
43496         </parameters>
43497       </method>
43498       <method name="get_has_selection"
43499               c:identifier="gtk_print_operation_get_has_selection"
43500               version="2.18">
43501         <doc xml:whitespace="preserve">Gets the value of #GtkPrintOperation::has-selection property.</doc>
43502         <return-value transfer-ownership="none">
43503           <doc xml:whitespace="preserve">whether there is a selection</doc>
43504           <type name="boolean" c:type="gboolean"/>
43505         </return-value>
43506       </method>
43507       <method name="set_embed_page_setup"
43508               c:identifier="gtk_print_operation_set_embed_page_setup"
43509               version="2.18">
43510         <doc xml:whitespace="preserve">Embed page size combo box and orientation combo box into page setup page.
43511 Selected page setup is stored as default page setup in #GtkPrintOperation.</doc>
43512         <return-value transfer-ownership="none">
43513           <type name="none" c:type="void"/>
43514         </return-value>
43515         <parameters>
43516           <parameter name="embed" transfer-ownership="none">
43517             <doc xml:whitespace="preserve">%TRUE to embed page setup selection in the #GtkPrintDialog</doc>
43518             <type name="boolean" c:type="gboolean"/>
43519           </parameter>
43520         </parameters>
43521       </method>
43522       <method name="get_embed_page_setup"
43523               c:identifier="gtk_print_operation_get_embed_page_setup"
43524               version="2.18">
43525         <doc xml:whitespace="preserve">Gets the value of #GtkPrintOperation::embed-page-setup property.</doc>
43526         <return-value transfer-ownership="none">
43527           <doc xml:whitespace="preserve">whether page setup selection combos are embedded</doc>
43528           <type name="boolean" c:type="gboolean"/>
43529         </return-value>
43530       </method>
43531       <method name="get_n_pages_to_print"
43532               c:identifier="gtk_print_operation_get_n_pages_to_print"
43533               version="2.18">
43534         <doc xml:whitespace="preserve">Returns the number of pages that will be printed.
43535 Note that this value is set during print preparation phase
43536 (%GTK_PRINT_STATUS_PREPARING), so this function should never be
43537 called before the data generation phase (%GTK_PRINT_STATUS_GENERATING_DATA).
43538 You can connect to the #GtkPrintOperation::status-changed signal
43539 and call gtk_print_operation_get_n_pages_to_print() when
43540 print status is %GTK_PRINT_STATUS_GENERATING_DATA.
43541 This is typically used to track the progress of print operation.</doc>
43542         <return-value transfer-ownership="none">
43543           <doc xml:whitespace="preserve">the number of pages that will be printed</doc>
43544           <type name="int" c:type="gint"/>
43545         </return-value>
43546       </method>
43547       <property name="allow-async"
43548                 version="2.10"
43549                 writable="1"
43550                 transfer-ownership="none">
43551         <doc xml:whitespace="preserve">Determines whether the print operation may run asynchronously or not.
43552 Some systems don't support asynchronous printing, but those that do
43553 will return %GTK_PRINT_OPERATION_RESULT_IN_PROGRESS as the status, and
43554 emit the #GtkPrintOperation::done signal when the operation is actually 
43555 done.
43556 The Windows port does not support asynchronous operation at all (this 
43557 is unlikely to change). On other platforms, all actions except for 
43558 %GTK_PRINT_OPERATION_ACTION_EXPORT support asynchronous operation.</doc>
43559         <type name="boolean" c:type="gboolean"/>
43560       </property>
43561       <property name="current-page"
43562                 version="2.10"
43563                 writable="1"
43564                 transfer-ownership="none">
43565         <doc xml:whitespace="preserve">The current page in the document.
43566 If this is set before gtk_print_operation_run(), 
43567 the user will be able to select to print only the current page.
43568 Note that this only makes sense for pre-paginated documents.</doc>
43569         <type name="int" c:type="gint"/>
43570       </property>
43571       <property name="custom-tab-label"
43572                 version="2.10"
43573                 writable="1"
43574                 transfer-ownership="none">
43575         <doc xml:whitespace="preserve">Used as the label of the tab containing custom widgets.
43576 Note that this property may be ignored on some platforms.
43577 If this is %NULL, GTK+ uses a default label.</doc>
43578         <type name="utf8" c:type="gchararray"/>
43579       </property>
43580       <property name="default-page-setup"
43581                 version="2.10"
43582                 writable="1"
43583                 transfer-ownership="none">
43584         <doc xml:whitespace="preserve">The #GtkPageSetup used by default.
43585 This page setup will be used by gtk_print_operation_run(),
43586 but it can be overridden on a per-page basis by connecting
43587 to the #GtkPrintOperation::request-page-setup signal.</doc>
43588         <type name="PageSetup" c:type="GtkPageSetup"/>
43589       </property>
43590       <property name="embed-page-setup"
43591                 version="2.18"
43592                 writable="1"
43593                 transfer-ownership="none">
43594         <doc xml:whitespace="preserve">If %TRUE, page size combo box and orientation combo box are embedded into page setup page.</doc>
43595         <type name="boolean" c:type="gboolean"/>
43596       </property>
43597       <property name="export-filename"
43598                 version="2.10"
43599                 writable="1"
43600                 transfer-ownership="none">
43601         <doc xml:whitespace="preserve">The name of a file to generate instead of showing the print dialog. 
43602 Currently, PDF is the only supported format.
43603 The intended use of this property is for implementing 
43604 "Export to PDF" actions.
43605 "Print to PDF" support is independent of this and is done
43606 by letting the user pick the "Print to PDF" item from the 
43607 list of printers in the print dialog.</doc>
43608         <type name="utf8" c:type="gchararray"/>
43609       </property>
43610       <property name="has-selection"
43611                 version="2.18"
43612                 writable="1"
43613                 transfer-ownership="none">
43614         <doc xml:whitespace="preserve">Determines whether there is a selection in your application.
43615 This can allow your application to print the selection.
43616 This is typically used to make a "Selection" button sensitive.</doc>
43617         <type name="boolean" c:type="gboolean"/>
43618       </property>
43619       <property name="job-name"
43620                 version="2.10"
43621                 writable="1"
43622                 transfer-ownership="none">
43623         <doc xml:whitespace="preserve">A string used to identify the job (e.g. in monitoring 
43624 applications like eggcups). 
43625 If you don't set a job name, GTK+ picks a default one 
43626 by numbering successive print jobs.</doc>
43627         <type name="utf8" c:type="gchararray"/>
43628       </property>
43629       <property name="n-pages"
43630                 version="2.10"
43631                 writable="1"
43632                 transfer-ownership="none">
43633         <doc xml:whitespace="preserve">The number of pages in the document. 
43634 This &lt;emphasis&gt;must&lt;/emphasis&gt; be set to a positive number
43635 before the rendering starts. It may be set in a 
43636 #GtkPrintOperation::begin-print signal hander.
43637 Note that the page numbers passed to the 
43638 #GtkPrintOperation::request-page-setup and 
43639 #GtkPrintOperation::draw-page signals are 0-based, i.e. if 
43640 the user chooses to print all pages, the last ::draw-page signal 
43641 will be for page @n_pages - 1.</doc>
43642         <type name="int" c:type="gint"/>
43643       </property>
43644       <property name="n-pages-to-print"
43645                 version="2.18"
43646                 transfer-ownership="none">
43647         <doc xml:whitespace="preserve">The number of pages that will be printed.
43648 Note that this value is set during print preparation phase
43649 (%GTK_PRINT_STATUS_PREPARING), so this value should never be
43650 get before the data generation phase (%GTK_PRINT_STATUS_GENERATING_DATA).
43651 You can connect to the #GtkPrintOperation::status-changed signal
43652 and call gtk_print_operation_get_n_pages_to_print() when
43653 print status is %GTK_PRINT_STATUS_GENERATING_DATA.
43654 This is typically used to track the progress of print operation.</doc>
43655         <type name="int" c:type="gint"/>
43656       </property>
43657       <property name="print-settings"
43658                 version="2.10"
43659                 writable="1"
43660                 transfer-ownership="none">
43661         <doc xml:whitespace="preserve">The #GtkPrintSettings used for initializing the dialog.
43662 Setting this property is typically used to re-establish 
43663 print settings from a previous print operation, see 
43664 gtk_print_operation_run().</doc>
43665         <type name="PrintSettings" c:type="GtkPrintSettings"/>
43666       </property>
43667       <property name="show-progress"
43668                 version="2.10"
43669                 writable="1"
43670                 transfer-ownership="none">
43671         <doc xml:whitespace="preserve">Determines whether to show a progress dialog during the 
43672 print operation.</doc>
43673         <type name="boolean" c:type="gboolean"/>
43674       </property>
43675       <property name="status" version="2.10" transfer-ownership="none">
43676         <doc xml:whitespace="preserve">The status of the print operation.</doc>
43677         <type name="PrintStatus" c:type="GtkPrintStatus"/>
43678       </property>
43679       <property name="status-string" version="2.10" transfer-ownership="none">
43680         <doc xml:whitespace="preserve">A string representation of the status of the print operation. 
43681 The string is translated and suitable for displaying the print 
43682 status e.g. in a #GtkStatusbar.
43683 See the #GtkPrintOperation:status property for a status value that 
43684 is suitable for programmatic use.</doc>
43685         <type name="utf8" c:type="gchararray"/>
43686       </property>
43687       <property name="support-selection"
43688                 version="2.18"
43689                 writable="1"
43690                 transfer-ownership="none">
43691         <doc xml:whitespace="preserve">If %TRUE, the print operation will support print of selection.
43692 This allows the print dialog to show a "Selection" button.</doc>
43693         <type name="boolean" c:type="gboolean"/>
43694       </property>
43695       <property name="track-print-status"
43696                 version="2.10"
43697                 writable="1"
43698                 transfer-ownership="none">
43699         <doc xml:whitespace="preserve">If %TRUE, the print operation will try to continue report on 
43700 the status of the print job in the printer queues and printer. 
43701 This can allow your application to show things like "out of paper" 
43702 issues, and when the print job actually reaches the printer. 
43703 However, this is often implemented using polling, and should 
43704 not be enabled unless needed.</doc>
43705         <type name="boolean" c:type="gboolean"/>
43706       </property>
43707       <property name="unit"
43708                 version="2.10"
43709                 writable="1"
43710                 transfer-ownership="none">
43711         <doc xml:whitespace="preserve">The transformation for the cairo context obtained from
43712 #GtkPrintContext is set up in such a way that distances 
43713 are measured in units of @unit.</doc>
43714         <type name="Unit" c:type="GtkUnit"/>
43715       </property>
43716       <property name="use-full-page"
43717                 version="2.10"
43718                 writable="1"
43719                 transfer-ownership="none">
43720         <doc xml:whitespace="preserve">If %TRUE, the transformation for the cairo context obtained 
43721 from #GtkPrintContext puts the origin at the top left corner 
43722 of the page (which may not be the top left corner of the sheet, 
43723 depending on page orientation and the number of pages per sheet). 
43724 Otherwise, the origin is at the top left corner of the imageable 
43725 area (i.e. inside the margins).</doc>
43726         <type name="boolean" c:type="gboolean"/>
43727       </property>
43728       <field name="parent_instance">
43729         <type name="GObject.Object" c:type="GObject"/>
43730       </field>
43731       <field name="priv">
43732         <type name="PrintOperationPrivate" c:type="GtkPrintOperationPrivate*"/>
43733       </field>
43734       <glib:signal name="begin-print" version="2.10">
43735         <doc xml:whitespace="preserve">Emitted after the user has finished changing print settings
43736 in the dialog, before the actual rendering starts. 
43737 A typical use for ::begin-print is to use the parameters from the
43738 #GtkPrintContext and paginate the document accordingly, and then
43739 set the number of pages with gtk_print_operation_set_n_pages().</doc>
43740         <return-value transfer-ownership="full">
43741           <type name="none" c:type="void"/>
43742         </return-value>
43743         <parameters>
43744           <parameter name="context" transfer-ownership="none">
43745             <doc xml:whitespace="preserve">the #GtkPrintContext for the current operation</doc>
43746             <type name="PrintContext" c:type="GtkPrintContext"/>
43747           </parameter>
43748         </parameters>
43749       </glib:signal>
43750       <glib:signal name="create-custom-widget" version="2.10">
43751         <doc xml:whitespace="preserve">Emitted when displaying the print dialog. If you return a
43752 widget in a handler for this signal it will be added to a custom
43753 tab in the print dialog. You typically return a container widget
43754 with multiple widgets in it.
43755 The print dialog owns the returned widget, and its lifetime is not 
43756 controlled by the application. However, the widget is guaranteed 
43757 to stay around until the #GtkPrintOperation::custom-widget-apply 
43758 signal is emitted on the operation. Then you can read out any 
43759 information you need from the widgets.
43760 or %NULL</doc>
43761         <return-value transfer-ownership="full">
43762           <doc xml:whitespace="preserve">A custom widget that gets embedded in the print dialog,</doc>
43763           <type name="GObject.Object" c:type="GObject"/>
43764         </return-value>
43765       </glib:signal>
43766       <glib:signal name="custom-widget-apply" version="2.10">
43767         <doc xml:whitespace="preserve">Emitted right before #GtkPrintOperation::begin-print if you added
43768 a custom widget in the #GtkPrintOperation::create-custom-widget handler. 
43769 When you get this signal you should read the information from the 
43770 custom widgets, as the widgets are not guaraneed to be around at a 
43771 later time.</doc>
43772         <return-value transfer-ownership="full">
43773           <type name="none" c:type="void"/>
43774         </return-value>
43775         <parameters>
43776           <parameter name="widget" transfer-ownership="none">
43777             <doc xml:whitespace="preserve">the custom widget added in create-custom-widget</doc>
43778             <type name="Widget" c:type="GtkWidget"/>
43779           </parameter>
43780         </parameters>
43781       </glib:signal>
43782       <glib:signal name="done" version="2.10">
43783         <doc xml:whitespace="preserve">Emitted when the print operation run has finished doing
43784 everything required for printing. 
43785 If @result is %GTK_PRINT_OPERATION_RESULT_ERROR then you can call
43786 gtk_print_operation_get_error() for more information.
43787 If you enabled print status tracking then 
43788 gtk_print_operation_is_finished() may still return %FALSE 
43789 after #GtkPrintOperation::done was emitted.</doc>
43790         <return-value transfer-ownership="full">
43791           <type name="none" c:type="void"/>
43792         </return-value>
43793         <parameters>
43794           <parameter name="result" transfer-ownership="none">
43795             <doc xml:whitespace="preserve">the result of the print operation</doc>
43796             <type name="PrintOperationResult"
43797                   c:type="GtkPrintOperationResult"/>
43798           </parameter>
43799         </parameters>
43800       </glib:signal>
43801       <glib:signal name="draw-page" version="2.10">
43802         <doc xml:whitespace="preserve">Emitted for every page that is printed. The signal handler
43803 must render the @page_nr's page onto the cairo context obtained
43804 from @context using gtk_print_context_get_cairo_context().
43805 |[
43806 static void
43807 draw_page (GtkPrintOperation *operation,
43808 GtkPrintContext   *context,
43809 gint               page_nr,
43810 gpointer           user_data)
43811 {
43812 cairo_t *cr;
43813 PangoLayout *layout;
43814 gdouble width, text_height;
43815 gint layout_height;
43816 PangoFontDescription *desc;
43817 cr = gtk_print_context_get_cairo_context (context);
43818 width = gtk_print_context_get_width (context);
43819 cairo_rectangle (cr, 0, 0, width, HEADER_HEIGHT);
43820 cairo_set_source_rgb (cr, 0.8, 0.8, 0.8);
43821 cairo_fill (cr);
43822 layout = gtk_print_context_create_pango_layout (context);
43823 desc = pango_font_description_from_string ("sans 14");
43824 pango_layout_set_font_description (layout, desc);
43825 pango_font_description_free (desc);
43826 pango_layout_set_text (layout, "some text", -1);
43827 pango_layout_set_width (layout, width * PANGO_SCALE);
43828 pango_layout_set_alignment (layout, PANGO_ALIGN_CENTER);
43829 pango_layout_get_size (layout, NULL, &amp;layout_height);
43830 text_height = (gdouble)layout_height / PANGO_SCALE;
43831 cairo_move_to (cr, width / 2,  (HEADER_HEIGHT - text_height) / 2);
43832 pango_cairo_show_layout (cr, layout);
43833 g_object_unref (layout);
43834 }
43835 ]|
43836 Use gtk_print_operation_set_use_full_page() and 
43837 gtk_print_operation_set_unit() before starting the print operation
43838 to set up the transformation of the cairo context according to your
43839 needs.</doc>
43840         <return-value transfer-ownership="full">
43841           <type name="none" c:type="void"/>
43842         </return-value>
43843         <parameters>
43844           <parameter name="context" transfer-ownership="none">
43845             <doc xml:whitespace="preserve">the #GtkPrintContext for the current operation</doc>
43846             <type name="PrintContext" c:type="GtkPrintContext"/>
43847           </parameter>
43848           <parameter name="page_nr" transfer-ownership="none">
43849             <doc xml:whitespace="preserve">the number of the currently printed page (0-based)</doc>
43850             <type name="int" c:type="gint"/>
43851           </parameter>
43852         </parameters>
43853       </glib:signal>
43854       <glib:signal name="end-print" version="2.10">
43855         <doc xml:whitespace="preserve">Emitted after all pages have been rendered. 
43856 A handler for this signal can clean up any resources that have
43857 been allocated in the #GtkPrintOperation::begin-print handler.</doc>
43858         <return-value transfer-ownership="full">
43859           <type name="none" c:type="void"/>
43860         </return-value>
43861         <parameters>
43862           <parameter name="context" transfer-ownership="none">
43863             <doc xml:whitespace="preserve">the #GtkPrintContext for the current operation</doc>
43864             <type name="PrintContext" c:type="GtkPrintContext"/>
43865           </parameter>
43866         </parameters>
43867       </glib:signal>
43868       <glib:signal name="paginate" version="2.10">
43869         <doc xml:whitespace="preserve">Emitted after the #GtkPrintOperation::begin-print signal, but before 
43870 the actual rendering starts. It keeps getting emitted until a connected 
43871 signal handler returns %TRUE.
43872 The ::paginate signal is intended to be used for paginating a document
43873 in small chunks, to avoid blocking the user interface for a long
43874 time. The signal handler should update the number of pages using
43875 gtk_print_operation_set_n_pages(), and return %TRUE if the document
43876 has been completely paginated.
43877 If you don't need to do pagination in chunks, you can simply do
43878 it all in the ::begin-print handler, and set the number of pages
43879 from there.</doc>
43880         <return-value transfer-ownership="full">
43881           <doc xml:whitespace="preserve">%TRUE if pagination is complete</doc>
43882           <type name="boolean" c:type="gboolean"/>
43883         </return-value>
43884         <parameters>
43885           <parameter name="context" transfer-ownership="none">
43886             <doc xml:whitespace="preserve">the #GtkPrintContext for the current operation</doc>
43887             <type name="PrintContext" c:type="GtkPrintContext"/>
43888           </parameter>
43889         </parameters>
43890       </glib:signal>
43891       <glib:signal name="preview" version="2.10">
43892         <doc xml:whitespace="preserve">Gets emitted when a preview is requested from the native dialog.
43893 The default handler for this signal uses an external viewer 
43894 application to preview.
43895 To implement a custom print preview, an application must return
43896 %TRUE from its handler for this signal. In order to use the
43897 provided @context for the preview implementation, it must be
43898 given a suitable cairo context with gtk_print_context_set_cairo_context().
43899 The custom preview implementation can use 
43900 gtk_print_operation_preview_is_selected() and 
43901 gtk_print_operation_preview_render_page() to find pages which
43902 are selected for print and render them. The preview must be
43903 finished by calling gtk_print_operation_preview_end_preview()
43904 (typically in response to the user clicking a close button).</doc>
43905         <return-value transfer-ownership="full">
43906           <doc xml:whitespace="preserve">%TRUE if the listener wants to take over control of the preview</doc>
43907           <type name="boolean" c:type="gboolean"/>
43908         </return-value>
43909         <parameters>
43910           <parameter name="preview" transfer-ownership="none">
43911             <doc xml:whitespace="preserve">the #GtkPrintPreviewOperation for the current operation</doc>
43912             <type name="PrintOperationPreview"
43913                   c:type="GtkPrintOperationPreview"/>
43914           </parameter>
43915           <parameter name="context" transfer-ownership="none">
43916             <doc xml:whitespace="preserve">the #GtkPrintContext that will be used</doc>
43917             <type name="PrintContext" c:type="GtkPrintContext"/>
43918           </parameter>
43919           <parameter name="parent" transfer-ownership="none" allow-none="1">
43920             <doc xml:whitespace="preserve">the #GtkWindow to use as window parent, or %NULL</doc>
43921             <type name="Window" c:type="GtkWindow"/>
43922           </parameter>
43923         </parameters>
43924       </glib:signal>
43925       <glib:signal name="request-page-setup" version="2.10">
43926         <doc xml:whitespace="preserve">Emitted once for every page that is printed, to give
43927 the application a chance to modify the page setup. Any changes 
43928 done to @setup will be in force only for printing this page.</doc>
43929         <return-value transfer-ownership="full">
43930           <type name="none" c:type="void"/>
43931         </return-value>
43932         <parameters>
43933           <parameter name="context" transfer-ownership="none">
43934             <doc xml:whitespace="preserve">the #GtkPrintContext for the current operation</doc>
43935             <type name="PrintContext" c:type="GtkPrintContext"/>
43936           </parameter>
43937           <parameter name="page_nr" transfer-ownership="none">
43938             <doc xml:whitespace="preserve">the number of the currently printed page (0-based)</doc>
43939             <type name="int" c:type="gint"/>
43940           </parameter>
43941           <parameter name="setup" transfer-ownership="none">
43942             <doc xml:whitespace="preserve">the #GtkPageSetup</doc>
43943             <type name="PageSetup" c:type="GtkPageSetup"/>
43944           </parameter>
43945         </parameters>
43946       </glib:signal>
43947       <glib:signal name="status-changed" version="2.10">
43948         <doc xml:whitespace="preserve">Emitted at between the various phases of the print operation.
43949 See #GtkPrintStatus for the phases that are being discriminated.
43950 Use gtk_print_operation_get_status() to find out the current
43951 status.</doc>
43952         <return-value transfer-ownership="full">
43953           <type name="none" c:type="void"/>
43954         </return-value>
43955       </glib:signal>
43956       <glib:signal name="update-custom-widget" version="2.18">
43957         <doc xml:whitespace="preserve">Emitted after change of selected printer. The actual page setup and
43958 print settings are passed to the custom widget, which can actualize
43959 itself according to this change.</doc>
43960         <return-value transfer-ownership="full">
43961           <type name="none" c:type="void"/>
43962         </return-value>
43963         <parameters>
43964           <parameter name="widget" transfer-ownership="none">
43965             <doc xml:whitespace="preserve">the custom widget added in create-custom-widget</doc>
43966             <type name="Widget" c:type="GtkWidget"/>
43967           </parameter>
43968           <parameter name="setup" transfer-ownership="none">
43969             <doc xml:whitespace="preserve">actual page setup</doc>
43970             <type name="PageSetup" c:type="GtkPageSetup"/>
43971           </parameter>
43972           <parameter name="settings" transfer-ownership="none">
43973             <doc xml:whitespace="preserve">actual print settings</doc>
43974             <type name="PrintSettings" c:type="GtkPrintSettings"/>
43975           </parameter>
43976         </parameters>
43977       </glib:signal>
43978     </class>
43979     <enumeration name="PrintOperationAction"
43980                  glib:type-name="GtkPrintOperationAction"
43981                  glib:get-type="gtk_print_operation_action_get_type"
43982                  c:type="GtkPrintOperationAction">
43983       <member name="print_dialog"
43984               value="0"
43985               c:identifier="GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG"
43986               glib:nick="print-dialog"/>
43987       <member name="print"
43988               value="1"
43989               c:identifier="GTK_PRINT_OPERATION_ACTION_PRINT"
43990               glib:nick="print"/>
43991       <member name="preview"
43992               value="2"
43993               c:identifier="GTK_PRINT_OPERATION_ACTION_PREVIEW"
43994               glib:nick="preview"/>
43995       <member name="export"
43996               value="3"
43997               c:identifier="GTK_PRINT_OPERATION_ACTION_EXPORT"
43998               glib:nick="export"/>
43999     </enumeration>
44000     <record name="PrintOperationClass"
44001             c:type="GtkPrintOperationClass"
44002             glib:is-gtype-struct-for="PrintOperation">
44003       <field name="parent_class">
44004         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
44005       </field>
44006       <field name="done">
44007         <callback name="done" c:type="done">
44008           <return-value transfer-ownership="none">
44009             <type name="none" c:type="void"/>
44010           </return-value>
44011           <parameters>
44012             <parameter name="operation" transfer-ownership="none">
44013               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
44014             </parameter>
44015             <parameter name="result" transfer-ownership="none">
44016               <type name="PrintOperationResult"
44017                     c:type="GtkPrintOperationResult"/>
44018             </parameter>
44019           </parameters>
44020         </callback>
44021       </field>
44022       <field name="begin_print">
44023         <callback name="begin_print" c:type="begin_print">
44024           <return-value transfer-ownership="none">
44025             <type name="none" c:type="void"/>
44026           </return-value>
44027           <parameters>
44028             <parameter name="operation" transfer-ownership="none">
44029               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
44030             </parameter>
44031             <parameter name="context" transfer-ownership="none">
44032               <type name="PrintContext" c:type="GtkPrintContext*"/>
44033             </parameter>
44034           </parameters>
44035         </callback>
44036       </field>
44037       <field name="paginate">
44038         <callback name="paginate" c:type="paginate">
44039           <return-value transfer-ownership="none">
44040             <type name="boolean" c:type="gboolean"/>
44041           </return-value>
44042           <parameters>
44043             <parameter name="operation" transfer-ownership="none">
44044               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
44045             </parameter>
44046             <parameter name="context" transfer-ownership="none">
44047               <type name="PrintContext" c:type="GtkPrintContext*"/>
44048             </parameter>
44049           </parameters>
44050         </callback>
44051       </field>
44052       <field name="request_page_setup">
44053         <callback name="request_page_setup" c:type="request_page_setup">
44054           <return-value transfer-ownership="none">
44055             <type name="none" c:type="void"/>
44056           </return-value>
44057           <parameters>
44058             <parameter name="operation" transfer-ownership="none">
44059               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
44060             </parameter>
44061             <parameter name="context" transfer-ownership="none">
44062               <type name="PrintContext" c:type="GtkPrintContext*"/>
44063             </parameter>
44064             <parameter name="page_nr" transfer-ownership="none">
44065               <type name="int" c:type="gint"/>
44066             </parameter>
44067             <parameter name="setup" transfer-ownership="none">
44068               <type name="PageSetup" c:type="GtkPageSetup*"/>
44069             </parameter>
44070           </parameters>
44071         </callback>
44072       </field>
44073       <field name="draw_page">
44074         <callback name="draw_page" c:type="draw_page">
44075           <return-value transfer-ownership="none">
44076             <type name="none" c:type="void"/>
44077           </return-value>
44078           <parameters>
44079             <parameter name="operation" transfer-ownership="none">
44080               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
44081             </parameter>
44082             <parameter name="context" transfer-ownership="none">
44083               <type name="PrintContext" c:type="GtkPrintContext*"/>
44084             </parameter>
44085             <parameter name="page_nr" transfer-ownership="none">
44086               <type name="int" c:type="gint"/>
44087             </parameter>
44088           </parameters>
44089         </callback>
44090       </field>
44091       <field name="end_print">
44092         <callback name="end_print" c:type="end_print">
44093           <return-value transfer-ownership="none">
44094             <type name="none" c:type="void"/>
44095           </return-value>
44096           <parameters>
44097             <parameter name="operation" transfer-ownership="none">
44098               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
44099             </parameter>
44100             <parameter name="context" transfer-ownership="none">
44101               <type name="PrintContext" c:type="GtkPrintContext*"/>
44102             </parameter>
44103           </parameters>
44104         </callback>
44105       </field>
44106       <field name="status_changed">
44107         <callback name="status_changed" c:type="status_changed">
44108           <return-value transfer-ownership="none">
44109             <type name="none" c:type="void"/>
44110           </return-value>
44111           <parameters>
44112             <parameter name="operation" transfer-ownership="none">
44113               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
44114             </parameter>
44115           </parameters>
44116         </callback>
44117       </field>
44118       <field name="create_custom_widget">
44119         <callback name="create_custom_widget" c:type="create_custom_widget">
44120           <return-value transfer-ownership="full">
44121             <type name="Widget" c:type="GtkWidget*"/>
44122           </return-value>
44123           <parameters>
44124             <parameter name="operation" transfer-ownership="none">
44125               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
44126             </parameter>
44127           </parameters>
44128         </callback>
44129       </field>
44130       <field name="custom_widget_apply">
44131         <callback name="custom_widget_apply" c:type="custom_widget_apply">
44132           <return-value transfer-ownership="none">
44133             <type name="none" c:type="void"/>
44134           </return-value>
44135           <parameters>
44136             <parameter name="operation" transfer-ownership="none">
44137               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
44138             </parameter>
44139             <parameter name="widget" transfer-ownership="none">
44140               <type name="Widget" c:type="GtkWidget*"/>
44141             </parameter>
44142           </parameters>
44143         </callback>
44144       </field>
44145       <field name="preview">
44146         <callback name="preview" c:type="preview">
44147           <return-value transfer-ownership="none">
44148             <type name="boolean" c:type="gboolean"/>
44149           </return-value>
44150           <parameters>
44151             <parameter name="operation" transfer-ownership="none">
44152               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
44153             </parameter>
44154             <parameter name="preview" transfer-ownership="none">
44155               <type name="PrintOperationPreview"
44156                     c:type="GtkPrintOperationPreview*"/>
44157             </parameter>
44158             <parameter name="context" transfer-ownership="none">
44159               <type name="PrintContext" c:type="GtkPrintContext*"/>
44160             </parameter>
44161             <parameter name="parent" transfer-ownership="none">
44162               <type name="Window" c:type="GtkWindow*"/>
44163             </parameter>
44164           </parameters>
44165         </callback>
44166       </field>
44167       <field name="update_custom_widget">
44168         <callback name="update_custom_widget" c:type="update_custom_widget">
44169           <return-value transfer-ownership="none">
44170             <type name="none" c:type="void"/>
44171           </return-value>
44172           <parameters>
44173             <parameter name="operation" transfer-ownership="none">
44174               <type name="PrintOperation" c:type="GtkPrintOperation*"/>
44175             </parameter>
44176             <parameter name="widget" transfer-ownership="none">
44177               <type name="Widget" c:type="GtkWidget*"/>
44178             </parameter>
44179             <parameter name="setup" transfer-ownership="none">
44180               <type name="PageSetup" c:type="GtkPageSetup*"/>
44181             </parameter>
44182             <parameter name="settings" transfer-ownership="none">
44183               <type name="PrintSettings" c:type="GtkPrintSettings*"/>
44184             </parameter>
44185           </parameters>
44186         </callback>
44187       </field>
44188       <field name="gtk_reserved1">
44189         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
44190           <return-value transfer-ownership="none">
44191             <type name="none" c:type="void"/>
44192           </return-value>
44193         </callback>
44194       </field>
44195       <field name="gtk_reserved2">
44196         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
44197           <return-value transfer-ownership="none">
44198             <type name="none" c:type="void"/>
44199           </return-value>
44200         </callback>
44201       </field>
44202       <field name="gtk_reserved3">
44203         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
44204           <return-value transfer-ownership="none">
44205             <type name="none" c:type="void"/>
44206           </return-value>
44207         </callback>
44208       </field>
44209       <field name="gtk_reserved4">
44210         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
44211           <return-value transfer-ownership="none">
44212             <type name="none" c:type="void"/>
44213           </return-value>
44214         </callback>
44215       </field>
44216       <field name="gtk_reserved5">
44217         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
44218           <return-value transfer-ownership="none">
44219             <type name="none" c:type="void"/>
44220           </return-value>
44221         </callback>
44222       </field>
44223       <field name="gtk_reserved6">
44224         <callback name="gtk_reserved6" c:type="_gtk_reserved6">
44225           <return-value transfer-ownership="none">
44226             <type name="none" c:type="void"/>
44227           </return-value>
44228         </callback>
44229       </field>
44230     </record>
44231     <interface name="PrintOperationPreview"
44232                c:type="GtkPrintOperationPreview"
44233                glib:type-name="GtkPrintOperationPreview"
44234                glib:get-type="gtk_print_operation_preview_get_type"
44235                glib:type-struct="PrintOperationPreviewIface">
44236       <virtual-method name="render_page" invoker="render_page" version="2.10">
44237         <doc xml:whitespace="preserve">Renders a page to the preview, using the print context that
44238 was passed to the #GtkPrintOperation::preview handler together
44239 with @preview.
44240 A custom iprint preview should use this function in its ::expose
44241 handler to render the currently selected page.
44242 Note that this function requires a suitable cairo context to 
44243 be associated with the print context.</doc>
44244         <return-value transfer-ownership="none">
44245           <type name="none" c:type="void"/>
44246         </return-value>
44247         <parameters>
44248           <parameter name="page_nr" transfer-ownership="none">
44249             <doc xml:whitespace="preserve">the page to render</doc>
44250             <type name="int" c:type="gint"/>
44251           </parameter>
44252         </parameters>
44253       </virtual-method>
44254       <virtual-method name="is_selected" invoker="is_selected" version="2.10">
44255         <doc xml:whitespace="preserve">Returns whether the given page is included in the set of pages that
44256 have been selected for printing.</doc>
44257         <return-value transfer-ownership="none">
44258           <doc xml:whitespace="preserve">%TRUE if the page has been selected for printing</doc>
44259           <type name="boolean" c:type="gboolean"/>
44260         </return-value>
44261         <parameters>
44262           <parameter name="page_nr" transfer-ownership="none">
44263             <doc xml:whitespace="preserve">a page number</doc>
44264             <type name="int" c:type="gint"/>
44265           </parameter>
44266         </parameters>
44267       </virtual-method>
44268       <virtual-method name="end_preview" invoker="end_preview" version="2.10">
44269         <doc xml:whitespace="preserve">Ends a preview. 
44270 This function must be called to finish a custom print preview.</doc>
44271         <return-value transfer-ownership="none">
44272           <type name="none" c:type="void"/>
44273         </return-value>
44274       </virtual-method>
44275       <method name="render_page"
44276               c:identifier="gtk_print_operation_preview_render_page"
44277               version="2.10">
44278         <doc xml:whitespace="preserve">Renders a page to the preview, using the print context that
44279 was passed to the #GtkPrintOperation::preview handler together
44280 with @preview.
44281 A custom iprint preview should use this function in its ::expose
44282 handler to render the currently selected page.
44283 Note that this function requires a suitable cairo context to 
44284 be associated with the print context.</doc>
44285         <return-value transfer-ownership="none">
44286           <type name="none" c:type="void"/>
44287         </return-value>
44288         <parameters>
44289           <parameter name="page_nr" transfer-ownership="none">
44290             <doc xml:whitespace="preserve">the page to render</doc>
44291             <type name="int" c:type="gint"/>
44292           </parameter>
44293         </parameters>
44294       </method>
44295       <method name="end_preview"
44296               c:identifier="gtk_print_operation_preview_end_preview"
44297               version="2.10">
44298         <doc xml:whitespace="preserve">Ends a preview. 
44299 This function must be called to finish a custom print preview.</doc>
44300         <return-value transfer-ownership="none">
44301           <type name="none" c:type="void"/>
44302         </return-value>
44303       </method>
44304       <method name="is_selected"
44305               c:identifier="gtk_print_operation_preview_is_selected"
44306               version="2.10">
44307         <doc xml:whitespace="preserve">Returns whether the given page is included in the set of pages that
44308 have been selected for printing.</doc>
44309         <return-value transfer-ownership="none">
44310           <doc xml:whitespace="preserve">%TRUE if the page has been selected for printing</doc>
44311           <type name="boolean" c:type="gboolean"/>
44312         </return-value>
44313         <parameters>
44314           <parameter name="page_nr" transfer-ownership="none">
44315             <doc xml:whitespace="preserve">a page number</doc>
44316             <type name="int" c:type="gint"/>
44317           </parameter>
44318         </parameters>
44319       </method>
44320       <glib:signal name="got-page-size">
44321         <doc xml:whitespace="preserve">The ::got-page-size signal is emitted once for each page
44322 that gets rendered to the preview. 
44323 A handler for this signal should update the @context
44324 according to @page_setup and set up a suitable cairo
44325 context, using gtk_print_context_set_cairo_context().</doc>
44326         <return-value transfer-ownership="full">
44327           <type name="none" c:type="void"/>
44328         </return-value>
44329         <parameters>
44330           <parameter name="context" transfer-ownership="none">
44331             <doc xml:whitespace="preserve">the current #GtkPrintContext</doc>
44332             <type name="PrintContext" c:type="GtkPrintContext"/>
44333           </parameter>
44334           <parameter name="page_setup" transfer-ownership="none">
44335             <doc xml:whitespace="preserve">the #GtkPageSetup for the current page</doc>
44336             <type name="PageSetup" c:type="GtkPageSetup"/>
44337           </parameter>
44338         </parameters>
44339       </glib:signal>
44340       <glib:signal name="ready">
44341         <doc xml:whitespace="preserve">The ::ready signal gets emitted once per preview operation,
44342 before the first page is rendered.
44343 A handler for this signal can be used for setup tasks.</doc>
44344         <return-value transfer-ownership="full">
44345           <type name="none" c:type="void"/>
44346         </return-value>
44347         <parameters>
44348           <parameter name="context" transfer-ownership="none">
44349             <doc xml:whitespace="preserve">the current #GtkPrintContext</doc>
44350             <type name="PrintContext" c:type="GtkPrintContext"/>
44351           </parameter>
44352         </parameters>
44353       </glib:signal>
44354     </interface>
44355     <record name="PrintOperationPreviewIface"
44356             c:type="GtkPrintOperationPreviewIface"
44357             glib:is-gtype-struct-for="PrintOperationPreview">
44358       <field name="g_iface">
44359         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
44360       </field>
44361       <field name="ready">
44362         <callback name="ready" c:type="ready">
44363           <return-value transfer-ownership="none">
44364             <type name="none" c:type="void"/>
44365           </return-value>
44366           <parameters>
44367             <parameter name="preview" transfer-ownership="none">
44368               <type name="PrintOperationPreview"
44369                     c:type="GtkPrintOperationPreview*"/>
44370             </parameter>
44371             <parameter name="context" transfer-ownership="none">
44372               <type name="PrintContext" c:type="GtkPrintContext*"/>
44373             </parameter>
44374           </parameters>
44375         </callback>
44376       </field>
44377       <field name="got_page_size">
44378         <callback name="got_page_size" c:type="got_page_size">
44379           <return-value transfer-ownership="none">
44380             <type name="none" c:type="void"/>
44381           </return-value>
44382           <parameters>
44383             <parameter name="preview" transfer-ownership="none">
44384               <type name="PrintOperationPreview"
44385                     c:type="GtkPrintOperationPreview*"/>
44386             </parameter>
44387             <parameter name="context" transfer-ownership="none">
44388               <type name="PrintContext" c:type="GtkPrintContext*"/>
44389             </parameter>
44390             <parameter name="page_setup" transfer-ownership="none">
44391               <type name="PageSetup" c:type="GtkPageSetup*"/>
44392             </parameter>
44393           </parameters>
44394         </callback>
44395       </field>
44396       <field name="render_page">
44397         <callback name="render_page" c:type="render_page">
44398           <return-value transfer-ownership="none">
44399             <type name="none" c:type="void"/>
44400           </return-value>
44401           <parameters>
44402             <parameter name="preview" transfer-ownership="none">
44403               <type name="PrintOperationPreview"
44404                     c:type="GtkPrintOperationPreview*"/>
44405             </parameter>
44406             <parameter name="page_nr" transfer-ownership="none">
44407               <doc xml:whitespace="preserve">the page to render</doc>
44408               <type name="int" c:type="gint"/>
44409             </parameter>
44410           </parameters>
44411         </callback>
44412       </field>
44413       <field name="is_selected">
44414         <callback name="is_selected" c:type="is_selected">
44415           <return-value transfer-ownership="none">
44416             <doc xml:whitespace="preserve">%TRUE if the page has been selected for printing</doc>
44417             <type name="boolean" c:type="gboolean"/>
44418           </return-value>
44419           <parameters>
44420             <parameter name="preview" transfer-ownership="none">
44421               <type name="PrintOperationPreview"
44422                     c:type="GtkPrintOperationPreview*"/>
44423             </parameter>
44424             <parameter name="page_nr" transfer-ownership="none">
44425               <doc xml:whitespace="preserve">a page number</doc>
44426               <type name="int" c:type="gint"/>
44427             </parameter>
44428           </parameters>
44429         </callback>
44430       </field>
44431       <field name="end_preview">
44432         <callback name="end_preview" c:type="end_preview">
44433           <return-value transfer-ownership="none">
44434             <type name="none" c:type="void"/>
44435           </return-value>
44436           <parameters>
44437             <parameter name="preview" transfer-ownership="none">
44438               <type name="PrintOperationPreview"
44439                     c:type="GtkPrintOperationPreview*"/>
44440             </parameter>
44441           </parameters>
44442         </callback>
44443       </field>
44444       <field name="gtk_reserved1">
44445         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
44446           <return-value transfer-ownership="none">
44447             <type name="none" c:type="void"/>
44448           </return-value>
44449         </callback>
44450       </field>
44451       <field name="gtk_reserved2">
44452         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
44453           <return-value transfer-ownership="none">
44454             <type name="none" c:type="void"/>
44455           </return-value>
44456         </callback>
44457       </field>
44458       <field name="gtk_reserved3">
44459         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
44460           <return-value transfer-ownership="none">
44461             <type name="none" c:type="void"/>
44462           </return-value>
44463         </callback>
44464       </field>
44465       <field name="gtk_reserved4">
44466         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
44467           <return-value transfer-ownership="none">
44468             <type name="none" c:type="void"/>
44469           </return-value>
44470         </callback>
44471       </field>
44472       <field name="gtk_reserved5">
44473         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
44474           <return-value transfer-ownership="none">
44475             <type name="none" c:type="void"/>
44476           </return-value>
44477         </callback>
44478       </field>
44479       <field name="gtk_reserved6">
44480         <callback name="gtk_reserved6" c:type="_gtk_reserved6">
44481           <return-value transfer-ownership="none">
44482             <type name="none" c:type="void"/>
44483           </return-value>
44484         </callback>
44485       </field>
44486       <field name="gtk_reserved7">
44487         <callback name="gtk_reserved7" c:type="_gtk_reserved7">
44488           <return-value transfer-ownership="none">
44489             <type name="none" c:type="void"/>
44490           </return-value>
44491         </callback>
44492       </field>
44493     </record>
44494     <record name="PrintOperationPrivate" c:type="GtkPrintOperationPrivate">
44495     </record>
44496     <enumeration name="PrintOperationResult"
44497                  glib:type-name="GtkPrintOperationResult"
44498                  glib:get-type="gtk_print_operation_result_get_type"
44499                  c:type="GtkPrintOperationResult">
44500       <member name="error"
44501               value="0"
44502               c:identifier="GTK_PRINT_OPERATION_RESULT_ERROR"
44503               glib:nick="error"/>
44504       <member name="apply"
44505               value="1"
44506               c:identifier="GTK_PRINT_OPERATION_RESULT_APPLY"
44507               glib:nick="apply"/>
44508       <member name="cancel"
44509               value="2"
44510               c:identifier="GTK_PRINT_OPERATION_RESULT_CANCEL"
44511               glib:nick="cancel"/>
44512       <member name="in_progress"
44513               value="3"
44514               c:identifier="GTK_PRINT_OPERATION_RESULT_IN_PROGRESS"
44515               glib:nick="in-progress"/>
44516     </enumeration>
44517     <enumeration name="PrintPages"
44518                  glib:type-name="GtkPrintPages"
44519                  glib:get-type="gtk_print_pages_get_type"
44520                  c:type="GtkPrintPages">
44521       <member name="all"
44522               value="0"
44523               c:identifier="GTK_PRINT_PAGES_ALL"
44524               glib:nick="all"/>
44525       <member name="current"
44526               value="1"
44527               c:identifier="GTK_PRINT_PAGES_CURRENT"
44528               glib:nick="current"/>
44529       <member name="ranges"
44530               value="2"
44531               c:identifier="GTK_PRINT_PAGES_RANGES"
44532               glib:nick="ranges"/>
44533       <member name="selection"
44534               value="3"
44535               c:identifier="GTK_PRINT_PAGES_SELECTION"
44536               glib:nick="selection"/>
44537     </enumeration>
44538     <enumeration name="PrintQuality"
44539                  glib:type-name="GtkPrintQuality"
44540                  glib:get-type="gtk_print_quality_get_type"
44541                  c:type="GtkPrintQuality">
44542       <member name="low"
44543               value="0"
44544               c:identifier="GTK_PRINT_QUALITY_LOW"
44545               glib:nick="low"/>
44546       <member name="normal"
44547               value="1"
44548               c:identifier="GTK_PRINT_QUALITY_NORMAL"
44549               glib:nick="normal"/>
44550       <member name="high"
44551               value="2"
44552               c:identifier="GTK_PRINT_QUALITY_HIGH"
44553               glib:nick="high"/>
44554       <member name="draft"
44555               value="3"
44556               c:identifier="GTK_PRINT_QUALITY_DRAFT"
44557               glib:nick="draft"/>
44558     </enumeration>
44559     <class name="PrintSettings"
44560            c:type="GtkPrintSettings"
44561            parent="GObject.Object"
44562            glib:type-name="GtkPrintSettings"
44563            glib:get-type="gtk_print_settings_get_type">
44564       <constructor name="new"
44565                    c:identifier="gtk_print_settings_new"
44566                    version="2.10">
44567         <doc xml:whitespace="preserve">Creates a new #GtkPrintSettings object.</doc>
44568         <return-value transfer-ownership="full">
44569           <doc xml:whitespace="preserve">a new #GtkPrintSettings object</doc>
44570           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
44571         </return-value>
44572       </constructor>
44573       <constructor name="new_from_file"
44574                    c:identifier="gtk_print_settings_new_from_file"
44575                    version="2.12"
44576                    throws="1">
44577         <doc xml:whitespace="preserve">Reads the print settings from @file_name. Returns a new #GtkPrintSettings
44578 object with the restored settings, or %NULL if an error occurred. If the
44579 file could not be loaded then error is set to either a #GFileError or
44580 #GKeyFileError.  See gtk_print_settings_to_file().</doc>
44581         <return-value transfer-ownership="full">
44582           <doc xml:whitespace="preserve">the restored #GtkPrintSettings</doc>
44583           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
44584         </return-value>
44585         <parameters>
44586           <parameter name="file_name" transfer-ownership="none">
44587             <doc xml:whitespace="preserve">the filename to read the settings from</doc>
44588             <type name="utf8" c:type="gchar*"/>
44589           </parameter>
44590         </parameters>
44591       </constructor>
44592       <constructor name="new_from_key_file"
44593                    c:identifier="gtk_print_settings_new_from_key_file"
44594                    version="2.12"
44595                    throws="1">
44596         <doc xml:whitespace="preserve">Reads the print settings from the group @group_name in @key_file.  Returns a
44597 new #GtkPrintSettings object with the restored settings, or %NULL if an
44598 error occurred. If the file could not be loaded then error is set to either
44599 a #GFileError or #GKeyFileError.</doc>
44600         <return-value transfer-ownership="full">
44601           <doc xml:whitespace="preserve">the restored #GtkPrintSettings</doc>
44602           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
44603         </return-value>
44604         <parameters>
44605           <parameter name="key_file" transfer-ownership="none">
44606             <doc xml:whitespace="preserve">the #GKeyFile to retrieve the settings from</doc>
44607             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
44608           </parameter>
44609           <parameter name="group_name"
44610                      transfer-ownership="none"
44611                      allow-none="1">
44612             <doc xml:whitespace="preserve">the name of the group to use, or %NULL to use the default "Print Settings"</doc>
44613             <type name="utf8" c:type="gchar*"/>
44614           </parameter>
44615         </parameters>
44616       </constructor>
44617       <method name="copy"
44618               c:identifier="gtk_print_settings_copy"
44619               version="2.10">
44620         <doc xml:whitespace="preserve">Copies a #GtkPrintSettings object.</doc>
44621         <return-value transfer-ownership="full">
44622           <doc xml:whitespace="preserve">a newly allocated copy of @other</doc>
44623           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
44624         </return-value>
44625       </method>
44626       <method name="load_file"
44627               c:identifier="gtk_print_settings_load_file"
44628               version="2.14"
44629               throws="1">
44630         <doc xml:whitespace="preserve">Reads the print settings from @file_name. If the file could not be loaded
44631 then error is set to either a #GFileError or #GKeyFileError.
44632 See gtk_print_settings_to_file().</doc>
44633         <return-value transfer-ownership="none">
44634           <doc xml:whitespace="preserve">%TRUE on success</doc>
44635           <type name="boolean" c:type="gboolean"/>
44636         </return-value>
44637         <parameters>
44638           <parameter name="file_name" transfer-ownership="none">
44639             <doc xml:whitespace="preserve">the filename to read the settings from</doc>
44640             <type name="utf8" c:type="gchar*"/>
44641           </parameter>
44642         </parameters>
44643       </method>
44644       <method name="to_file"
44645               c:identifier="gtk_print_settings_to_file"
44646               version="2.12"
44647               throws="1">
44648         <doc xml:whitespace="preserve">This function saves the print settings from @settings to @file_name. If the
44649 file could not be loaded then error is set to either a #GFileError or
44650 #GKeyFileError.</doc>
44651         <return-value transfer-ownership="none">
44652           <doc xml:whitespace="preserve">%TRUE on success</doc>
44653           <type name="boolean" c:type="gboolean"/>
44654         </return-value>
44655         <parameters>
44656           <parameter name="file_name" transfer-ownership="none">
44657             <doc xml:whitespace="preserve">the file to save to</doc>
44658             <type name="utf8" c:type="gchar*"/>
44659           </parameter>
44660         </parameters>
44661       </method>
44662       <method name="load_key_file"
44663               c:identifier="gtk_print_settings_load_key_file"
44664               version="2.14"
44665               throws="1">
44666         <doc xml:whitespace="preserve">Reads the print settings from the group @group_name in @key_file. If the
44667 file could not be loaded then error is set to either a #GFileError or
44668 #GKeyFileError.</doc>
44669         <return-value transfer-ownership="none">
44670           <doc xml:whitespace="preserve">%TRUE on success</doc>
44671           <type name="boolean" c:type="gboolean"/>
44672         </return-value>
44673         <parameters>
44674           <parameter name="key_file" transfer-ownership="none">
44675             <doc xml:whitespace="preserve">the #GKeyFile to retrieve the settings from</doc>
44676             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
44677           </parameter>
44678           <parameter name="group_name"
44679                      transfer-ownership="none"
44680                      allow-none="1">
44681             <doc xml:whitespace="preserve">the name of the group to use, or %NULL to use the default "Print Settings"</doc>
44682             <type name="utf8" c:type="gchar*"/>
44683           </parameter>
44684         </parameters>
44685       </method>
44686       <method name="to_key_file"
44687               c:identifier="gtk_print_settings_to_key_file"
44688               version="2.12">
44689         <doc xml:whitespace="preserve">This function adds the print settings from @settings to @key_file.</doc>
44690         <return-value transfer-ownership="none">
44691           <type name="none" c:type="void"/>
44692         </return-value>
44693         <parameters>
44694           <parameter name="key_file" transfer-ownership="none">
44695             <doc xml:whitespace="preserve">the #GKeyFile to save the print settings to</doc>
44696             <type name="GLib.KeyFile" c:type="GKeyFile*"/>
44697           </parameter>
44698           <parameter name="group_name" transfer-ownership="none">
44699             <doc xml:whitespace="preserve">the group to add the settings to in @key_file, or %NULL to use the default "Print Settings"</doc>
44700             <type name="utf8" c:type="gchar*"/>
44701           </parameter>
44702         </parameters>
44703       </method>
44704       <method name="has_key"
44705               c:identifier="gtk_print_settings_has_key"
44706               version="2.10">
44707         <doc xml:whitespace="preserve">Returns %TRUE, if a value is associated with @key.</doc>
44708         <return-value transfer-ownership="none">
44709           <doc xml:whitespace="preserve">%TRUE, if @key has a value</doc>
44710           <type name="boolean" c:type="gboolean"/>
44711         </return-value>
44712         <parameters>
44713           <parameter name="key" transfer-ownership="none">
44714             <doc xml:whitespace="preserve">a key</doc>
44715             <type name="utf8" c:type="gchar*"/>
44716           </parameter>
44717         </parameters>
44718       </method>
44719       <method name="get" c:identifier="gtk_print_settings_get" version="2.10">
44720         <doc xml:whitespace="preserve">Looks up the string value associated with @key.</doc>
44721         <return-value transfer-ownership="none">
44722           <doc xml:whitespace="preserve">the string value for @key</doc>
44723           <type name="utf8" c:type="gchar*"/>
44724         </return-value>
44725         <parameters>
44726           <parameter name="key" transfer-ownership="none">
44727             <doc xml:whitespace="preserve">a key</doc>
44728             <type name="utf8" c:type="gchar*"/>
44729           </parameter>
44730         </parameters>
44731       </method>
44732       <method name="set" c:identifier="gtk_print_settings_set" version="2.10">
44733         <doc xml:whitespace="preserve">Associates @value with @key.</doc>
44734         <return-value transfer-ownership="none">
44735           <type name="none" c:type="void"/>
44736         </return-value>
44737         <parameters>
44738           <parameter name="key" transfer-ownership="none">
44739             <doc xml:whitespace="preserve">a key</doc>
44740             <type name="utf8" c:type="gchar*"/>
44741           </parameter>
44742           <parameter name="value" transfer-ownership="none" allow-none="1">
44743             <doc xml:whitespace="preserve">a string value, or %NULL</doc>
44744             <type name="utf8" c:type="gchar*"/>
44745           </parameter>
44746         </parameters>
44747       </method>
44748       <method name="unset"
44749               c:identifier="gtk_print_settings_unset"
44750               version="2.10">
44751         <doc xml:whitespace="preserve">Removes any value associated with @key. 
44752 This has the same effect as setting the value to %NULL.</doc>
44753         <return-value transfer-ownership="none">
44754           <type name="none" c:type="void"/>
44755         </return-value>
44756         <parameters>
44757           <parameter name="key" transfer-ownership="none">
44758             <doc xml:whitespace="preserve">a key</doc>
44759             <type name="utf8" c:type="gchar*"/>
44760           </parameter>
44761         </parameters>
44762       </method>
44763       <method name="foreach"
44764               c:identifier="gtk_print_settings_foreach"
44765               version="2.10">
44766         <doc xml:whitespace="preserve">Calls @func for each key-value pair of @settings.</doc>
44767         <return-value transfer-ownership="none">
44768           <type name="none" c:type="void"/>
44769         </return-value>
44770         <parameters>
44771           <parameter name="func"
44772                      transfer-ownership="none"
44773                      scope="call"
44774                      closure="2">
44775             <doc xml:whitespace="preserve">(scope call) the function to call</doc>
44776             <type name="PrintSettingsFunc" c:type="GtkPrintSettingsFunc"/>
44777           </parameter>
44778           <parameter name="user_data" transfer-ownership="none">
44779             <doc xml:whitespace="preserve">user data for @func</doc>
44780             <type name="any" c:type="gpointer"/>
44781           </parameter>
44782         </parameters>
44783       </method>
44784       <method name="get_bool"
44785               c:identifier="gtk_print_settings_get_bool"
44786               version="2.10">
44787         <doc xml:whitespace="preserve">Returns the boolean represented by the value
44788 that is associated with @key. 
44789 The string "true" represents %TRUE, any other 
44790 string %FALSE.</doc>
44791         <return-value transfer-ownership="none">
44792           <doc xml:whitespace="preserve">%TRUE, if @key maps to a true value.</doc>
44793           <type name="boolean" c:type="gboolean"/>
44794         </return-value>
44795         <parameters>
44796           <parameter name="key" transfer-ownership="none">
44797             <doc xml:whitespace="preserve">a key</doc>
44798             <type name="utf8" c:type="gchar*"/>
44799           </parameter>
44800         </parameters>
44801       </method>
44802       <method name="set_bool"
44803               c:identifier="gtk_print_settings_set_bool"
44804               version="2.10">
44805         <doc xml:whitespace="preserve">Sets @key to a boolean value.</doc>
44806         <return-value transfer-ownership="none">
44807           <type name="none" c:type="void"/>
44808         </return-value>
44809         <parameters>
44810           <parameter name="key" transfer-ownership="none">
44811             <doc xml:whitespace="preserve">a key</doc>
44812             <type name="utf8" c:type="gchar*"/>
44813           </parameter>
44814           <parameter name="value" transfer-ownership="none">
44815             <doc xml:whitespace="preserve">a boolean</doc>
44816             <type name="boolean" c:type="gboolean"/>
44817           </parameter>
44818         </parameters>
44819       </method>
44820       <method name="get_double"
44821               c:identifier="gtk_print_settings_get_double"
44822               version="2.10">
44823         <doc xml:whitespace="preserve">Returns the double value associated with @key, or 0.</doc>
44824         <return-value transfer-ownership="none">
44825           <doc xml:whitespace="preserve">the double value of @key</doc>
44826           <type name="double" c:type="gdouble"/>
44827         </return-value>
44828         <parameters>
44829           <parameter name="key" transfer-ownership="none">
44830             <doc xml:whitespace="preserve">a key</doc>
44831             <type name="utf8" c:type="gchar*"/>
44832           </parameter>
44833         </parameters>
44834       </method>
44835       <method name="get_double_with_default"
44836               c:identifier="gtk_print_settings_get_double_with_default"
44837               version="2.10">
44838         <doc xml:whitespace="preserve">Returns the floating point number represented by 
44839 the value that is associated with @key, or @default_val
44840 if the value does not represent a floating point number.
44841 Floating point numbers are parsed with g_ascii_strtod().</doc>
44842         <return-value transfer-ownership="none">
44843           <doc xml:whitespace="preserve">the floating point number associated with @key</doc>
44844           <type name="double" c:type="gdouble"/>
44845         </return-value>
44846         <parameters>
44847           <parameter name="key" transfer-ownership="none">
44848             <doc xml:whitespace="preserve">a key</doc>
44849             <type name="utf8" c:type="gchar*"/>
44850           </parameter>
44851           <parameter name="def" transfer-ownership="none">
44852             <doc xml:whitespace="preserve">the default value</doc>
44853             <type name="double" c:type="gdouble"/>
44854           </parameter>
44855         </parameters>
44856       </method>
44857       <method name="set_double"
44858               c:identifier="gtk_print_settings_set_double"
44859               version="2.10">
44860         <doc xml:whitespace="preserve">Sets @key to a double value.</doc>
44861         <return-value transfer-ownership="none">
44862           <type name="none" c:type="void"/>
44863         </return-value>
44864         <parameters>
44865           <parameter name="key" transfer-ownership="none">
44866             <doc xml:whitespace="preserve">a key</doc>
44867             <type name="utf8" c:type="gchar*"/>
44868           </parameter>
44869           <parameter name="value" transfer-ownership="none">
44870             <doc xml:whitespace="preserve">a double value</doc>
44871             <type name="double" c:type="gdouble"/>
44872           </parameter>
44873         </parameters>
44874       </method>
44875       <method name="get_length"
44876               c:identifier="gtk_print_settings_get_length"
44877               version="2.10">
44878         <doc xml:whitespace="preserve">Returns the value associated with @key, interpreted
44879 as a length. The returned value is converted to @units.</doc>
44880         <return-value transfer-ownership="none">
44881           <doc xml:whitespace="preserve">the length value of @key, converted to @unit</doc>
44882           <type name="double" c:type="gdouble"/>
44883         </return-value>
44884         <parameters>
44885           <parameter name="key" transfer-ownership="none">
44886             <doc xml:whitespace="preserve">a key</doc>
44887             <type name="utf8" c:type="gchar*"/>
44888           </parameter>
44889           <parameter name="unit" transfer-ownership="none">
44890             <doc xml:whitespace="preserve">the unit of the return value</doc>
44891             <type name="Unit" c:type="GtkUnit"/>
44892           </parameter>
44893         </parameters>
44894       </method>
44895       <method name="set_length"
44896               c:identifier="gtk_print_settings_set_length"
44897               version="2.10">
44898         <doc xml:whitespace="preserve">Associates a length in units of @unit with @key.</doc>
44899         <return-value transfer-ownership="none">
44900           <type name="none" c:type="void"/>
44901         </return-value>
44902         <parameters>
44903           <parameter name="key" transfer-ownership="none">
44904             <doc xml:whitespace="preserve">a key</doc>
44905             <type name="utf8" c:type="gchar*"/>
44906           </parameter>
44907           <parameter name="value" transfer-ownership="none">
44908             <doc xml:whitespace="preserve">a length</doc>
44909             <type name="double" c:type="gdouble"/>
44910           </parameter>
44911           <parameter name="unit" transfer-ownership="none">
44912             <doc xml:whitespace="preserve">the unit of @length</doc>
44913             <type name="Unit" c:type="GtkUnit"/>
44914           </parameter>
44915         </parameters>
44916       </method>
44917       <method name="get_int"
44918               c:identifier="gtk_print_settings_get_int"
44919               version="2.10">
44920         <doc xml:whitespace="preserve">Returns the integer value of @key, or 0.</doc>
44921         <return-value transfer-ownership="none">
44922           <doc xml:whitespace="preserve">the integer value of @key</doc>
44923           <type name="int" c:type="gint"/>
44924         </return-value>
44925         <parameters>
44926           <parameter name="key" transfer-ownership="none">
44927             <doc xml:whitespace="preserve">a key</doc>
44928             <type name="utf8" c:type="gchar*"/>
44929           </parameter>
44930         </parameters>
44931       </method>
44932       <method name="get_int_with_default"
44933               c:identifier="gtk_print_settings_get_int_with_default"
44934               version="2.10">
44935         <doc xml:whitespace="preserve">Returns the value of @key, interpreted as
44936 an integer, or the default value.</doc>
44937         <return-value transfer-ownership="none">
44938           <doc xml:whitespace="preserve">the integer value of @key</doc>
44939           <type name="int" c:type="gint"/>
44940         </return-value>
44941         <parameters>
44942           <parameter name="key" transfer-ownership="none">
44943             <doc xml:whitespace="preserve">a key</doc>
44944             <type name="utf8" c:type="gchar*"/>
44945           </parameter>
44946           <parameter name="def" transfer-ownership="none">
44947             <doc xml:whitespace="preserve">the default value</doc>
44948             <type name="int" c:type="gint"/>
44949           </parameter>
44950         </parameters>
44951       </method>
44952       <method name="set_int"
44953               c:identifier="gtk_print_settings_set_int"
44954               version="2.10">
44955         <doc xml:whitespace="preserve">Sets @key to an integer value.</doc>
44956         <return-value transfer-ownership="none">
44957           <type name="none" c:type="void"/>
44958         </return-value>
44959         <parameters>
44960           <parameter name="key" transfer-ownership="none">
44961             <doc xml:whitespace="preserve">a key</doc>
44962             <type name="utf8" c:type="gchar*"/>
44963           </parameter>
44964           <parameter name="value" transfer-ownership="none">
44965             <doc xml:whitespace="preserve">an integer</doc>
44966             <type name="int" c:type="gint"/>
44967           </parameter>
44968         </parameters>
44969       </method>
44970       <method name="get_printer"
44971               c:identifier="gtk_print_settings_get_printer"
44972               version="2.10">
44973         <doc xml:whitespace="preserve">Convenience function to obtain the value of 
44974 %GTK_PRINT_SETTINGS_PRINTER.</doc>
44975         <return-value transfer-ownership="none">
44976           <doc xml:whitespace="preserve">the printer name</doc>
44977           <type name="utf8" c:type="gchar*"/>
44978         </return-value>
44979       </method>
44980       <method name="set_printer"
44981               c:identifier="gtk_print_settings_set_printer"
44982               version="2.10">
44983         <doc xml:whitespace="preserve">Convenience function to set %GTK_PRINT_SETTINGS_PRINTER
44984 to @printer.</doc>
44985         <return-value transfer-ownership="none">
44986           <type name="none" c:type="void"/>
44987         </return-value>
44988         <parameters>
44989           <parameter name="printer" transfer-ownership="none">
44990             <doc xml:whitespace="preserve">the printer name</doc>
44991             <type name="utf8" c:type="gchar*"/>
44992           </parameter>
44993         </parameters>
44994       </method>
44995       <method name="get_orientation"
44996               c:identifier="gtk_print_settings_get_orientation"
44997               version="2.10">
44998         <doc xml:whitespace="preserve">Get the value of %GTK_PRINT_SETTINGS_ORIENTATION, 
44999 converted to a #GtkPageOrientation.</doc>
45000         <return-value transfer-ownership="full">
45001           <doc xml:whitespace="preserve">the orientation</doc>
45002           <type name="PageOrientation" c:type="GtkPageOrientation"/>
45003         </return-value>
45004       </method>
45005       <method name="set_orientation"
45006               c:identifier="gtk_print_settings_set_orientation"
45007               version="2.10">
45008         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_ORIENTATION.</doc>
45009         <return-value transfer-ownership="none">
45010           <type name="none" c:type="void"/>
45011         </return-value>
45012         <parameters>
45013           <parameter name="orientation" transfer-ownership="none">
45014             <doc xml:whitespace="preserve">a page orientation</doc>
45015             <type name="PageOrientation" c:type="GtkPageOrientation"/>
45016           </parameter>
45017         </parameters>
45018       </method>
45019       <method name="get_paper_size"
45020               c:identifier="gtk_print_settings_get_paper_size"
45021               version="2.10">
45022         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PAPER_FORMAT, 
45023 converted to a #GtkPaperSize.</doc>
45024         <return-value transfer-ownership="full">
45025           <doc xml:whitespace="preserve">the paper size</doc>
45026           <type name="PaperSize" c:type="GtkPaperSize*"/>
45027         </return-value>
45028       </method>
45029       <method name="set_paper_size"
45030               c:identifier="gtk_print_settings_set_paper_size"
45031               version="2.10">
45032         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PAPER_FORMAT,
45033 %GTK_PRINT_SETTINGS_PAPER_WIDTH and
45034 %GTK_PRINT_SETTINGS_PAPER_HEIGHT.</doc>
45035         <return-value transfer-ownership="none">
45036           <type name="none" c:type="void"/>
45037         </return-value>
45038         <parameters>
45039           <parameter name="paper_size" transfer-ownership="none">
45040             <doc xml:whitespace="preserve">a paper size</doc>
45041             <type name="PaperSize" c:type="GtkPaperSize*"/>
45042           </parameter>
45043         </parameters>
45044       </method>
45045       <method name="get_paper_width"
45046               c:identifier="gtk_print_settings_get_paper_width"
45047               version="2.10">
45048         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PAPER_WIDTH,
45049 converted to @unit.</doc>
45050         <return-value transfer-ownership="none">
45051           <doc xml:whitespace="preserve">the paper width, in units of @unit</doc>
45052           <type name="double" c:type="gdouble"/>
45053         </return-value>
45054         <parameters>
45055           <parameter name="unit" transfer-ownership="none">
45056             <doc xml:whitespace="preserve">the unit for the return value</doc>
45057             <type name="Unit" c:type="GtkUnit"/>
45058           </parameter>
45059         </parameters>
45060       </method>
45061       <method name="set_paper_width"
45062               c:identifier="gtk_print_settings_set_paper_width"
45063               version="2.10">
45064         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PAPER_WIDTH.</doc>
45065         <return-value transfer-ownership="none">
45066           <type name="none" c:type="void"/>
45067         </return-value>
45068         <parameters>
45069           <parameter name="width" transfer-ownership="none">
45070             <doc xml:whitespace="preserve">the paper width</doc>
45071             <type name="double" c:type="gdouble"/>
45072           </parameter>
45073           <parameter name="unit" transfer-ownership="none">
45074             <doc xml:whitespace="preserve">the units of @width</doc>
45075             <type name="Unit" c:type="GtkUnit"/>
45076           </parameter>
45077         </parameters>
45078       </method>
45079       <method name="get_paper_height"
45080               c:identifier="gtk_print_settings_get_paper_height"
45081               version="2.10">
45082         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PAPER_HEIGHT,
45083 converted to @unit.</doc>
45084         <return-value transfer-ownership="none">
45085           <doc xml:whitespace="preserve">the paper height, in units of @unit</doc>
45086           <type name="double" c:type="gdouble"/>
45087         </return-value>
45088         <parameters>
45089           <parameter name="unit" transfer-ownership="none">
45090             <doc xml:whitespace="preserve">the unit for the return value</doc>
45091             <type name="Unit" c:type="GtkUnit"/>
45092           </parameter>
45093         </parameters>
45094       </method>
45095       <method name="set_paper_height"
45096               c:identifier="gtk_print_settings_set_paper_height"
45097               version="2.10">
45098         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PAPER_HEIGHT.</doc>
45099         <return-value transfer-ownership="none">
45100           <type name="none" c:type="void"/>
45101         </return-value>
45102         <parameters>
45103           <parameter name="height" transfer-ownership="none">
45104             <doc xml:whitespace="preserve">the paper height</doc>
45105             <type name="double" c:type="gdouble"/>
45106           </parameter>
45107           <parameter name="unit" transfer-ownership="none">
45108             <doc xml:whitespace="preserve">the units of @height</doc>
45109             <type name="Unit" c:type="GtkUnit"/>
45110           </parameter>
45111         </parameters>
45112       </method>
45113       <method name="get_use_color"
45114               c:identifier="gtk_print_settings_get_use_color"
45115               version="2.10">
45116         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_USE_COLOR.</doc>
45117         <return-value transfer-ownership="none">
45118           <doc xml:whitespace="preserve">whether to use color</doc>
45119           <type name="boolean" c:type="gboolean"/>
45120         </return-value>
45121       </method>
45122       <method name="set_use_color"
45123               c:identifier="gtk_print_settings_set_use_color"
45124               version="2.10">
45125         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_USE_COLOR.</doc>
45126         <return-value transfer-ownership="none">
45127           <type name="none" c:type="void"/>
45128         </return-value>
45129         <parameters>
45130           <parameter name="use_color" transfer-ownership="none">
45131             <doc xml:whitespace="preserve">whether to use color</doc>
45132             <type name="boolean" c:type="gboolean"/>
45133           </parameter>
45134         </parameters>
45135       </method>
45136       <method name="get_collate"
45137               c:identifier="gtk_print_settings_get_collate"
45138               version="2.10">
45139         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_COLLATE.</doc>
45140         <return-value transfer-ownership="none">
45141           <doc xml:whitespace="preserve">whether to collate the printed pages</doc>
45142           <type name="boolean" c:type="gboolean"/>
45143         </return-value>
45144       </method>
45145       <method name="set_collate"
45146               c:identifier="gtk_print_settings_set_collate"
45147               version="2.10">
45148         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_COLLATE.</doc>
45149         <return-value transfer-ownership="none">
45150           <type name="none" c:type="void"/>
45151         </return-value>
45152         <parameters>
45153           <parameter name="collate" transfer-ownership="none">
45154             <doc xml:whitespace="preserve">whether to collate the output</doc>
45155             <type name="boolean" c:type="gboolean"/>
45156           </parameter>
45157         </parameters>
45158       </method>
45159       <method name="get_reverse"
45160               c:identifier="gtk_print_settings_get_reverse"
45161               version="2.10">
45162         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_REVERSE.</doc>
45163         <return-value transfer-ownership="none">
45164           <doc xml:whitespace="preserve">whether to reverse the order of the printed pages</doc>
45165           <type name="boolean" c:type="gboolean"/>
45166         </return-value>
45167       </method>
45168       <method name="set_reverse"
45169               c:identifier="gtk_print_settings_set_reverse"
45170               version="2.10">
45171         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_REVERSE.</doc>
45172         <return-value transfer-ownership="none">
45173           <type name="none" c:type="void"/>
45174         </return-value>
45175         <parameters>
45176           <parameter name="reverse" transfer-ownership="none">
45177             <doc xml:whitespace="preserve">whether to reverse the output</doc>
45178             <type name="boolean" c:type="gboolean"/>
45179           </parameter>
45180         </parameters>
45181       </method>
45182       <method name="get_duplex"
45183               c:identifier="gtk_print_settings_get_duplex"
45184               version="2.10">
45185         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_DUPLEX.</doc>
45186         <return-value transfer-ownership="full">
45187           <doc xml:whitespace="preserve">whether to print the output in duplex.</doc>
45188           <type name="PrintDuplex" c:type="GtkPrintDuplex"/>
45189         </return-value>
45190       </method>
45191       <method name="set_duplex"
45192               c:identifier="gtk_print_settings_set_duplex"
45193               version="2.10">
45194         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_DUPLEX.</doc>
45195         <return-value transfer-ownership="none">
45196           <type name="none" c:type="void"/>
45197         </return-value>
45198         <parameters>
45199           <parameter name="duplex" transfer-ownership="none">
45200             <doc xml:whitespace="preserve">a #GtkPrintDuplex value</doc>
45201             <type name="PrintDuplex" c:type="GtkPrintDuplex"/>
45202           </parameter>
45203         </parameters>
45204       </method>
45205       <method name="get_quality"
45206               c:identifier="gtk_print_settings_get_quality"
45207               version="2.10">
45208         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_QUALITY.</doc>
45209         <return-value transfer-ownership="full">
45210           <doc xml:whitespace="preserve">the print quality</doc>
45211           <type name="PrintQuality" c:type="GtkPrintQuality"/>
45212         </return-value>
45213       </method>
45214       <method name="set_quality"
45215               c:identifier="gtk_print_settings_set_quality"
45216               version="2.10">
45217         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_QUALITY.</doc>
45218         <return-value transfer-ownership="none">
45219           <type name="none" c:type="void"/>
45220         </return-value>
45221         <parameters>
45222           <parameter name="quality" transfer-ownership="none">
45223             <doc xml:whitespace="preserve">a #GtkPrintQuality value</doc>
45224             <type name="PrintQuality" c:type="GtkPrintQuality"/>
45225           </parameter>
45226         </parameters>
45227       </method>
45228       <method name="get_n_copies"
45229               c:identifier="gtk_print_settings_get_n_copies"
45230               version="2.10">
45231         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_N_COPIES.</doc>
45232         <return-value transfer-ownership="none">
45233           <doc xml:whitespace="preserve">the number of copies to print</doc>
45234           <type name="int" c:type="gint"/>
45235         </return-value>
45236       </method>
45237       <method name="set_n_copies"
45238               c:identifier="gtk_print_settings_set_n_copies"
45239               version="2.10">
45240         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_N_COPIES.</doc>
45241         <return-value transfer-ownership="none">
45242           <type name="none" c:type="void"/>
45243         </return-value>
45244         <parameters>
45245           <parameter name="num_copies" transfer-ownership="none">
45246             <doc xml:whitespace="preserve">the number of copies</doc>
45247             <type name="int" c:type="gint"/>
45248           </parameter>
45249         </parameters>
45250       </method>
45251       <method name="get_number_up"
45252               c:identifier="gtk_print_settings_get_number_up"
45253               version="2.10">
45254         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_NUMBER_UP.</doc>
45255         <return-value transfer-ownership="none">
45256           <doc xml:whitespace="preserve">the number of pages per sheet</doc>
45257           <type name="int" c:type="gint"/>
45258         </return-value>
45259       </method>
45260       <method name="set_number_up"
45261               c:identifier="gtk_print_settings_set_number_up"
45262               version="2.10">
45263         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_NUMBER_UP.</doc>
45264         <return-value transfer-ownership="none">
45265           <type name="none" c:type="void"/>
45266         </return-value>
45267         <parameters>
45268           <parameter name="number_up" transfer-ownership="none">
45269             <doc xml:whitespace="preserve">the number of pages per sheet</doc>
45270             <type name="int" c:type="gint"/>
45271           </parameter>
45272         </parameters>
45273       </method>
45274       <method name="get_number_up_layout"
45275               c:identifier="gtk_print_settings_get_number_up_layout"
45276               version="2.14">
45277         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT.</doc>
45278         <return-value transfer-ownership="full">
45279           <doc xml:whitespace="preserve">layout of page in number-up mode</doc>
45280           <type name="NumberUpLayout" c:type="GtkNumberUpLayout"/>
45281         </return-value>
45282       </method>
45283       <method name="set_number_up_layout"
45284               c:identifier="gtk_print_settings_set_number_up_layout"
45285               version="2.14">
45286         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_NUMBER_UP_LAYOUT.</doc>
45287         <return-value transfer-ownership="none">
45288           <type name="none" c:type="void"/>
45289         </return-value>
45290         <parameters>
45291           <parameter name="number_up_layout" transfer-ownership="none">
45292             <doc xml:whitespace="preserve">a #GtkNumberUpLayout value</doc>
45293             <type name="NumberUpLayout" c:type="GtkNumberUpLayout"/>
45294           </parameter>
45295         </parameters>
45296       </method>
45297       <method name="get_resolution"
45298               c:identifier="gtk_print_settings_get_resolution"
45299               version="2.10">
45300         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_RESOLUTION.</doc>
45301         <return-value transfer-ownership="none">
45302           <doc xml:whitespace="preserve">the resolution in dpi</doc>
45303           <type name="int" c:type="gint"/>
45304         </return-value>
45305       </method>
45306       <method name="set_resolution"
45307               c:identifier="gtk_print_settings_set_resolution"
45308               version="2.10">
45309         <doc xml:whitespace="preserve">Sets the values of %GTK_PRINT_SETTINGS_RESOLUTION,
45310 %GTK_PRINT_SETTINGS_RESOLUTION_X and 
45311 %GTK_PRINT_SETTINGS_RESOLUTION_Y.</doc>
45312         <return-value transfer-ownership="none">
45313           <type name="none" c:type="void"/>
45314         </return-value>
45315         <parameters>
45316           <parameter name="resolution" transfer-ownership="none">
45317             <doc xml:whitespace="preserve">the resolution in dpi</doc>
45318             <type name="int" c:type="gint"/>
45319           </parameter>
45320         </parameters>
45321       </method>
45322       <method name="get_resolution_x"
45323               c:identifier="gtk_print_settings_get_resolution_x"
45324               version="2.16">
45325         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_RESOLUTION_X.</doc>
45326         <return-value transfer-ownership="none">
45327           <doc xml:whitespace="preserve">the horizontal resolution in dpi</doc>
45328           <type name="int" c:type="gint"/>
45329         </return-value>
45330       </method>
45331       <method name="get_resolution_y"
45332               c:identifier="gtk_print_settings_get_resolution_y"
45333               version="2.16">
45334         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_RESOLUTION_Y.</doc>
45335         <return-value transfer-ownership="none">
45336           <doc xml:whitespace="preserve">the vertical resolution in dpi</doc>
45337           <type name="int" c:type="gint"/>
45338         </return-value>
45339       </method>
45340       <method name="set_resolution_xy"
45341               c:identifier="gtk_print_settings_set_resolution_xy"
45342               version="2.16">
45343         <doc xml:whitespace="preserve">Sets the values of %GTK_PRINT_SETTINGS_RESOLUTION,
45344 %GTK_PRINT_SETTINGS_RESOLUTION_X and
45345 %GTK_PRINT_SETTINGS_RESOLUTION_Y.</doc>
45346         <return-value transfer-ownership="none">
45347           <type name="none" c:type="void"/>
45348         </return-value>
45349         <parameters>
45350           <parameter name="resolution_x" transfer-ownership="none">
45351             <doc xml:whitespace="preserve">the horizontal resolution in dpi</doc>
45352             <type name="int" c:type="gint"/>
45353           </parameter>
45354           <parameter name="resolution_y" transfer-ownership="none">
45355             <doc xml:whitespace="preserve">the vertical resolution in dpi</doc>
45356             <type name="int" c:type="gint"/>
45357           </parameter>
45358         </parameters>
45359       </method>
45360       <method name="get_printer_lpi"
45361               c:identifier="gtk_print_settings_get_printer_lpi"
45362               version="2.16">
45363         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PRINTER_LPI.</doc>
45364         <return-value transfer-ownership="none">
45365           <doc xml:whitespace="preserve">the resolution in lpi (lines per inch)</doc>
45366           <type name="double" c:type="gdouble"/>
45367         </return-value>
45368       </method>
45369       <method name="set_printer_lpi"
45370               c:identifier="gtk_print_settings_set_printer_lpi"
45371               version="2.16">
45372         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PRINTER_LPI.</doc>
45373         <return-value transfer-ownership="none">
45374           <type name="none" c:type="void"/>
45375         </return-value>
45376         <parameters>
45377           <parameter name="lpi" transfer-ownership="none">
45378             <doc xml:whitespace="preserve">the resolution in lpi (lines per inch)</doc>
45379             <type name="double" c:type="gdouble"/>
45380           </parameter>
45381         </parameters>
45382       </method>
45383       <method name="get_scale"
45384               c:identifier="gtk_print_settings_get_scale"
45385               version="2.10">
45386         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_SCALE.</doc>
45387         <return-value transfer-ownership="none">
45388           <doc xml:whitespace="preserve">the scale in percent</doc>
45389           <type name="double" c:type="gdouble"/>
45390         </return-value>
45391       </method>
45392       <method name="set_scale"
45393               c:identifier="gtk_print_settings_set_scale"
45394               version="2.10">
45395         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_SCALE.</doc>
45396         <return-value transfer-ownership="none">
45397           <type name="none" c:type="void"/>
45398         </return-value>
45399         <parameters>
45400           <parameter name="scale" transfer-ownership="none">
45401             <doc xml:whitespace="preserve">the scale in percent</doc>
45402             <type name="double" c:type="gdouble"/>
45403           </parameter>
45404         </parameters>
45405       </method>
45406       <method name="get_print_pages"
45407               c:identifier="gtk_print_settings_get_print_pages"
45408               version="2.10">
45409         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PRINT_PAGES.</doc>
45410         <return-value transfer-ownership="full">
45411           <doc xml:whitespace="preserve">which pages to print</doc>
45412           <type name="PrintPages" c:type="GtkPrintPages"/>
45413         </return-value>
45414       </method>
45415       <method name="set_print_pages"
45416               c:identifier="gtk_print_settings_set_print_pages"
45417               version="2.10">
45418         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PRINT_PAGES.</doc>
45419         <return-value transfer-ownership="none">
45420           <type name="none" c:type="void"/>
45421         </return-value>
45422         <parameters>
45423           <parameter name="pages" transfer-ownership="none">
45424             <doc xml:whitespace="preserve">a #GtkPrintPages value</doc>
45425             <type name="PrintPages" c:type="GtkPrintPages"/>
45426           </parameter>
45427         </parameters>
45428       </method>
45429       <method name="get_page_ranges"
45430               c:identifier="gtk_print_settings_get_page_ranges"
45431               version="2.10">
45432         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PAGE_RANGES.
45433 to free the array when it is no longer needed.</doc>
45434         <return-value transfer-ownership="full">
45435           <doc xml:whitespace="preserve">an array of #GtkPageRange&lt;!-- --&gt;s. Use g_free()</doc>
45436           <type name="PageRange" c:type="GtkPageRange*"/>
45437         </return-value>
45438         <parameters>
45439           <parameter name="num_ranges"
45440                      direction="out"
45441                      caller-allocates="0"
45442                      transfer-ownership="full">
45443             <doc xml:whitespace="preserve">return location for the length of the returned array</doc>
45444             <type name="int" c:type="gint*"/>
45445           </parameter>
45446         </parameters>
45447       </method>
45448       <method name="set_page_ranges"
45449               c:identifier="gtk_print_settings_set_page_ranges"
45450               version="2.10">
45451         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PAGE_RANGES.</doc>
45452         <return-value transfer-ownership="none">
45453           <type name="none" c:type="void"/>
45454         </return-value>
45455         <parameters>
45456           <parameter name="page_ranges" transfer-ownership="none">
45457             <doc xml:whitespace="preserve">an array of #GtkPageRange&lt;!-- --&gt;s</doc>
45458             <type name="PageRange" c:type="GtkPageRange*"/>
45459           </parameter>
45460           <parameter name="num_ranges" transfer-ownership="none">
45461             <doc xml:whitespace="preserve">the length of @page_ranges</doc>
45462             <type name="int" c:type="gint"/>
45463           </parameter>
45464         </parameters>
45465       </method>
45466       <method name="get_page_set"
45467               c:identifier="gtk_print_settings_get_page_set"
45468               version="2.10">
45469         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_PAGE_SET.</doc>
45470         <return-value transfer-ownership="full">
45471           <doc xml:whitespace="preserve">the set of pages to print</doc>
45472           <type name="PageSet" c:type="GtkPageSet"/>
45473         </return-value>
45474       </method>
45475       <method name="set_page_set"
45476               c:identifier="gtk_print_settings_set_page_set"
45477               version="2.10">
45478         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_PAGE_SET.</doc>
45479         <return-value transfer-ownership="none">
45480           <type name="none" c:type="void"/>
45481         </return-value>
45482         <parameters>
45483           <parameter name="page_set" transfer-ownership="none">
45484             <doc xml:whitespace="preserve">a #GtkPageSet value</doc>
45485             <type name="PageSet" c:type="GtkPageSet"/>
45486           </parameter>
45487         </parameters>
45488       </method>
45489       <method name="get_default_source"
45490               c:identifier="gtk_print_settings_get_default_source"
45491               version="2.10">
45492         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_DEFAULT_SOURCE.</doc>
45493         <return-value transfer-ownership="none">
45494           <doc xml:whitespace="preserve">the default source</doc>
45495           <type name="utf8" c:type="gchar*"/>
45496         </return-value>
45497       </method>
45498       <method name="set_default_source"
45499               c:identifier="gtk_print_settings_set_default_source"
45500               version="2.10">
45501         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_DEFAULT_SOURCE.</doc>
45502         <return-value transfer-ownership="none">
45503           <type name="none" c:type="void"/>
45504         </return-value>
45505         <parameters>
45506           <parameter name="default_source" transfer-ownership="none">
45507             <doc xml:whitespace="preserve">the default source</doc>
45508             <type name="utf8" c:type="gchar*"/>
45509           </parameter>
45510         </parameters>
45511       </method>
45512       <method name="get_media_type"
45513               c:identifier="gtk_print_settings_get_media_type"
45514               version="2.10">
45515         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_MEDIA_TYPE.
45516 The set of media types is defined in PWG 5101.1-2002 PWG.
45517 &lt;!-- FIXME link here --&gt;</doc>
45518         <return-value transfer-ownership="none">
45519           <doc xml:whitespace="preserve">the media type</doc>
45520           <type name="utf8" c:type="gchar*"/>
45521         </return-value>
45522       </method>
45523       <method name="set_media_type"
45524               c:identifier="gtk_print_settings_set_media_type"
45525               version="2.10">
45526         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_MEDIA_TYPE.
45527 The set of media types is defined in PWG 5101.1-2002 PWG.
45528 &lt;!-- FIXME link here --&gt;</doc>
45529         <return-value transfer-ownership="none">
45530           <type name="none" c:type="void"/>
45531         </return-value>
45532         <parameters>
45533           <parameter name="media_type" transfer-ownership="none">
45534             <doc xml:whitespace="preserve">the media type</doc>
45535             <type name="utf8" c:type="gchar*"/>
45536           </parameter>
45537         </parameters>
45538       </method>
45539       <method name="get_dither"
45540               c:identifier="gtk_print_settings_get_dither"
45541               version="2.10">
45542         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_DITHER.</doc>
45543         <return-value transfer-ownership="none">
45544           <doc xml:whitespace="preserve">the dithering that is used</doc>
45545           <type name="utf8" c:type="gchar*"/>
45546         </return-value>
45547       </method>
45548       <method name="set_dither"
45549               c:identifier="gtk_print_settings_set_dither"
45550               version="2.10">
45551         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_DITHER.</doc>
45552         <return-value transfer-ownership="none">
45553           <type name="none" c:type="void"/>
45554         </return-value>
45555         <parameters>
45556           <parameter name="dither" transfer-ownership="none">
45557             <doc xml:whitespace="preserve">the dithering that is used</doc>
45558             <type name="utf8" c:type="gchar*"/>
45559           </parameter>
45560         </parameters>
45561       </method>
45562       <method name="get_finishings"
45563               c:identifier="gtk_print_settings_get_finishings"
45564               version="2.10">
45565         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_FINISHINGS.</doc>
45566         <return-value transfer-ownership="none">
45567           <doc xml:whitespace="preserve">the finishings</doc>
45568           <type name="utf8" c:type="gchar*"/>
45569         </return-value>
45570       </method>
45571       <method name="set_finishings"
45572               c:identifier="gtk_print_settings_set_finishings"
45573               version="2.10">
45574         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_FINISHINGS.</doc>
45575         <return-value transfer-ownership="none">
45576           <type name="none" c:type="void"/>
45577         </return-value>
45578         <parameters>
45579           <parameter name="finishings" transfer-ownership="none">
45580             <doc xml:whitespace="preserve">the finishings</doc>
45581             <type name="utf8" c:type="gchar*"/>
45582           </parameter>
45583         </parameters>
45584       </method>
45585       <method name="get_output_bin"
45586               c:identifier="gtk_print_settings_get_output_bin"
45587               version="2.10">
45588         <doc xml:whitespace="preserve">Gets the value of %GTK_PRINT_SETTINGS_OUTPUT_BIN.</doc>
45589         <return-value transfer-ownership="none">
45590           <doc xml:whitespace="preserve">the output bin</doc>
45591           <type name="utf8" c:type="gchar*"/>
45592         </return-value>
45593       </method>
45594       <method name="set_output_bin"
45595               c:identifier="gtk_print_settings_set_output_bin"
45596               version="2.10">
45597         <doc xml:whitespace="preserve">Sets the value of %GTK_PRINT_SETTINGS_OUTPUT_BIN.</doc>
45598         <return-value transfer-ownership="none">
45599           <type name="none" c:type="void"/>
45600         </return-value>
45601         <parameters>
45602           <parameter name="output_bin" transfer-ownership="none">
45603             <doc xml:whitespace="preserve">the output bin</doc>
45604             <type name="utf8" c:type="gchar*"/>
45605           </parameter>
45606         </parameters>
45607       </method>
45608     </class>
45609     <callback name="PrintSettingsFunc" c:type="GtkPrintSettingsFunc">
45610       <return-value transfer-ownership="none">
45611         <type name="none" c:type="void"/>
45612       </return-value>
45613       <parameters>
45614         <parameter name="key" transfer-ownership="none">
45615           <type name="utf8" c:type="gchar*"/>
45616         </parameter>
45617         <parameter name="value" transfer-ownership="none">
45618           <type name="utf8" c:type="gchar*"/>
45619         </parameter>
45620         <parameter name="user_data" transfer-ownership="none" closure="2">
45621           <type name="any" c:type="gpointer"/>
45622         </parameter>
45623       </parameters>
45624     </callback>
45625     <enumeration name="PrintStatus"
45626                  glib:type-name="GtkPrintStatus"
45627                  glib:get-type="gtk_print_status_get_type"
45628                  c:type="GtkPrintStatus">
45629       <member name="initial"
45630               value="0"
45631               c:identifier="GTK_PRINT_STATUS_INITIAL"
45632               glib:nick="initial"/>
45633       <member name="preparing"
45634               value="1"
45635               c:identifier="GTK_PRINT_STATUS_PREPARING"
45636               glib:nick="preparing"/>
45637       <member name="generating_data"
45638               value="2"
45639               c:identifier="GTK_PRINT_STATUS_GENERATING_DATA"
45640               glib:nick="generating-data"/>
45641       <member name="sending_data"
45642               value="3"
45643               c:identifier="GTK_PRINT_STATUS_SENDING_DATA"
45644               glib:nick="sending-data"/>
45645       <member name="pending"
45646               value="4"
45647               c:identifier="GTK_PRINT_STATUS_PENDING"
45648               glib:nick="pending"/>
45649       <member name="pending_issue"
45650               value="5"
45651               c:identifier="GTK_PRINT_STATUS_PENDING_ISSUE"
45652               glib:nick="pending-issue"/>
45653       <member name="printing"
45654               value="6"
45655               c:identifier="GTK_PRINT_STATUS_PRINTING"
45656               glib:nick="printing"/>
45657       <member name="finished"
45658               value="7"
45659               c:identifier="GTK_PRINT_STATUS_FINISHED"
45660               glib:nick="finished"/>
45661       <member name="finished_aborted"
45662               value="8"
45663               c:identifier="GTK_PRINT_STATUS_FINISHED_ABORTED"
45664               glib:nick="finished-aborted"/>
45665     </enumeration>
45666     <bitfield name="PrivateFlags"
45667               glib:type-name="GtkPrivateFlags"
45668               glib:get-type="gtk_private_flags_get_type"
45669               c:type="GtkPrivateFlags">
45670       <member name="user_style"
45671               value="1"
45672               c:identifier="PRIVATE_GTK_USER_STYLE"
45673               glib:nick="user-style"/>
45674       <member name="resize_pending"
45675               value="4"
45676               c:identifier="PRIVATE_GTK_RESIZE_PENDING"
45677               glib:nick="resize-pending"/>
45678       <member name="has_pointer"
45679               value="8"
45680               c:identifier="PRIVATE_GTK_HAS_POINTER"
45681               glib:nick="has-pointer"/>
45682       <member name="shadowed"
45683               value="16"
45684               c:identifier="PRIVATE_GTK_SHADOWED"
45685               glib:nick="shadowed"/>
45686       <member name="has_shape_mask"
45687               value="32"
45688               c:identifier="PRIVATE_GTK_HAS_SHAPE_MASK"
45689               glib:nick="has-shape-mask"/>
45690       <member name="in_reparent"
45691               value="64"
45692               c:identifier="PRIVATE_GTK_IN_REPARENT"
45693               glib:nick="in-reparent"/>
45694       <member name="direction_set"
45695               value="128"
45696               c:identifier="PRIVATE_GTK_DIRECTION_SET"
45697               glib:nick="direction-set"/>
45698       <member name="direction_ltr"
45699               value="256"
45700               c:identifier="PRIVATE_GTK_DIRECTION_LTR"
45701               glib:nick="direction-ltr"/>
45702       <member name="anchored"
45703               value="512"
45704               c:identifier="PRIVATE_GTK_ANCHORED"
45705               glib:nick="anchored"/>
45706       <member name="child_visible"
45707               value="1024"
45708               c:identifier="PRIVATE_GTK_CHILD_VISIBLE"
45709               glib:nick="child-visible"/>
45710       <member name="redraw_on_alloc"
45711               value="2048"
45712               c:identifier="PRIVATE_GTK_REDRAW_ON_ALLOC"
45713               glib:nick="redraw-on-alloc"/>
45714       <member name="alloc_needed"
45715               value="4096"
45716               c:identifier="PRIVATE_GTK_ALLOC_NEEDED"
45717               glib:nick="alloc-needed"/>
45718       <member name="request_needed"
45719               value="8192"
45720               c:identifier="PRIVATE_GTK_REQUEST_NEEDED"
45721               glib:nick="request-needed"/>
45722     </bitfield>
45723     <class name="Progress"
45724            c:type="GtkProgress"
45725            parent="Widget"
45726            abstract="1"
45727            glib:type-name="GtkProgress"
45728            glib:get-type="gtk_progress_get_type"
45729            glib:type-struct="ProgressClass">
45730       <implements name="Atk.ImplementorIface"/>
45731       <implements name="Buildable"/>
45732       <virtual-method name="paint">
45733         <return-value transfer-ownership="none">
45734           <type name="none" c:type="void"/>
45735         </return-value>
45736       </virtual-method>
45737       <virtual-method name="update">
45738         <return-value transfer-ownership="none">
45739           <type name="none" c:type="void"/>
45740         </return-value>
45741       </virtual-method>
45742       <virtual-method name="act_mode_enter">
45743         <return-value transfer-ownership="none">
45744           <type name="none" c:type="void"/>
45745         </return-value>
45746       </virtual-method>
45747       <method name="set_show_text" c:identifier="gtk_progress_set_show_text">
45748         <return-value transfer-ownership="none">
45749           <type name="none" c:type="void"/>
45750         </return-value>
45751         <parameters>
45752           <parameter name="show_text" transfer-ownership="none">
45753             <type name="boolean" c:type="gboolean"/>
45754           </parameter>
45755         </parameters>
45756       </method>
45757       <method name="set_text_alignment"
45758               c:identifier="gtk_progress_set_text_alignment">
45759         <return-value transfer-ownership="none">
45760           <type name="none" c:type="void"/>
45761         </return-value>
45762         <parameters>
45763           <parameter name="x_align" transfer-ownership="none">
45764             <type name="float" c:type="gfloat"/>
45765           </parameter>
45766           <parameter name="y_align" transfer-ownership="none">
45767             <type name="float" c:type="gfloat"/>
45768           </parameter>
45769         </parameters>
45770       </method>
45771       <method name="set_format_string"
45772               c:identifier="gtk_progress_set_format_string">
45773         <return-value transfer-ownership="none">
45774           <type name="none" c:type="void"/>
45775         </return-value>
45776         <parameters>
45777           <parameter name="format" transfer-ownership="none">
45778             <type name="utf8" c:type="gchar*"/>
45779           </parameter>
45780         </parameters>
45781       </method>
45782       <method name="set_adjustment" c:identifier="gtk_progress_set_adjustment">
45783         <return-value transfer-ownership="none">
45784           <type name="none" c:type="void"/>
45785         </return-value>
45786         <parameters>
45787           <parameter name="adjustment" transfer-ownership="none">
45788             <type name="Adjustment" c:type="GtkAdjustment*"/>
45789           </parameter>
45790         </parameters>
45791       </method>
45792       <method name="configure" c:identifier="gtk_progress_configure">
45793         <return-value transfer-ownership="none">
45794           <type name="none" c:type="void"/>
45795         </return-value>
45796         <parameters>
45797           <parameter name="value" transfer-ownership="none">
45798             <type name="double" c:type="gdouble"/>
45799           </parameter>
45800           <parameter name="min" transfer-ownership="none">
45801             <type name="double" c:type="gdouble"/>
45802           </parameter>
45803           <parameter name="max" transfer-ownership="none">
45804             <type name="double" c:type="gdouble"/>
45805           </parameter>
45806         </parameters>
45807       </method>
45808       <method name="set_percentage" c:identifier="gtk_progress_set_percentage">
45809         <return-value transfer-ownership="none">
45810           <type name="none" c:type="void"/>
45811         </return-value>
45812         <parameters>
45813           <parameter name="percentage" transfer-ownership="none">
45814             <type name="double" c:type="gdouble"/>
45815           </parameter>
45816         </parameters>
45817       </method>
45818       <method name="set_value" c:identifier="gtk_progress_set_value">
45819         <return-value transfer-ownership="none">
45820           <type name="none" c:type="void"/>
45821         </return-value>
45822         <parameters>
45823           <parameter name="value" transfer-ownership="none">
45824             <type name="double" c:type="gdouble"/>
45825           </parameter>
45826         </parameters>
45827       </method>
45828       <method name="get_value" c:identifier="gtk_progress_get_value">
45829         <return-value transfer-ownership="none">
45830           <type name="double" c:type="gdouble"/>
45831         </return-value>
45832       </method>
45833       <method name="set_activity_mode"
45834               c:identifier="gtk_progress_set_activity_mode">
45835         <return-value transfer-ownership="none">
45836           <type name="none" c:type="void"/>
45837         </return-value>
45838         <parameters>
45839           <parameter name="activity_mode" transfer-ownership="none">
45840             <type name="boolean" c:type="gboolean"/>
45841           </parameter>
45842         </parameters>
45843       </method>
45844       <method name="get_current_text"
45845               c:identifier="gtk_progress_get_current_text">
45846         <return-value transfer-ownership="full">
45847           <type name="utf8" c:type="gchar*"/>
45848         </return-value>
45849       </method>
45850       <method name="get_text_from_value"
45851               c:identifier="gtk_progress_get_text_from_value">
45852         <return-value transfer-ownership="full">
45853           <type name="utf8" c:type="gchar*"/>
45854         </return-value>
45855         <parameters>
45856           <parameter name="value" transfer-ownership="none">
45857             <type name="double" c:type="gdouble"/>
45858           </parameter>
45859         </parameters>
45860       </method>
45861       <method name="get_current_percentage"
45862               c:identifier="gtk_progress_get_current_percentage">
45863         <return-value transfer-ownership="none">
45864           <type name="double" c:type="gdouble"/>
45865         </return-value>
45866       </method>
45867       <method name="get_percentage_from_value"
45868               c:identifier="gtk_progress_get_percentage_from_value">
45869         <return-value transfer-ownership="none">
45870           <type name="double" c:type="gdouble"/>
45871         </return-value>
45872         <parameters>
45873           <parameter name="value" transfer-ownership="none">
45874             <type name="double" c:type="gdouble"/>
45875           </parameter>
45876         </parameters>
45877       </method>
45878       <property name="activity-mode" writable="1" transfer-ownership="none">
45879         <type name="boolean" c:type="gboolean"/>
45880       </property>
45881       <property name="show-text" writable="1" transfer-ownership="none">
45882         <type name="boolean" c:type="gboolean"/>
45883       </property>
45884       <property name="text-xalign" writable="1" transfer-ownership="none">
45885         <type name="float" c:type="gfloat"/>
45886       </property>
45887       <property name="text-yalign" writable="1" transfer-ownership="none">
45888         <type name="float" c:type="gfloat"/>
45889       </property>
45890       <field name="widget">
45891         <type name="Widget" c:type="GtkWidget"/>
45892       </field>
45893       <field name="adjustment">
45894         <type name="Adjustment" c:type="GtkAdjustment*"/>
45895       </field>
45896       <field name="offscreen_pixmap">
45897         <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
45898       </field>
45899       <field name="format">
45900         <type name="utf8" c:type="gchar*"/>
45901       </field>
45902       <field name="x_align">
45903         <type name="float" c:type="gfloat"/>
45904       </field>
45905       <field name="y_align">
45906         <type name="float" c:type="gfloat"/>
45907       </field>
45908       <field name="show_text" bits="1">
45909         <type name="uint" c:type="guint"/>
45910       </field>
45911       <field name="activity_mode" bits="1">
45912         <type name="uint" c:type="guint"/>
45913       </field>
45914       <field name="use_text_format" bits="1">
45915         <type name="uint" c:type="guint"/>
45916       </field>
45917     </class>
45918     <class name="ProgressBar"
45919            c:type="GtkProgressBar"
45920            parent="Progress"
45921            glib:type-name="GtkProgressBar"
45922            glib:get-type="gtk_progress_bar_get_type"
45923            glib:type-struct="ProgressBarClass">
45924       <implements name="Atk.ImplementorIface"/>
45925       <implements name="Buildable"/>
45926       <constructor name="new" c:identifier="gtk_progress_bar_new">
45927         <return-value transfer-ownership="full">
45928           <type name="ProgressBar" c:type="GtkWidget*"/>
45929         </return-value>
45930       </constructor>
45931       <constructor name="new_with_adjustment"
45932                    c:identifier="gtk_progress_bar_new_with_adjustment">
45933         <doc xml:whitespace="preserve">Creates a new #GtkProgressBar with an associated #GtkAdjustment.</doc>
45934         <return-value transfer-ownership="none">
45935           <doc xml:whitespace="preserve">a #GtkProgressBar.</doc>
45936           <type name="ProgressBar" c:type="GtkWidget*"/>
45937         </return-value>
45938         <parameters>
45939           <parameter name="adjustment"
45940                      transfer-ownership="none"
45941                      allow-none="1">
45942             <type name="Adjustment" c:type="GtkAdjustment*"/>
45943           </parameter>
45944         </parameters>
45945       </constructor>
45946       <method name="pulse" c:identifier="gtk_progress_bar_pulse">
45947         <doc xml:whitespace="preserve">Indicates that some progress is made, but you don't know how much.
45948 Causes the progress bar to enter "activity mode," where a block
45949 bounces back and forth. Each call to gtk_progress_bar_pulse()
45950 causes the block to move by a little bit (the amount of movement
45951 per pulse is determined by gtk_progress_bar_set_pulse_step()).</doc>
45952         <return-value transfer-ownership="none">
45953           <type name="none" c:type="void"/>
45954         </return-value>
45955       </method>
45956       <method name="set_text" c:identifier="gtk_progress_bar_set_text">
45957         <doc xml:whitespace="preserve">Causes the given @text to appear superimposed on the progress bar.</doc>
45958         <return-value transfer-ownership="none">
45959           <type name="none" c:type="void"/>
45960         </return-value>
45961         <parameters>
45962           <parameter name="text" transfer-ownership="none" allow-none="1">
45963             <doc xml:whitespace="preserve">a UTF-8 string, or %NULL</doc>
45964             <type name="utf8" c:type="gchar*"/>
45965           </parameter>
45966         </parameters>
45967       </method>
45968       <method name="set_fraction" c:identifier="gtk_progress_bar_set_fraction">
45969         <doc xml:whitespace="preserve">Causes the progress bar to "fill in" the given fraction
45970 of the bar. The fraction should be between 0.0 and 1.0,
45971 inclusive.</doc>
45972         <return-value transfer-ownership="none">
45973           <type name="none" c:type="void"/>
45974         </return-value>
45975         <parameters>
45976           <parameter name="fraction" transfer-ownership="none">
45977             <doc xml:whitespace="preserve">fraction of the task that's been completed</doc>
45978             <type name="double" c:type="gdouble"/>
45979           </parameter>
45980         </parameters>
45981       </method>
45982       <method name="set_pulse_step"
45983               c:identifier="gtk_progress_bar_set_pulse_step">
45984         <doc xml:whitespace="preserve">Sets the fraction of total progress bar length to move the
45985 bouncing block for each call to gtk_progress_bar_pulse().</doc>
45986         <return-value transfer-ownership="none">
45987           <type name="none" c:type="void"/>
45988         </return-value>
45989         <parameters>
45990           <parameter name="fraction" transfer-ownership="none">
45991             <doc xml:whitespace="preserve">fraction between 0.0 and 1.0</doc>
45992             <type name="double" c:type="gdouble"/>
45993           </parameter>
45994         </parameters>
45995       </method>
45996       <method name="set_orientation"
45997               c:identifier="gtk_progress_bar_set_orientation">
45998         <doc xml:whitespace="preserve">Causes the progress bar to switch to a different orientation
45999 (left-to-right, right-to-left, top-to-bottom, or bottom-to-top).</doc>
46000         <return-value transfer-ownership="none">
46001           <type name="none" c:type="void"/>
46002         </return-value>
46003         <parameters>
46004           <parameter name="orientation" transfer-ownership="none">
46005             <doc xml:whitespace="preserve">orientation of the progress bar</doc>
46006             <type name="ProgressBarOrientation"
46007                   c:type="GtkProgressBarOrientation"/>
46008           </parameter>
46009         </parameters>
46010       </method>
46011       <method name="get_text" c:identifier="gtk_progress_bar_get_text">
46012         <doc xml:whitespace="preserve">Retrieves the text displayed superimposed on the progress bar,
46013 if any, otherwise %NULL. The return value is a reference
46014 to the text, not a copy of it, so will become invalid
46015 if you change the text in the progress bar.
46016 and should not be modified or freed.</doc>
46017         <return-value transfer-ownership="none">
46018           <doc xml:whitespace="preserve">text, or %NULL; this string is owned by the widget</doc>
46019           <type name="utf8" c:type="gchar*"/>
46020         </return-value>
46021       </method>
46022       <method name="get_fraction" c:identifier="gtk_progress_bar_get_fraction">
46023         <doc xml:whitespace="preserve">Returns the current fraction of the task that's been completed.</doc>
46024         <return-value transfer-ownership="none">
46025           <doc xml:whitespace="preserve">a fraction from 0.0 to 1.0</doc>
46026           <type name="double" c:type="gdouble"/>
46027         </return-value>
46028       </method>
46029       <method name="get_pulse_step"
46030               c:identifier="gtk_progress_bar_get_pulse_step">
46031         <doc xml:whitespace="preserve">Retrieves the pulse step set with gtk_progress_bar_set_pulse_step()</doc>
46032         <return-value transfer-ownership="none">
46033           <doc xml:whitespace="preserve">a fraction from 0.0 to 1.0</doc>
46034           <type name="double" c:type="gdouble"/>
46035         </return-value>
46036       </method>
46037       <method name="get_orientation"
46038               c:identifier="gtk_progress_bar_get_orientation">
46039         <doc xml:whitespace="preserve">Retrieves the current progress bar orientation.</doc>
46040         <return-value transfer-ownership="full">
46041           <doc xml:whitespace="preserve">orientation of the progress bar</doc>
46042           <type name="ProgressBarOrientation"
46043                 c:type="GtkProgressBarOrientation"/>
46044         </return-value>
46045       </method>
46046       <method name="set_ellipsize"
46047               c:identifier="gtk_progress_bar_set_ellipsize"
46048               version="2.6">
46049         <doc xml:whitespace="preserve">if there is not enough space to render the entire string.</doc>
46050         <return-value transfer-ownership="none">
46051           <type name="none" c:type="void"/>
46052         </return-value>
46053         <parameters>
46054           <parameter name="mode" transfer-ownership="none">
46055             <doc xml:whitespace="preserve">a #PangoEllipsizeMode</doc>
46056             <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
46057           </parameter>
46058         </parameters>
46059       </method>
46060       <method name="get_ellipsize"
46061               c:identifier="gtk_progress_bar_get_ellipsize"
46062               version="2.6">
46063         <doc xml:whitespace="preserve">Returns the ellipsizing position of the progressbar. 
46064 See gtk_progress_bar_set_ellipsize().</doc>
46065         <return-value transfer-ownership="full">
46066           <doc xml:whitespace="preserve">#PangoEllipsizeMode</doc>
46067           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
46068         </return-value>
46069       </method>
46070       <method name="set_bar_style"
46071               c:identifier="gtk_progress_bar_set_bar_style">
46072         <return-value transfer-ownership="none">
46073           <type name="none" c:type="void"/>
46074         </return-value>
46075         <parameters>
46076           <parameter name="style" transfer-ownership="none">
46077             <type name="ProgressBarStyle" c:type="GtkProgressBarStyle"/>
46078           </parameter>
46079         </parameters>
46080       </method>
46081       <method name="set_discrete_blocks"
46082               c:identifier="gtk_progress_bar_set_discrete_blocks">
46083         <return-value transfer-ownership="none">
46084           <type name="none" c:type="void"/>
46085         </return-value>
46086         <parameters>
46087           <parameter name="blocks" transfer-ownership="none">
46088             <type name="uint" c:type="guint"/>
46089           </parameter>
46090         </parameters>
46091       </method>
46092       <method name="set_activity_step"
46093               c:identifier="gtk_progress_bar_set_activity_step">
46094         <return-value transfer-ownership="none">
46095           <type name="none" c:type="void"/>
46096         </return-value>
46097         <parameters>
46098           <parameter name="step" transfer-ownership="none">
46099             <type name="uint" c:type="guint"/>
46100           </parameter>
46101         </parameters>
46102       </method>
46103       <method name="set_activity_blocks"
46104               c:identifier="gtk_progress_bar_set_activity_blocks">
46105         <return-value transfer-ownership="none">
46106           <type name="none" c:type="void"/>
46107         </return-value>
46108         <parameters>
46109           <parameter name="blocks" transfer-ownership="none">
46110             <type name="uint" c:type="guint"/>
46111           </parameter>
46112         </parameters>
46113       </method>
46114       <method name="update" c:identifier="gtk_progress_bar_update">
46115         <return-value transfer-ownership="none">
46116           <type name="none" c:type="void"/>
46117         </return-value>
46118         <parameters>
46119           <parameter name="percentage" transfer-ownership="none">
46120             <type name="double" c:type="gdouble"/>
46121           </parameter>
46122         </parameters>
46123       </method>
46124       <property name="activity-blocks" writable="1" transfer-ownership="none">
46125         <type name="uint" c:type="guint"/>
46126       </property>
46127       <property name="activity-step" writable="1" transfer-ownership="none">
46128         <type name="uint" c:type="guint"/>
46129       </property>
46130       <property name="adjustment" writable="1" transfer-ownership="none">
46131         <type name="Adjustment" c:type="GtkAdjustment"/>
46132       </property>
46133       <property name="bar-style" writable="1" transfer-ownership="none">
46134         <type name="ProgressBarStyle" c:type="GtkProgressBarStyle"/>
46135       </property>
46136       <property name="discrete-blocks" writable="1" transfer-ownership="none">
46137         <type name="uint" c:type="guint"/>
46138       </property>
46139       <property name="ellipsize"
46140                 version="2.6"
46141                 writable="1"
46142                 transfer-ownership="none">
46143         <doc xml:whitespace="preserve">The preferred place to ellipsize the string, if the progressbar does 
46144 not have enough room to display the entire string, specified as a 
46145 #PangoEllisizeMode. 
46146 Note that setting this property to a value other than 
46147 %PANGO_ELLIPSIZE_NONE has the side-effect that the progressbar requests 
46148 only enough space to display the ellipsis "...". Another means to set a 
46149 progressbar's width is gtk_widget_set_size_request().</doc>
46150         <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
46151       </property>
46152       <property name="fraction" writable="1" transfer-ownership="none">
46153         <type name="double" c:type="gdouble"/>
46154       </property>
46155       <property name="orientation" writable="1" transfer-ownership="none">
46156         <type name="ProgressBarOrientation"
46157               c:type="GtkProgressBarOrientation"/>
46158       </property>
46159       <property name="pulse-step" writable="1" transfer-ownership="none">
46160         <type name="double" c:type="gdouble"/>
46161       </property>
46162       <property name="text" writable="1" transfer-ownership="none">
46163         <type name="utf8" c:type="gchararray"/>
46164       </property>
46165       <field name="progress">
46166         <type name="Progress" c:type="GtkProgress"/>
46167       </field>
46168       <field name="bar_style">
46169         <type name="ProgressBarStyle" c:type="GtkProgressBarStyle"/>
46170       </field>
46171       <field name="orientation">
46172         <type name="ProgressBarOrientation"
46173               c:type="GtkProgressBarOrientation"/>
46174       </field>
46175       <field name="blocks">
46176         <type name="uint" c:type="guint"/>
46177       </field>
46178       <field name="in_block">
46179         <type name="int" c:type="gint"/>
46180       </field>
46181       <field name="activity_pos">
46182         <type name="int" c:type="gint"/>
46183       </field>
46184       <field name="activity_step">
46185         <type name="uint" c:type="guint"/>
46186       </field>
46187       <field name="activity_blocks">
46188         <type name="uint" c:type="guint"/>
46189       </field>
46190       <field name="pulse_fraction">
46191         <type name="double" c:type="gdouble"/>
46192       </field>
46193       <field name="activity_dir" bits="1">
46194         <type name="uint" c:type="guint"/>
46195       </field>
46196       <field name="ellipsize" bits="3">
46197         <type name="uint" c:type="guint"/>
46198       </field>
46199       <field name="dirty" bits="1">
46200         <type name="uint" c:type="guint"/>
46201       </field>
46202     </class>
46203     <record name="ProgressBarClass"
46204             c:type="GtkProgressBarClass"
46205             glib:is-gtype-struct-for="ProgressBar">
46206       <field name="parent_class">
46207         <type name="ProgressClass" c:type="GtkProgressClass"/>
46208       </field>
46209       <field name="gtk_reserved1">
46210         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
46211           <return-value transfer-ownership="none">
46212             <type name="none" c:type="void"/>
46213           </return-value>
46214         </callback>
46215       </field>
46216       <field name="gtk_reserved2">
46217         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
46218           <return-value transfer-ownership="none">
46219             <type name="none" c:type="void"/>
46220           </return-value>
46221         </callback>
46222       </field>
46223       <field name="gtk_reserved3">
46224         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
46225           <return-value transfer-ownership="none">
46226             <type name="none" c:type="void"/>
46227           </return-value>
46228         </callback>
46229       </field>
46230       <field name="gtk_reserved4">
46231         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
46232           <return-value transfer-ownership="none">
46233             <type name="none" c:type="void"/>
46234           </return-value>
46235         </callback>
46236       </field>
46237     </record>
46238     <enumeration name="ProgressBarOrientation"
46239                  glib:type-name="GtkProgressBarOrientation"
46240                  glib:get-type="gtk_progress_bar_orientation_get_type"
46241                  c:type="GtkProgressBarOrientation">
46242       <member name="left_to_right"
46243               value="0"
46244               c:identifier="GTK_PROGRESS_LEFT_TO_RIGHT"
46245               glib:nick="left-to-right"/>
46246       <member name="right_to_left"
46247               value="1"
46248               c:identifier="GTK_PROGRESS_RIGHT_TO_LEFT"
46249               glib:nick="right-to-left"/>
46250       <member name="bottom_to_top"
46251               value="2"
46252               c:identifier="GTK_PROGRESS_BOTTOM_TO_TOP"
46253               glib:nick="bottom-to-top"/>
46254       <member name="top_to_bottom"
46255               value="3"
46256               c:identifier="GTK_PROGRESS_TOP_TO_BOTTOM"
46257               glib:nick="top-to-bottom"/>
46258     </enumeration>
46259     <enumeration name="ProgressBarStyle"
46260                  glib:type-name="GtkProgressBarStyle"
46261                  glib:get-type="gtk_progress_bar_style_get_type"
46262                  c:type="GtkProgressBarStyle">
46263       <member name="continuous"
46264               value="0"
46265               c:identifier="GTK_PROGRESS_CONTINUOUS"
46266               glib:nick="continuous"/>
46267       <member name="discrete"
46268               value="1"
46269               c:identifier="GTK_PROGRESS_DISCRETE"
46270               glib:nick="discrete"/>
46271     </enumeration>
46272     <record name="ProgressClass"
46273             c:type="GtkProgressClass"
46274             glib:is-gtype-struct-for="Progress">
46275       <field name="parent_class">
46276         <type name="WidgetClass" c:type="GtkWidgetClass"/>
46277       </field>
46278       <field name="paint">
46279         <callback name="paint" c:type="paint">
46280           <return-value transfer-ownership="none">
46281             <type name="none" c:type="void"/>
46282           </return-value>
46283           <parameters>
46284             <parameter name="progress" transfer-ownership="none">
46285               <type name="Progress" c:type="GtkProgress*"/>
46286             </parameter>
46287           </parameters>
46288         </callback>
46289       </field>
46290       <field name="update">
46291         <callback name="update" c:type="update">
46292           <return-value transfer-ownership="none">
46293             <type name="none" c:type="void"/>
46294           </return-value>
46295           <parameters>
46296             <parameter name="progress" transfer-ownership="none">
46297               <type name="Progress" c:type="GtkProgress*"/>
46298             </parameter>
46299           </parameters>
46300         </callback>
46301       </field>
46302       <field name="act_mode_enter">
46303         <callback name="act_mode_enter" c:type="act_mode_enter">
46304           <return-value transfer-ownership="none">
46305             <type name="none" c:type="void"/>
46306           </return-value>
46307           <parameters>
46308             <parameter name="progress" transfer-ownership="none">
46309               <type name="Progress" c:type="GtkProgress*"/>
46310             </parameter>
46311           </parameters>
46312         </callback>
46313       </field>
46314       <field name="gtk_reserved1">
46315         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
46316           <return-value transfer-ownership="none">
46317             <type name="none" c:type="void"/>
46318           </return-value>
46319         </callback>
46320       </field>
46321       <field name="gtk_reserved2">
46322         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
46323           <return-value transfer-ownership="none">
46324             <type name="none" c:type="void"/>
46325           </return-value>
46326         </callback>
46327       </field>
46328       <field name="gtk_reserved3">
46329         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
46330           <return-value transfer-ownership="none">
46331             <type name="none" c:type="void"/>
46332           </return-value>
46333         </callback>
46334       </field>
46335       <field name="gtk_reserved4">
46336         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
46337           <return-value transfer-ownership="none">
46338             <type name="none" c:type="void"/>
46339           </return-value>
46340         </callback>
46341       </field>
46342     </record>
46343     <class name="RadioAction"
46344            c:type="GtkRadioAction"
46345            parent="ToggleAction"
46346            glib:type-name="GtkRadioAction"
46347            glib:get-type="gtk_radio_action_get_type"
46348            glib:type-struct="RadioActionClass">
46349       <implements name="Buildable"/>
46350       <constructor name="new"
46351                    c:identifier="gtk_radio_action_new"
46352                    version="2.4">
46353         <doc xml:whitespace="preserve">Creates a new #GtkRadioAction object. To add the action to
46354 a #GtkActionGroup and set the accelerator for the action,
46355 call gtk_action_group_add_action_with_accel().</doc>
46356         <return-value transfer-ownership="full">
46357           <doc xml:whitespace="preserve">a new #GtkRadioAction</doc>
46358           <type name="RadioAction" c:type="GtkRadioAction*"/>
46359         </return-value>
46360         <parameters>
46361           <parameter name="name" transfer-ownership="none">
46362             <doc xml:whitespace="preserve">A unique name for the action</doc>
46363             <type name="utf8" c:type="gchar*"/>
46364           </parameter>
46365           <parameter name="label" transfer-ownership="none" allow-none="1">
46366             <doc xml:whitespace="preserve">The label displayed in menu items and on buttons, or %NULL</doc>
46367             <type name="utf8" c:type="gchar*"/>
46368           </parameter>
46369           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
46370             <doc xml:whitespace="preserve">A tooltip for this action, or %NULL</doc>
46371             <type name="utf8" c:type="gchar*"/>
46372           </parameter>
46373           <parameter name="stock_id" transfer-ownership="none">
46374             <doc xml:whitespace="preserve">The stock icon to display in widgets representing this action, or %NULL</doc>
46375             <type name="utf8" c:type="gchar*"/>
46376           </parameter>
46377           <parameter name="value" transfer-ownership="none">
46378             <doc xml:whitespace="preserve">The value which gtk_radio_action_get_current_value() should return if this action is selected.</doc>
46379             <type name="int" c:type="gint"/>
46380           </parameter>
46381         </parameters>
46382       </constructor>
46383       <method name="get_group"
46384               c:identifier="gtk_radio_action_get_group"
46385               version="2.4">
46386         <doc xml:whitespace="preserve">Returns the list representing the radio group for this object.
46387 Note that the returned list is only valid until the next change
46388 to the group. 
46389 A common way to set up a group of radio group is the following:
46390 |[
46391 GSList *group = NULL;
46392 GtkRadioAction *action;
46393 while (/&amp;ast; more actions to add &amp;ast;/)
46394 {
46395 action = gtk_radio_action_new (...);
46396 gtk_radio_action_set_group (action, group);
46397 group = gtk_radio_action_get_group (action);
46398 }
46399 ]|</doc>
46400         <return-value transfer-ownership="none">
46401           <doc xml:whitespace="preserve">the list representing the radio group for this object</doc>
46402           <type name="GLib.SList" c:type="GSList*">
46403             <type name="Action"/>
46404           </type>
46405         </return-value>
46406       </method>
46407       <method name="set_group"
46408               c:identifier="gtk_radio_action_set_group"
46409               version="2.4">
46410         <doc xml:whitespace="preserve">Sets the radio group for the radio action object.</doc>
46411         <return-value transfer-ownership="none">
46412           <type name="none" c:type="void"/>
46413         </return-value>
46414         <parameters>
46415           <parameter name="group" transfer-ownership="none">
46416             <doc xml:whitespace="preserve">a list representing a radio group</doc>
46417             <type name="GLib.SList" c:type="GSList*">
46418               <type name="any" c:type="gpointer"/>
46419             </type>
46420           </parameter>
46421         </parameters>
46422       </method>
46423       <method name="get_current_value"
46424               c:identifier="gtk_radio_action_get_current_value"
46425               version="2.4">
46426         <doc xml:whitespace="preserve">Obtains the value property of the currently active member of 
46427 the group to which @action belongs.</doc>
46428         <return-value transfer-ownership="none">
46429           <doc xml:whitespace="preserve">The value of the currently active group member</doc>
46430           <type name="int" c:type="gint"/>
46431         </return-value>
46432       </method>
46433       <method name="set_current_value"
46434               c:identifier="gtk_radio_action_set_current_value"
46435               version="2.10">
46436         <doc xml:whitespace="preserve">Sets the currently active group member to the member with value
46437 property @current_value.</doc>
46438         <return-value transfer-ownership="none">
46439           <type name="none" c:type="void"/>
46440         </return-value>
46441         <parameters>
46442           <parameter name="current_value" transfer-ownership="none">
46443             <doc xml:whitespace="preserve">the new value</doc>
46444             <type name="int" c:type="gint"/>
46445           </parameter>
46446         </parameters>
46447       </method>
46448       <property name="current-value"
46449                 version="2.10"
46450                 writable="1"
46451                 transfer-ownership="none">
46452         <doc xml:whitespace="preserve">The value property of the currently active member of the group to which
46453 this action belongs.</doc>
46454         <type name="int" c:type="gint"/>
46455       </property>
46456       <property name="group"
46457                 version="2.4"
46458                 readable="0"
46459                 writable="1"
46460                 transfer-ownership="none">
46461         <doc xml:whitespace="preserve">Sets a new group for a radio action.</doc>
46462         <type name="RadioAction" c:type="GtkRadioAction"/>
46463       </property>
46464       <property name="value"
46465                 version="2.4"
46466                 writable="1"
46467                 transfer-ownership="none">
46468         <doc xml:whitespace="preserve">The value is an arbitrary integer which can be used as a
46469 convenient way to determine which action in the group is 
46470 currently active in an ::activate or ::changed signal handler.
46471 See gtk_radio_action_get_current_value() and #GtkRadioActionEntry
46472 for convenient ways to get and set this property.</doc>
46473         <type name="int" c:type="gint"/>
46474       </property>
46475       <field name="parent">
46476         <type name="ToggleAction" c:type="GtkToggleAction"/>
46477       </field>
46478       <field name="private_data">
46479         <type name="RadioActionPrivate" c:type="GtkRadioActionPrivate*"/>
46480       </field>
46481       <glib:signal name="changed" version="2.4">
46482         <doc xml:whitespace="preserve">The ::changed signal is emitted on every member of a radio group when the
46483 active member is changed. The signal gets emitted after the ::activate signals
46484 for the previous and current active members.</doc>
46485         <return-value transfer-ownership="full">
46486           <type name="none" c:type="void"/>
46487         </return-value>
46488         <parameters>
46489           <parameter name="current" transfer-ownership="none">
46490             <doc xml:whitespace="preserve">the member of @action&lt;!-- --&gt;s group which has just been activated</doc>
46491             <type name="RadioAction" c:type="GtkRadioAction"/>
46492           </parameter>
46493         </parameters>
46494       </glib:signal>
46495     </class>
46496     <record name="RadioActionClass"
46497             c:type="GtkRadioActionClass"
46498             glib:is-gtype-struct-for="RadioAction">
46499       <field name="parent_class">
46500         <type name="ToggleActionClass" c:type="GtkToggleActionClass"/>
46501       </field>
46502       <field name="changed">
46503         <callback name="changed" c:type="changed">
46504           <return-value transfer-ownership="none">
46505             <type name="none" c:type="void"/>
46506           </return-value>
46507           <parameters>
46508             <parameter name="action" transfer-ownership="none">
46509               <type name="RadioAction" c:type="GtkRadioAction*"/>
46510             </parameter>
46511             <parameter name="current" transfer-ownership="none">
46512               <type name="RadioAction" c:type="GtkRadioAction*"/>
46513             </parameter>
46514           </parameters>
46515         </callback>
46516       </field>
46517       <field name="gtk_reserved1">
46518         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
46519           <return-value transfer-ownership="none">
46520             <type name="none" c:type="void"/>
46521           </return-value>
46522         </callback>
46523       </field>
46524       <field name="gtk_reserved2">
46525         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
46526           <return-value transfer-ownership="none">
46527             <type name="none" c:type="void"/>
46528           </return-value>
46529         </callback>
46530       </field>
46531       <field name="gtk_reserved3">
46532         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
46533           <return-value transfer-ownership="none">
46534             <type name="none" c:type="void"/>
46535           </return-value>
46536         </callback>
46537       </field>
46538       <field name="gtk_reserved4">
46539         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
46540           <return-value transfer-ownership="none">
46541             <type name="none" c:type="void"/>
46542           </return-value>
46543         </callback>
46544       </field>
46545     </record>
46546     <record name="RadioActionEntry" c:type="GtkRadioActionEntry">
46547       <field name="name" writable="1">
46548         <type name="utf8" c:type="gchar*"/>
46549       </field>
46550       <field name="stock_id" writable="1">
46551         <type name="utf8" c:type="gchar*"/>
46552       </field>
46553       <field name="label" writable="1">
46554         <type name="utf8" c:type="gchar*"/>
46555       </field>
46556       <field name="accelerator" writable="1">
46557         <type name="utf8" c:type="gchar*"/>
46558       </field>
46559       <field name="tooltip" writable="1">
46560         <type name="utf8" c:type="gchar*"/>
46561       </field>
46562       <field name="value" writable="1">
46563         <type name="int" c:type="gint"/>
46564       </field>
46565     </record>
46566     <record name="RadioActionPrivate" c:type="GtkRadioActionPrivate">
46567     </record>
46568     <class name="RadioButton"
46569            c:type="GtkRadioButton"
46570            parent="CheckButton"
46571            glib:type-name="GtkRadioButton"
46572            glib:get-type="gtk_radio_button_get_type"
46573            glib:type-struct="RadioButtonClass">
46574       <implements name="Activatable"/>
46575       <implements name="Atk.ImplementorIface"/>
46576       <implements name="Buildable"/>
46577       <constructor name="new" c:identifier="gtk_radio_button_new">
46578         <return-value transfer-ownership="full">
46579           <type name="RadioButton" c:type="GtkWidget*"/>
46580         </return-value>
46581         <parameters>
46582           <parameter name="group" transfer-ownership="none">
46583             <type name="GLib.SList" c:type="GSList*">
46584               <type name="any" c:type="gpointer"/>
46585             </type>
46586           </parameter>
46587         </parameters>
46588       </constructor>
46589       <constructor name="new_from_widget"
46590                    c:identifier="gtk_radio_button_new_from_widget">
46591         <return-value transfer-ownership="full">
46592           <type name="RadioButton" c:type="GtkWidget*"/>
46593         </return-value>
46594         <parameters>
46595           <parameter name="radio_group_member" transfer-ownership="none">
46596             <type name="RadioButton" c:type="GtkRadioButton*"/>
46597           </parameter>
46598         </parameters>
46599       </constructor>
46600       <constructor name="new_with_label"
46601                    c:identifier="gtk_radio_button_new_with_label">
46602         <return-value transfer-ownership="full">
46603           <type name="RadioButton" c:type="GtkWidget*"/>
46604         </return-value>
46605         <parameters>
46606           <parameter name="group" transfer-ownership="none">
46607             <type name="GLib.SList" c:type="GSList*">
46608               <type name="any" c:type="gpointer"/>
46609             </type>
46610           </parameter>
46611           <parameter name="label" transfer-ownership="none">
46612             <type name="utf8" c:type="gchar*"/>
46613           </parameter>
46614         </parameters>
46615       </constructor>
46616       <constructor name="new_with_label_from_widget"
46617                    c:identifier="gtk_radio_button_new_with_label_from_widget">
46618         <return-value transfer-ownership="full">
46619           <type name="RadioButton" c:type="GtkWidget*"/>
46620         </return-value>
46621         <parameters>
46622           <parameter name="radio_group_member" transfer-ownership="none">
46623             <type name="RadioButton" c:type="GtkRadioButton*"/>
46624           </parameter>
46625           <parameter name="label" transfer-ownership="none">
46626             <type name="utf8" c:type="gchar*"/>
46627           </parameter>
46628         </parameters>
46629       </constructor>
46630       <constructor name="new_with_mnemonic"
46631                    c:identifier="gtk_radio_button_new_with_mnemonic">
46632         <doc xml:whitespace="preserve">Creates a new #GtkRadioButton containing a label, adding it to the same 
46633 group as @group. The label will be created using 
46634 gtk_label_new_with_mnemonic(), so underscores in @label indicate the 
46635 mnemonic for the button.</doc>
46636         <return-value transfer-ownership="full">
46637           <doc xml:whitespace="preserve">a new #GtkRadioButton</doc>
46638           <type name="RadioButton" c:type="GtkWidget*"/>
46639         </return-value>
46640         <parameters>
46641           <parameter name="group" transfer-ownership="none">
46642             <doc xml:whitespace="preserve">the radio button group</doc>
46643             <type name="GLib.SList" c:type="GSList*">
46644               <type name="any" c:type="gpointer"/>
46645             </type>
46646           </parameter>
46647           <parameter name="label" transfer-ownership="none">
46648             <doc xml:whitespace="preserve">the text of the button, with an underscore in front of the mnemonic character</doc>
46649             <type name="utf8" c:type="gchar*"/>
46650           </parameter>
46651         </parameters>
46652       </constructor>
46653       <constructor name="new_with_mnemonic_from_widget"
46654                    c:identifier="gtk_radio_button_new_with_mnemonic_from_widget">
46655         <doc xml:whitespace="preserve">Creates a new #GtkRadioButton containing a label. The label
46656 will be created using gtk_label_new_with_mnemonic(), so underscores
46657 in @label indicate the mnemonic for the button.</doc>
46658         <return-value transfer-ownership="full">
46659           <doc xml:whitespace="preserve">a new #GtkRadioButton</doc>
46660           <type name="RadioButton" c:type="GtkWidget*"/>
46661         </return-value>
46662         <parameters>
46663           <parameter name="radio_group_member"
46664                      transfer-ownership="none"
46665                      allow-none="1">
46666             <doc xml:whitespace="preserve">widget to get radio group from or %NULL</doc>
46667             <type name="RadioButton" c:type="GtkRadioButton*"/>
46668           </parameter>
46669           <parameter name="label" transfer-ownership="none">
46670             <doc xml:whitespace="preserve">the text of the button, with an underscore in front of the mnemonic character</doc>
46671             <type name="utf8" c:type="gchar*"/>
46672           </parameter>
46673         </parameters>
46674       </constructor>
46675       <method name="get_group" c:identifier="gtk_radio_button_get_group">
46676         <doc xml:whitespace="preserve">Retrieves the group assigned to a radio button.
46677 containing all the radio buttons in the same group
46678 as @radio_button. The returned list is owned by the radio button
46679 and must not be modified or freed.</doc>
46680         <return-value transfer-ownership="none">
46681           <doc xml:whitespace="preserve">a linked list</doc>
46682           <type name="GLib.SList" c:type="GSList*">
46683             <type name="RadioButton"/>
46684           </type>
46685         </return-value>
46686       </method>
46687       <method name="set_group" c:identifier="gtk_radio_button_set_group">
46688         <return-value transfer-ownership="none">
46689           <type name="none" c:type="void"/>
46690         </return-value>
46691         <parameters>
46692           <parameter name="group" transfer-ownership="none">
46693             <type name="GLib.SList" c:type="GSList*">
46694               <type name="any" c:type="gpointer"/>
46695             </type>
46696           </parameter>
46697         </parameters>
46698       </method>
46699       <property name="group"
46700                 readable="0"
46701                 writable="1"
46702                 transfer-ownership="none">
46703         <type name="RadioButton" c:type="GtkRadioButton"/>
46704       </property>
46705       <field name="check_button">
46706         <type name="CheckButton" c:type="GtkCheckButton"/>
46707       </field>
46708       <field name="group">
46709         <type name="GLib.SList" c:type="GSList*">
46710           <type name="any" c:type="gpointer"/>
46711         </type>
46712       </field>
46713       <glib:signal name="group-changed" version="2.4">
46714         <doc xml:whitespace="preserve">Emitted when the group of radio buttons that a radio button belongs
46715 to changes. This is emitted when a radio button switches from
46716 being alone to being part of a group of 2 or more buttons, or
46717 vice-versa, and when a button is moved from one group of 2 or
46718 more buttons to a different one, but not when the composition
46719 of the group that a button belongs to changes.</doc>
46720         <return-value transfer-ownership="full">
46721           <type name="none" c:type="void"/>
46722         </return-value>
46723       </glib:signal>
46724     </class>
46725     <record name="RadioButtonClass"
46726             c:type="GtkRadioButtonClass"
46727             glib:is-gtype-struct-for="RadioButton">
46728       <field name="parent_class">
46729         <type name="CheckButtonClass" c:type="GtkCheckButtonClass"/>
46730       </field>
46731       <field name="group_changed">
46732         <callback name="group_changed" c:type="group_changed">
46733           <return-value transfer-ownership="none">
46734             <type name="none" c:type="void"/>
46735           </return-value>
46736           <parameters>
46737             <parameter name="radio_button" transfer-ownership="none">
46738               <type name="RadioButton" c:type="GtkRadioButton*"/>
46739             </parameter>
46740           </parameters>
46741         </callback>
46742       </field>
46743       <field name="gtk_reserved2">
46744         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
46745           <return-value transfer-ownership="none">
46746             <type name="none" c:type="void"/>
46747           </return-value>
46748         </callback>
46749       </field>
46750       <field name="gtk_reserved3">
46751         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
46752           <return-value transfer-ownership="none">
46753             <type name="none" c:type="void"/>
46754           </return-value>
46755         </callback>
46756       </field>
46757       <field name="gtk_reserved4">
46758         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
46759           <return-value transfer-ownership="none">
46760             <type name="none" c:type="void"/>
46761           </return-value>
46762         </callback>
46763       </field>
46764     </record>
46765     <class name="RadioMenuItem"
46766            c:type="GtkRadioMenuItem"
46767            parent="CheckMenuItem"
46768            glib:type-name="GtkRadioMenuItem"
46769            glib:get-type="gtk_radio_menu_item_get_type"
46770            glib:type-struct="RadioMenuItemClass">
46771       <implements name="Activatable"/>
46772       <implements name="Atk.ImplementorIface"/>
46773       <implements name="Buildable"/>
46774       <constructor name="new" c:identifier="gtk_radio_menu_item_new">
46775         <return-value transfer-ownership="full">
46776           <type name="RadioMenuItem" c:type="GtkWidget*"/>
46777         </return-value>
46778         <parameters>
46779           <parameter name="group" transfer-ownership="none">
46780             <type name="GLib.SList" c:type="GSList*">
46781               <type name="any" c:type="gpointer"/>
46782             </type>
46783           </parameter>
46784         </parameters>
46785       </constructor>
46786       <constructor name="new_with_label"
46787                    c:identifier="gtk_radio_menu_item_new_with_label">
46788         <doc xml:whitespace="preserve">Creates a new #GtkRadioMenuItem whose child is a simple #GtkLabel.</doc>
46789         <return-value transfer-ownership="none">
46790           <doc xml:whitespace="preserve">A new #GtkRadioMenuItem</doc>
46791           <type name="RadioMenuItem" c:type="GtkWidget*"/>
46792         </return-value>
46793         <parameters>
46794           <parameter name="group" transfer-ownership="full">
46795             <type name="GLib.SList" c:type="GSList*">
46796               <type name="RadioMenuItem"/>
46797             </type>
46798           </parameter>
46799           <parameter name="label" transfer-ownership="none">
46800             <doc xml:whitespace="preserve">the text for the label</doc>
46801             <type name="utf8" c:type="gchar*"/>
46802           </parameter>
46803         </parameters>
46804       </constructor>
46805       <constructor name="new_with_mnemonic"
46806                    c:identifier="gtk_radio_menu_item_new_with_mnemonic">
46807         <doc xml:whitespace="preserve">Creates a new #GtkRadioMenuItem containing a label. The label
46808 will be created using gtk_label_new_with_mnemonic(), so underscores
46809 in @label indicate the mnemonic for the menu item.</doc>
46810         <return-value transfer-ownership="full">
46811           <doc xml:whitespace="preserve">a new #GtkRadioMenuItem</doc>
46812           <type name="RadioMenuItem" c:type="GtkWidget*"/>
46813         </return-value>
46814         <parameters>
46815           <parameter name="group" transfer-ownership="none">
46816             <doc xml:whitespace="preserve">group the radio menu item is inside</doc>
46817             <type name="GLib.SList" c:type="GSList*">
46818               <type name="any" c:type="gpointer"/>
46819             </type>
46820           </parameter>
46821           <parameter name="label" transfer-ownership="none">
46822             <doc xml:whitespace="preserve">the text of the button, with an underscore in front of the mnemonic character</doc>
46823             <type name="utf8" c:type="gchar*"/>
46824           </parameter>
46825         </parameters>
46826       </constructor>
46827       <constructor name="new_from_widget"
46828                    c:identifier="gtk_radio_menu_item_new_from_widget"
46829                    version="2.4">
46830         <doc xml:whitespace="preserve">Creates a new #GtkRadioMenuItem adding it to the same group as @group.</doc>
46831         <return-value transfer-ownership="full">
46832           <doc xml:whitespace="preserve">The new #GtkRadioMenuItem</doc>
46833           <type name="RadioMenuItem" c:type="GtkWidget*"/>
46834         </return-value>
46835         <parameters>
46836           <parameter name="group" transfer-ownership="none">
46837             <doc xml:whitespace="preserve">An existing #GtkRadioMenuItem</doc>
46838             <type name="RadioMenuItem" c:type="GtkRadioMenuItem*"/>
46839           </parameter>
46840         </parameters>
46841       </constructor>
46842       <constructor name="new_with_mnemonic_from_widget"
46843                    c:identifier="gtk_radio_menu_item_new_with_mnemonic_from_widget"
46844                    version="2.4">
46845         <doc xml:whitespace="preserve">Creates a new GtkRadioMenuItem containing a label. The label will be
46846 created using gtk_label_new_with_mnemonic(), so underscores in label
46847 indicate the mnemonic for the menu item.
46848 The new #GtkRadioMenuItem is added to the same group as @group.</doc>
46849         <return-value transfer-ownership="full">
46850           <doc xml:whitespace="preserve">The new #GtkRadioMenuItem</doc>
46851           <type name="RadioMenuItem" c:type="GtkWidget*"/>
46852         </return-value>
46853         <parameters>
46854           <parameter name="group" transfer-ownership="none">
46855             <doc xml:whitespace="preserve">An existing #GtkRadioMenuItem</doc>
46856             <type name="RadioMenuItem" c:type="GtkRadioMenuItem*"/>
46857           </parameter>
46858           <parameter name="label" transfer-ownership="none">
46859             <doc xml:whitespace="preserve">the text of the button, with an underscore in front of the mnemonic character</doc>
46860             <type name="utf8" c:type="gchar*"/>
46861           </parameter>
46862         </parameters>
46863       </constructor>
46864       <constructor name="new_with_label_from_widget"
46865                    c:identifier="gtk_radio_menu_item_new_with_label_from_widget"
46866                    version="2.4">
46867         <doc xml:whitespace="preserve">Creates a new GtkRadioMenuItem whose child is a simple GtkLabel.
46868 The new #GtkRadioMenuItem is added to the same group as @group.</doc>
46869         <return-value transfer-ownership="full">
46870           <doc xml:whitespace="preserve">The new #GtkRadioMenuItem</doc>
46871           <type name="RadioMenuItem" c:type="GtkWidget*"/>
46872         </return-value>
46873         <parameters>
46874           <parameter name="group" transfer-ownership="none">
46875             <doc xml:whitespace="preserve">an existing #GtkRadioMenuItem</doc>
46876             <type name="RadioMenuItem" c:type="GtkRadioMenuItem*"/>
46877           </parameter>
46878           <parameter name="label" transfer-ownership="none">
46879             <doc xml:whitespace="preserve">the text for the label</doc>
46880             <type name="utf8" c:type="gchar*"/>
46881           </parameter>
46882         </parameters>
46883       </constructor>
46884       <method name="get_group" c:identifier="gtk_radio_menu_item_get_group">
46885         <return-value transfer-ownership="full">
46886           <type name="GLib.SList" c:type="GSList*">
46887             <type name="any" c:type="gpointer"/>
46888           </type>
46889         </return-value>
46890       </method>
46891       <method name="set_group" c:identifier="gtk_radio_menu_item_set_group">
46892         <return-value transfer-ownership="none">
46893           <type name="none" c:type="void"/>
46894         </return-value>
46895         <parameters>
46896           <parameter name="group" transfer-ownership="none">
46897             <type name="GLib.SList" c:type="GSList*">
46898               <type name="any" c:type="gpointer"/>
46899             </type>
46900           </parameter>
46901         </parameters>
46902       </method>
46903       <property name="group"
46904                 version="2.8"
46905                 readable="0"
46906                 writable="1"
46907                 transfer-ownership="none">
46908         <doc xml:whitespace="preserve">The radio menu item whose group this widget belongs to.</doc>
46909         <type name="RadioMenuItem" c:type="GtkRadioMenuItem"/>
46910       </property>
46911       <field name="check_menu_item">
46912         <type name="CheckMenuItem" c:type="GtkCheckMenuItem"/>
46913       </field>
46914       <field name="group">
46915         <type name="GLib.SList" c:type="GSList*">
46916           <type name="any" c:type="gpointer"/>
46917         </type>
46918       </field>
46919       <glib:signal name="group-changed">
46920         <return-value transfer-ownership="full">
46921           <type name="none" c:type="void"/>
46922         </return-value>
46923       </glib:signal>
46924     </class>
46925     <record name="RadioMenuItemClass"
46926             c:type="GtkRadioMenuItemClass"
46927             glib:is-gtype-struct-for="RadioMenuItem">
46928       <field name="parent_class">
46929         <type name="CheckMenuItemClass" c:type="GtkCheckMenuItemClass"/>
46930       </field>
46931       <field name="group_changed">
46932         <callback name="group_changed" c:type="group_changed">
46933           <return-value transfer-ownership="none">
46934             <type name="none" c:type="void"/>
46935           </return-value>
46936           <parameters>
46937             <parameter name="radio_menu_item" transfer-ownership="none">
46938               <type name="RadioMenuItem" c:type="GtkRadioMenuItem*"/>
46939             </parameter>
46940           </parameters>
46941         </callback>
46942       </field>
46943       <field name="gtk_reserved2">
46944         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
46945           <return-value transfer-ownership="none">
46946             <type name="none" c:type="void"/>
46947           </return-value>
46948         </callback>
46949       </field>
46950       <field name="gtk_reserved3">
46951         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
46952           <return-value transfer-ownership="none">
46953             <type name="none" c:type="void"/>
46954           </return-value>
46955         </callback>
46956       </field>
46957       <field name="gtk_reserved4">
46958         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
46959           <return-value transfer-ownership="none">
46960             <type name="none" c:type="void"/>
46961           </return-value>
46962         </callback>
46963       </field>
46964     </record>
46965     <class name="RadioToolButton"
46966            c:type="GtkRadioToolButton"
46967            parent="ToggleToolButton"
46968            glib:type-name="GtkRadioToolButton"
46969            glib:get-type="gtk_radio_tool_button_get_type"
46970            glib:type-struct="RadioToolButtonClass">
46971       <implements name="Activatable"/>
46972       <implements name="Atk.ImplementorIface"/>
46973       <implements name="Buildable"/>
46974       <constructor name="new"
46975                    c:identifier="gtk_radio_tool_button_new"
46976                    version="2.4">
46977         <doc xml:whitespace="preserve">Creates a new #GtkRadioToolButton, adding it to @group.</doc>
46978         <return-value transfer-ownership="full">
46979           <doc xml:whitespace="preserve">The new #GtkRadioToolButton</doc>
46980           <type name="RadioToolButton" c:type="GtkToolItem*"/>
46981         </return-value>
46982         <parameters>
46983           <parameter name="group" transfer-ownership="none" allow-none="1">
46984             <doc xml:whitespace="preserve">An existing radio button group, or %NULL if you are creating a new group</doc>
46985             <type name="GLib.SList" c:type="GSList*">
46986               <type name="any" c:type="gpointer"/>
46987             </type>
46988           </parameter>
46989         </parameters>
46990       </constructor>
46991       <constructor name="new_from_stock"
46992                    c:identifier="gtk_radio_tool_button_new_from_stock"
46993                    version="2.4">
46994         <doc xml:whitespace="preserve">Creates a new #GtkRadioToolButton, adding it to @group. 
46995 The new #GtkRadioToolButton will contain an icon and label from the
46996 stock item indicated by @stock_id.</doc>
46997         <return-value transfer-ownership="full">
46998           <doc xml:whitespace="preserve">The new #GtkRadioToolItem</doc>
46999           <type name="RadioToolButton" c:type="GtkToolItem*"/>
47000         </return-value>
47001         <parameters>
47002           <parameter name="group" transfer-ownership="none" allow-none="1">
47003             <doc xml:whitespace="preserve">an existing radio button group, or %NULL if you are creating a new group</doc>
47004             <type name="GLib.SList" c:type="GSList*">
47005               <type name="any" c:type="gpointer"/>
47006             </type>
47007           </parameter>
47008           <parameter name="stock_id" transfer-ownership="none">
47009             <doc xml:whitespace="preserve">the name of a stock item</doc>
47010             <type name="utf8" c:type="gchar*"/>
47011           </parameter>
47012         </parameters>
47013       </constructor>
47014       <constructor name="new_from_widget"
47015                    c:identifier="gtk_radio_tool_button_new_from_widget"
47016                    version="2.4">
47017         <doc xml:whitespace="preserve">Creates a new #GtkRadioToolButton adding it to the same group as @gruup</doc>
47018         <return-value transfer-ownership="full">
47019           <doc xml:whitespace="preserve">The new #GtkRadioToolButton</doc>
47020           <type name="RadioToolButton" c:type="GtkToolItem*"/>
47021         </return-value>
47022         <parameters>
47023           <parameter name="group" transfer-ownership="none">
47024             <doc xml:whitespace="preserve">An existing #GtkRadioToolButton</doc>
47025             <type name="RadioToolButton" c:type="GtkRadioToolButton*"/>
47026           </parameter>
47027         </parameters>
47028       </constructor>
47029       <constructor name="new_with_stock_from_widget"
47030                    c:identifier="gtk_radio_tool_button_new_with_stock_from_widget"
47031                    version="2.4">
47032         <doc xml:whitespace="preserve">Creates a new #GtkRadioToolButton adding it to the same group as @group.
47033 The new #GtkRadioToolButton will contain an icon and label from the
47034 stock item indicated by @stock_id.</doc>
47035         <return-value transfer-ownership="full">
47036           <doc xml:whitespace="preserve">A new #GtkRadioToolButton</doc>
47037           <type name="RadioToolButton" c:type="GtkToolItem*"/>
47038         </return-value>
47039         <parameters>
47040           <parameter name="group" transfer-ownership="none">
47041             <doc xml:whitespace="preserve">An existing #GtkRadioToolButton.</doc>
47042             <type name="RadioToolButton" c:type="GtkRadioToolButton*"/>
47043           </parameter>
47044           <parameter name="stock_id" transfer-ownership="none">
47045             <doc xml:whitespace="preserve">the name of a stock item</doc>
47046             <type name="utf8" c:type="gchar*"/>
47047           </parameter>
47048         </parameters>
47049       </constructor>
47050       <method name="get_group"
47051               c:identifier="gtk_radio_tool_button_get_group"
47052               version="2.4">
47053         <doc xml:whitespace="preserve">Returns the radio button group @button belongs to.</doc>
47054         <return-value transfer-ownership="full">
47055           <doc xml:whitespace="preserve">The group @button belongs to.</doc>
47056           <type name="GLib.SList" c:type="GSList*">
47057             <type name="any" c:type="gpointer"/>
47058           </type>
47059         </return-value>
47060       </method>
47061       <method name="set_group"
47062               c:identifier="gtk_radio_tool_button_set_group"
47063               version="2.4">
47064         <doc xml:whitespace="preserve">Adds @button to @group, removing it from the group it belonged to before.</doc>
47065         <return-value transfer-ownership="none">
47066           <type name="none" c:type="void"/>
47067         </return-value>
47068         <parameters>
47069           <parameter name="group" transfer-ownership="none">
47070             <doc xml:whitespace="preserve">an existing radio button group</doc>
47071             <type name="GLib.SList" c:type="GSList*">
47072               <type name="any" c:type="gpointer"/>
47073             </type>
47074           </parameter>
47075         </parameters>
47076       </method>
47077       <property name="group"
47078                 version="2.4"
47079                 readable="0"
47080                 writable="1"
47081                 transfer-ownership="none">
47082         <doc xml:whitespace="preserve">Sets a new group for a radio tool button.</doc>
47083         <type name="RadioToolButton" c:type="GtkRadioToolButton"/>
47084       </property>
47085       <field name="parent">
47086         <type name="ToggleToolButton" c:type="GtkToggleToolButton"/>
47087       </field>
47088     </class>
47089     <record name="RadioToolButtonClass"
47090             c:type="GtkRadioToolButtonClass"
47091             glib:is-gtype-struct-for="RadioToolButton">
47092       <field name="parent_class">
47093         <type name="ToggleToolButtonClass" c:type="GtkToggleToolButtonClass"/>
47094       </field>
47095       <field name="gtk_reserved1">
47096         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
47097           <return-value transfer-ownership="none">
47098             <type name="none" c:type="void"/>
47099           </return-value>
47100         </callback>
47101       </field>
47102       <field name="gtk_reserved2">
47103         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
47104           <return-value transfer-ownership="none">
47105             <type name="none" c:type="void"/>
47106           </return-value>
47107         </callback>
47108       </field>
47109       <field name="gtk_reserved3">
47110         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
47111           <return-value transfer-ownership="none">
47112             <type name="none" c:type="void"/>
47113           </return-value>
47114         </callback>
47115       </field>
47116       <field name="gtk_reserved4">
47117         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
47118           <return-value transfer-ownership="none">
47119             <type name="none" c:type="void"/>
47120           </return-value>
47121         </callback>
47122       </field>
47123     </record>
47124     <class name="Range"
47125            c:type="GtkRange"
47126            parent="Widget"
47127            abstract="1"
47128            glib:type-name="GtkRange"
47129            glib:get-type="gtk_range_get_type"
47130            glib:type-struct="RangeClass">
47131       <implements name="Atk.ImplementorIface"/>
47132       <implements name="Buildable"/>
47133       <implements name="Orientable"/>
47134       <virtual-method name="get_range_border">
47135         <return-value transfer-ownership="none">
47136           <type name="none" c:type="void"/>
47137         </return-value>
47138         <parameters>
47139           <parameter name="border_" transfer-ownership="none">
47140             <type name="Border" c:type="GtkBorder*"/>
47141           </parameter>
47142         </parameters>
47143       </virtual-method>
47144       <method name="set_update_policy"
47145               c:identifier="gtk_range_set_update_policy">
47146         <doc xml:whitespace="preserve">Sets the update policy for the range. #GTK_UPDATE_CONTINUOUS means that
47147 anytime the range slider is moved, the range value will change and the
47148 value_changed signal will be emitted. #GTK_UPDATE_DELAYED means that
47149 the value will be updated after a brief timeout where no slider motion
47150 occurs, so updates are spaced by a short time rather than
47151 continuous. #GTK_UPDATE_DISCONTINUOUS means that the value will only
47152 be updated when the user releases the button and ends the slider
47153 drag operation.</doc>
47154         <return-value transfer-ownership="none">
47155           <type name="none" c:type="void"/>
47156         </return-value>
47157         <parameters>
47158           <parameter name="policy" transfer-ownership="none">
47159             <doc xml:whitespace="preserve">update policy</doc>
47160             <type name="UpdateType" c:type="GtkUpdateType"/>
47161           </parameter>
47162         </parameters>
47163       </method>
47164       <method name="get_update_policy"
47165               c:identifier="gtk_range_get_update_policy">
47166         <doc xml:whitespace="preserve">Gets the update policy of @range. See gtk_range_set_update_policy().</doc>
47167         <return-value transfer-ownership="full">
47168           <doc xml:whitespace="preserve">the current update policy</doc>
47169           <type name="UpdateType" c:type="GtkUpdateType"/>
47170         </return-value>
47171       </method>
47172       <method name="set_adjustment" c:identifier="gtk_range_set_adjustment">
47173         <doc xml:whitespace="preserve">Sets the adjustment to be used as the "model" object for this range
47174 widget. The adjustment indicates the current range value, the
47175 minimum and maximum range values, the step/page increments used
47176 for keybindings and scrolling, and the page size. The page size
47177 is normally 0 for #GtkScale and nonzero for #GtkScrollbar, and
47178 indicates the size of the visible area of the widget being scrolled.
47179 The page size affects the size of the scrollbar slider.</doc>
47180         <return-value transfer-ownership="none">
47181           <type name="none" c:type="void"/>
47182         </return-value>
47183         <parameters>
47184           <parameter name="adjustment" transfer-ownership="none">
47185             <doc xml:whitespace="preserve">a #GtkAdjustment</doc>
47186             <type name="Adjustment" c:type="GtkAdjustment*"/>
47187           </parameter>
47188         </parameters>
47189       </method>
47190       <method name="get_adjustment" c:identifier="gtk_range_get_adjustment">
47191         <doc xml:whitespace="preserve">Get the #GtkAdjustment which is the "model" object for #GtkRange.
47192 See gtk_range_set_adjustment() for details.
47193 The return value does not have a reference added, so should not
47194 be unreferenced.</doc>
47195         <return-value transfer-ownership="full">
47196           <doc xml:whitespace="preserve">a #GtkAdjustment</doc>
47197           <type name="Adjustment" c:type="GtkAdjustment*"/>
47198         </return-value>
47199       </method>
47200       <method name="set_inverted" c:identifier="gtk_range_set_inverted">
47201         <doc xml:whitespace="preserve">Ranges normally move from lower to higher values as the
47202 slider moves from top to bottom or left to right. Inverted
47203 ranges have higher values at the top or on the right rather than
47204 on the bottom or left.</doc>
47205         <return-value transfer-ownership="none">
47206           <type name="none" c:type="void"/>
47207         </return-value>
47208         <parameters>
47209           <parameter name="setting" transfer-ownership="none">
47210             <doc xml:whitespace="preserve">%TRUE to invert the range</doc>
47211             <type name="boolean" c:type="gboolean"/>
47212           </parameter>
47213         </parameters>
47214       </method>
47215       <method name="get_inverted" c:identifier="gtk_range_get_inverted">
47216         <doc xml:whitespace="preserve">Gets the value set by gtk_range_set_inverted().</doc>
47217         <return-value transfer-ownership="none">
47218           <doc xml:whitespace="preserve">%TRUE if the range is inverted</doc>
47219           <type name="boolean" c:type="gboolean"/>
47220         </return-value>
47221       </method>
47222       <method name="set_flippable"
47223               c:identifier="gtk_range_set_flippable"
47224               version="2.18">
47225         <doc xml:whitespace="preserve">If a range is flippable, it will switch its direction if it is
47226 horizontal and its direction is %GTK_TEXT_DIR_RTL.
47227 See gtk_widget_get_direction().</doc>
47228         <return-value transfer-ownership="none">
47229           <type name="none" c:type="void"/>
47230         </return-value>
47231         <parameters>
47232           <parameter name="flippable" transfer-ownership="none">
47233             <doc xml:whitespace="preserve">%TRUE to make the range flippable</doc>
47234             <type name="boolean" c:type="gboolean"/>
47235           </parameter>
47236         </parameters>
47237       </method>
47238       <method name="get_flippable"
47239               c:identifier="gtk_range_get_flippable"
47240               version="2.18">
47241         <doc xml:whitespace="preserve">Gets the value set by gtk_range_set_flippable().</doc>
47242         <return-value transfer-ownership="none">
47243           <doc xml:whitespace="preserve">%TRUE if the range is flippable</doc>
47244           <type name="boolean" c:type="gboolean"/>
47245         </return-value>
47246       </method>
47247       <method name="set_slider_size_fixed"
47248               c:identifier="gtk_range_set_slider_size_fixed"
47249               version="2.20">
47250         <doc xml:whitespace="preserve">Sets whether the range's slider has a fixed size, or a size that
47251 depends on it's adjustment's page size.
47252 This function is useful mainly for #GtkRange subclasses.</doc>
47253         <return-value transfer-ownership="none">
47254           <type name="none" c:type="void"/>
47255         </return-value>
47256         <parameters>
47257           <parameter name="size_fixed" transfer-ownership="none">
47258             <doc xml:whitespace="preserve">%TRUE to make the slider size constant</doc>
47259             <type name="boolean" c:type="gboolean"/>
47260           </parameter>
47261         </parameters>
47262       </method>
47263       <method name="get_slider_size_fixed"
47264               c:identifier="gtk_range_get_slider_size_fixed"
47265               version="2.20">
47266         <doc xml:whitespace="preserve">This function is useful mainly for #GtkRange subclasses.
47267 See gtk_range_set_slider_size_fixed().</doc>
47268         <return-value transfer-ownership="none">
47269           <doc xml:whitespace="preserve">whether the range's slider has a fixed size.</doc>
47270           <type name="boolean" c:type="gboolean"/>
47271         </return-value>
47272       </method>
47273       <method name="set_min_slider_size"
47274               c:identifier="gtk_range_set_min_slider_size"
47275               version="2.20">
47276         <doc xml:whitespace="preserve">Sets the minimum size of the range's slider.
47277 This function is useful mainly for #GtkRange subclasses.</doc>
47278         <return-value transfer-ownership="none">
47279           <type name="none" c:type="void"/>
47280         </return-value>
47281         <parameters>
47282           <parameter name="min_size" transfer-ownership="none">
47283             <doc xml:whitespace="preserve">The slider's minimum size</doc>
47284             <type name="boolean" c:type="gboolean"/>
47285           </parameter>
47286         </parameters>
47287       </method>
47288       <method name="get_min_slider_size"
47289               c:identifier="gtk_range_get_min_slider_size"
47290               version="2.20">
47291         <doc xml:whitespace="preserve">This function is useful mainly for #GtkRange subclasses.
47292 See gtk_range_set_min_slider_size().</doc>
47293         <return-value transfer-ownership="none">
47294           <doc xml:whitespace="preserve">The minimum size of the range's slider.</doc>
47295           <type name="int" c:type="gint"/>
47296         </return-value>
47297       </method>
47298       <method name="get_range_rect"
47299               c:identifier="gtk_range_get_range_rect"
47300               version="2.20">
47301         <doc xml:whitespace="preserve">This function returns the area that contains the range's trough
47302 and its steppers, in widget-&gt;window coordinates.
47303 This function is useful mainly for #GtkRange subclasses.</doc>
47304         <return-value transfer-ownership="none">
47305           <type name="none" c:type="void"/>
47306         </return-value>
47307         <parameters>
47308           <parameter name="range_rect" transfer-ownership="none">
47309             <doc xml:whitespace="preserve">return location for the range rectangle</doc>
47310             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
47311           </parameter>
47312         </parameters>
47313       </method>
47314       <method name="get_slider_range"
47315               c:identifier="gtk_range_get_slider_range"
47316               version="2.20">
47317         <doc xml:whitespace="preserve">This function returns sliders range along the long dimension,
47318 in widget-&gt;window coordinates.
47319 This function is useful mainly for #GtkRange subclasses.</doc>
47320         <return-value transfer-ownership="none">
47321           <type name="none" c:type="void"/>
47322         </return-value>
47323         <parameters>
47324           <parameter name="slider_start"
47325                      direction="out"
47326                      caller-allocates="0"
47327                      transfer-ownership="full"
47328                      allow-none="1">
47329             <doc xml:whitespace="preserve">return location for the slider's start, or %NULL</doc>
47330             <type name="int" c:type="gint*"/>
47331           </parameter>
47332           <parameter name="slider_end"
47333                      direction="out"
47334                      caller-allocates="0"
47335                      transfer-ownership="full"
47336                      allow-none="1">
47337             <doc xml:whitespace="preserve">return location for the slider's end, or %NULL</doc>
47338             <type name="int" c:type="gint*"/>
47339           </parameter>
47340         </parameters>
47341       </method>
47342       <method name="set_lower_stepper_sensitivity"
47343               c:identifier="gtk_range_set_lower_stepper_sensitivity"
47344               version="2.10">
47345         <doc xml:whitespace="preserve">Sets the sensitivity policy for the stepper that points to the
47346 'lower' end of the GtkRange's adjustment.</doc>
47347         <return-value transfer-ownership="none">
47348           <type name="none" c:type="void"/>
47349         </return-value>
47350         <parameters>
47351           <parameter name="sensitivity" transfer-ownership="none">
47352             <doc xml:whitespace="preserve">the lower stepper's sensitivity policy.</doc>
47353             <type name="SensitivityType" c:type="GtkSensitivityType"/>
47354           </parameter>
47355         </parameters>
47356       </method>
47357       <method name="get_lower_stepper_sensitivity"
47358               c:identifier="gtk_range_get_lower_stepper_sensitivity"
47359               version="2.10">
47360         <doc xml:whitespace="preserve">Gets the sensitivity policy for the stepper that points to the
47361 'lower' end of the GtkRange's adjustment.</doc>
47362         <return-value transfer-ownership="full">
47363           <doc xml:whitespace="preserve">The lower stepper's sensitivity policy.</doc>
47364           <type name="SensitivityType" c:type="GtkSensitivityType"/>
47365         </return-value>
47366       </method>
47367       <method name="set_upper_stepper_sensitivity"
47368               c:identifier="gtk_range_set_upper_stepper_sensitivity"
47369               version="2.10">
47370         <doc xml:whitespace="preserve">Sets the sensitivity policy for the stepper that points to the
47371 'upper' end of the GtkRange's adjustment.</doc>
47372         <return-value transfer-ownership="none">
47373           <type name="none" c:type="void"/>
47374         </return-value>
47375         <parameters>
47376           <parameter name="sensitivity" transfer-ownership="none">
47377             <doc xml:whitespace="preserve">the upper stepper's sensitivity policy.</doc>
47378             <type name="SensitivityType" c:type="GtkSensitivityType"/>
47379           </parameter>
47380         </parameters>
47381       </method>
47382       <method name="get_upper_stepper_sensitivity"
47383               c:identifier="gtk_range_get_upper_stepper_sensitivity"
47384               version="2.10">
47385         <doc xml:whitespace="preserve">Gets the sensitivity policy for the stepper that points to the
47386 'upper' end of the GtkRange's adjustment.</doc>
47387         <return-value transfer-ownership="full">
47388           <doc xml:whitespace="preserve">The upper stepper's sensitivity policy.</doc>
47389           <type name="SensitivityType" c:type="GtkSensitivityType"/>
47390         </return-value>
47391       </method>
47392       <method name="set_increments" c:identifier="gtk_range_set_increments">
47393         <doc xml:whitespace="preserve">Sets the step and page sizes for the range.
47394 The step size is used when the user clicks the #GtkScrollbar
47395 arrows or moves #GtkScale via arrow keys. The page size
47396 is used for example when moving via Page Up or Page Down keys.</doc>
47397         <return-value transfer-ownership="none">
47398           <type name="none" c:type="void"/>
47399         </return-value>
47400         <parameters>
47401           <parameter name="step" transfer-ownership="none">
47402             <doc xml:whitespace="preserve">step size</doc>
47403             <type name="double" c:type="gdouble"/>
47404           </parameter>
47405           <parameter name="page" transfer-ownership="none">
47406             <doc xml:whitespace="preserve">page size</doc>
47407             <type name="double" c:type="gdouble"/>
47408           </parameter>
47409         </parameters>
47410       </method>
47411       <method name="set_range" c:identifier="gtk_range_set_range">
47412         <doc xml:whitespace="preserve">Sets the allowable values in the #GtkRange, and clamps the range
47413 value to be between @min and @max. (If the range has a non-zero
47414 page size, it is clamped between @min and @max - page-size.)</doc>
47415         <return-value transfer-ownership="none">
47416           <type name="none" c:type="void"/>
47417         </return-value>
47418         <parameters>
47419           <parameter name="min" transfer-ownership="none">
47420             <doc xml:whitespace="preserve">minimum range value</doc>
47421             <type name="double" c:type="gdouble"/>
47422           </parameter>
47423           <parameter name="max" transfer-ownership="none">
47424             <doc xml:whitespace="preserve">maximum range value</doc>
47425             <type name="double" c:type="gdouble"/>
47426           </parameter>
47427         </parameters>
47428       </method>
47429       <method name="set_value" c:identifier="gtk_range_set_value">
47430         <doc xml:whitespace="preserve">Sets the current value of the range; if the value is outside the
47431 minimum or maximum range values, it will be clamped to fit inside
47432 them. The range emits the #GtkRange::value-changed signal if the 
47433 value changes.</doc>
47434         <return-value transfer-ownership="none">
47435           <type name="none" c:type="void"/>
47436         </return-value>
47437         <parameters>
47438           <parameter name="value" transfer-ownership="none">
47439             <doc xml:whitespace="preserve">new value of the range</doc>
47440             <type name="double" c:type="gdouble"/>
47441           </parameter>
47442         </parameters>
47443       </method>
47444       <method name="get_value" c:identifier="gtk_range_get_value">
47445         <doc xml:whitespace="preserve">Gets the current value of the range.</doc>
47446         <return-value transfer-ownership="none">
47447           <doc xml:whitespace="preserve">current value of the range.</doc>
47448           <type name="double" c:type="gdouble"/>
47449         </return-value>
47450       </method>
47451       <method name="set_show_fill_level"
47452               c:identifier="gtk_range_set_show_fill_level"
47453               version="2.12">
47454         <doc xml:whitespace="preserve">Sets whether a graphical fill level is show on the trough. See
47455 gtk_range_set_fill_level() for a general description of the fill
47456 level concept.</doc>
47457         <return-value transfer-ownership="none">
47458           <type name="none" c:type="void"/>
47459         </return-value>
47460         <parameters>
47461           <parameter name="show_fill_level" transfer-ownership="none">
47462             <doc xml:whitespace="preserve">Whether a fill level indicator graphics is shown.</doc>
47463             <type name="boolean" c:type="gboolean"/>
47464           </parameter>
47465         </parameters>
47466       </method>
47467       <method name="get_show_fill_level"
47468               c:identifier="gtk_range_get_show_fill_level"
47469               version="2.12">
47470         <doc xml:whitespace="preserve">Gets whether the range displays the fill level graphically.</doc>
47471         <return-value transfer-ownership="none">
47472           <doc xml:whitespace="preserve">%TRUE if @range shows the fill level.</doc>
47473           <type name="boolean" c:type="gboolean"/>
47474         </return-value>
47475       </method>
47476       <method name="set_restrict_to_fill_level"
47477               c:identifier="gtk_range_set_restrict_to_fill_level"
47478               version="2.12">
47479         <doc xml:whitespace="preserve">Sets whether the slider is restricted to the fill level. See
47480 gtk_range_set_fill_level() for a general description of the fill
47481 level concept.</doc>
47482         <return-value transfer-ownership="none">
47483           <type name="none" c:type="void"/>
47484         </return-value>
47485         <parameters>
47486           <parameter name="restrict_to_fill_level" transfer-ownership="none">
47487             <doc xml:whitespace="preserve">Whether the fill level restricts slider movement.</doc>
47488             <type name="boolean" c:type="gboolean"/>
47489           </parameter>
47490         </parameters>
47491       </method>
47492       <method name="get_restrict_to_fill_level"
47493               c:identifier="gtk_range_get_restrict_to_fill_level"
47494               version="2.12">
47495         <doc xml:whitespace="preserve">Gets whether the range is restricted to the fill level.</doc>
47496         <return-value transfer-ownership="none">
47497           <doc xml:whitespace="preserve">%TRUE if @range is restricted to the fill level.</doc>
47498           <type name="boolean" c:type="gboolean"/>
47499         </return-value>
47500       </method>
47501       <method name="set_fill_level"
47502               c:identifier="gtk_range_set_fill_level"
47503               version="2.12">
47504         <doc xml:whitespace="preserve">Set the new position of the fill level indicator.
47505 The "fill level" is probably best described by its most prominent
47506 use case, which is an indicator for the amount of pre-buffering in
47507 a streaming media player. In that use case, the value of the range
47508 would indicate the current play position, and the fill level would
47509 be the position up to which the file/stream has been downloaded.
47510 This amount of prebuffering can be displayed on the range's trough
47511 and is themeable separately from the trough. To enable fill level
47512 display, use gtk_range_set_show_fill_level(). The range defaults
47513 to not showing the fill level.
47514 Additionally, it's possible to restrict the range's slider position
47515 to values which are smaller than the fill level. This is controller
47516 by gtk_range_set_restrict_to_fill_level() and is by default
47517 enabled.</doc>
47518         <return-value transfer-ownership="none">
47519           <type name="none" c:type="void"/>
47520         </return-value>
47521         <parameters>
47522           <parameter name="fill_level" transfer-ownership="none">
47523             <doc xml:whitespace="preserve">the new position of the fill level indicator</doc>
47524             <type name="double" c:type="gdouble"/>
47525           </parameter>
47526         </parameters>
47527       </method>
47528       <method name="get_fill_level"
47529               c:identifier="gtk_range_get_fill_level"
47530               version="2.12">
47531         <doc xml:whitespace="preserve">Gets the current position of the fill level indicator.</doc>
47532         <return-value transfer-ownership="none">
47533           <doc xml:whitespace="preserve">The current fill level</doc>
47534           <type name="double" c:type="gdouble"/>
47535         </return-value>
47536       </method>
47537       <property name="adjustment"
47538                 writable="1"
47539                 construct="1"
47540                 transfer-ownership="none">
47541         <type name="Adjustment" c:type="GtkAdjustment"/>
47542       </property>
47543       <property name="fill-level"
47544                 version="2.12"
47545                 writable="1"
47546                 transfer-ownership="none">
47547         <doc xml:whitespace="preserve">The fill level (e.g. prebuffering of a network stream).
47548 See gtk_range_set_fill_level().</doc>
47549         <type name="double" c:type="gdouble"/>
47550       </property>
47551       <property name="inverted" writable="1" transfer-ownership="none">
47552         <type name="boolean" c:type="gboolean"/>
47553       </property>
47554       <property name="lower-stepper-sensitivity"
47555                 writable="1"
47556                 transfer-ownership="none">
47557         <type name="SensitivityType" c:type="GtkSensitivityType"/>
47558       </property>
47559       <property name="restrict-to-fill-level"
47560                 version="2.12"
47561                 writable="1"
47562                 transfer-ownership="none">
47563         <doc xml:whitespace="preserve">The restrict-to-fill-level property controls whether slider
47564 movement is restricted to an upper boundary set by the
47565 fill level. See gtk_range_set_restrict_to_fill_level().</doc>
47566         <type name="boolean" c:type="gboolean"/>
47567       </property>
47568       <property name="show-fill-level"
47569                 version="2.12"
47570                 writable="1"
47571                 transfer-ownership="none">
47572         <doc xml:whitespace="preserve">The show-fill-level property controls whether fill level indicator
47573 graphics are displayed on the trough. See
47574 gtk_range_set_show_fill_level().</doc>
47575         <type name="boolean" c:type="gboolean"/>
47576       </property>
47577       <property name="update-policy" writable="1" transfer-ownership="none">
47578         <type name="UpdateType" c:type="GtkUpdateType"/>
47579       </property>
47580       <property name="upper-stepper-sensitivity"
47581                 writable="1"
47582                 transfer-ownership="none">
47583         <type name="SensitivityType" c:type="GtkSensitivityType"/>
47584       </property>
47585       <field name="widget">
47586         <type name="Widget" c:type="GtkWidget"/>
47587       </field>
47588       <field name="adjustment">
47589         <type name="Adjustment" c:type="GtkAdjustment*"/>
47590       </field>
47591       <field name="update_policy">
47592         <type name="UpdateType" c:type="GtkUpdateType"/>
47593       </field>
47594       <field name="inverted" bits="1">
47595         <type name="uint" c:type="guint"/>
47596       </field>
47597       <field name="flippable" bits="1">
47598         <type name="uint" c:type="guint"/>
47599       </field>
47600       <field name="has_stepper_a" bits="1">
47601         <type name="uint" c:type="guint"/>
47602       </field>
47603       <field name="has_stepper_b" bits="1">
47604         <type name="uint" c:type="guint"/>
47605       </field>
47606       <field name="has_stepper_c" bits="1">
47607         <type name="uint" c:type="guint"/>
47608       </field>
47609       <field name="has_stepper_d" bits="1">
47610         <type name="uint" c:type="guint"/>
47611       </field>
47612       <field name="need_recalc" bits="1">
47613         <type name="uint" c:type="guint"/>
47614       </field>
47615       <field name="slider_size_fixed" bits="1">
47616         <type name="uint" c:type="guint"/>
47617       </field>
47618       <field name="min_slider_size">
47619         <type name="int" c:type="gint"/>
47620       </field>
47621       <field name="orientation">
47622         <type name="Orientation" c:type="GtkOrientation"/>
47623       </field>
47624       <field name="range_rect">
47625         <type name="Gdk.Rectangle" c:type="GdkRectangle"/>
47626       </field>
47627       <field name="slider_start">
47628         <type name="int" c:type="gint"/>
47629       </field>
47630       <field name="slider_end">
47631         <type name="int" c:type="gint"/>
47632       </field>
47633       <field name="round_digits">
47634         <type name="int" c:type="gint"/>
47635       </field>
47636       <field name="trough_click_forward" bits="1">
47637         <type name="uint" c:type="guint"/>
47638       </field>
47639       <field name="update_pending" bits="1">
47640         <type name="uint" c:type="guint"/>
47641       </field>
47642       <field name="layout">
47643         <type name="RangeLayout" c:type="GtkRangeLayout*"/>
47644       </field>
47645       <field name="timer">
47646         <type name="RangeStepTimer" c:type="GtkRangeStepTimer*"/>
47647       </field>
47648       <field name="slide_initial_slider_position">
47649         <type name="int" c:type="gint"/>
47650       </field>
47651       <field name="slide_initial_coordinate">
47652         <type name="int" c:type="gint"/>
47653       </field>
47654       <field name="update_timeout_id">
47655         <type name="uint" c:type="guint"/>
47656       </field>
47657       <field name="event_window">
47658         <type name="Gdk.Window" c:type="GdkWindow*"/>
47659       </field>
47660       <glib:signal name="adjust-bounds">
47661         <return-value transfer-ownership="full">
47662           <type name="none" c:type="void"/>
47663         </return-value>
47664         <parameters>
47665           <parameter name="object" transfer-ownership="none">
47666             <type name="double" c:type="gdouble"/>
47667           </parameter>
47668         </parameters>
47669       </glib:signal>
47670       <glib:signal name="change-value" version="2.6">
47671         <doc xml:whitespace="preserve">The ::change-value signal is emitted when a scroll action is
47672 performed on a range.  It allows an application to determine the
47673 type of scroll event that occurred and the resultant new value.
47674 The application can handle the event itself and return %TRUE to
47675 prevent further processing.  Or, by returning %FALSE, it can pass
47676 the event to other handlers until the default GTK+ handler is
47677 reached.
47678 The value parameter is unrounded.  An application that overrides
47679 the ::change-value signal is responsible for clamping the value to
47680 the desired number of decimal digits; the default GTK+ handler 
47681 clamps the value based on @range-&gt;round_digits.
47682 It is not possible to use delayed update policies in an overridden
47683 ::change-value handler.</doc>
47684         <return-value transfer-ownership="full">
47685           <doc xml:whitespace="preserve">%TRUE to prevent other handlers from being invoked for the signal, %FALSE to propagate the signal further</doc>
47686           <type name="boolean" c:type="gboolean"/>
47687         </return-value>
47688         <parameters>
47689           <parameter name="scroll" transfer-ownership="none">
47690             <doc xml:whitespace="preserve">the type of scroll action that was performed</doc>
47691             <type name="ScrollType" c:type="GtkScrollType"/>
47692           </parameter>
47693           <parameter name="value" transfer-ownership="none">
47694             <doc xml:whitespace="preserve">the new value resulting from the scroll action</doc>
47695             <type name="double" c:type="gdouble"/>
47696           </parameter>
47697         </parameters>
47698       </glib:signal>
47699       <glib:signal name="move-slider">
47700         <doc xml:whitespace="preserve">Virtual function that moves the slider. Used for keybindings.</doc>
47701         <return-value transfer-ownership="full">
47702           <type name="none" c:type="void"/>
47703         </return-value>
47704         <parameters>
47705           <parameter name="step" transfer-ownership="none">
47706             <doc xml:whitespace="preserve">how to move the slider</doc>
47707             <type name="ScrollType" c:type="GtkScrollType"/>
47708           </parameter>
47709         </parameters>
47710       </glib:signal>
47711       <glib:signal name="value-changed">
47712         <doc xml:whitespace="preserve">Emitted when the range value changes.</doc>
47713         <return-value transfer-ownership="full">
47714           <type name="none" c:type="void"/>
47715         </return-value>
47716       </glib:signal>
47717     </class>
47718     <record name="RangeClass"
47719             c:type="GtkRangeClass"
47720             glib:is-gtype-struct-for="Range">
47721       <field name="parent_class">
47722         <type name="WidgetClass" c:type="GtkWidgetClass"/>
47723       </field>
47724       <field name="slider_detail">
47725         <type name="utf8" c:type="gchar*"/>
47726       </field>
47727       <field name="stepper_detail">
47728         <type name="utf8" c:type="gchar*"/>
47729       </field>
47730       <field name="value_changed">
47731         <callback name="value_changed" c:type="value_changed">
47732           <return-value transfer-ownership="none">
47733             <type name="none" c:type="void"/>
47734           </return-value>
47735           <parameters>
47736             <parameter name="range" transfer-ownership="none">
47737               <type name="Range" c:type="GtkRange*"/>
47738             </parameter>
47739           </parameters>
47740         </callback>
47741       </field>
47742       <field name="adjust_bounds">
47743         <callback name="adjust_bounds" c:type="adjust_bounds">
47744           <return-value transfer-ownership="none">
47745             <type name="none" c:type="void"/>
47746           </return-value>
47747           <parameters>
47748             <parameter name="range" transfer-ownership="none">
47749               <type name="Range" c:type="GtkRange*"/>
47750             </parameter>
47751             <parameter name="new_value" transfer-ownership="none">
47752               <type name="double" c:type="gdouble"/>
47753             </parameter>
47754           </parameters>
47755         </callback>
47756       </field>
47757       <field name="move_slider">
47758         <callback name="move_slider" c:type="move_slider">
47759           <return-value transfer-ownership="none">
47760             <type name="none" c:type="void"/>
47761           </return-value>
47762           <parameters>
47763             <parameter name="range" transfer-ownership="none">
47764               <type name="Range" c:type="GtkRange*"/>
47765             </parameter>
47766             <parameter name="scroll" transfer-ownership="none">
47767               <type name="ScrollType" c:type="GtkScrollType"/>
47768             </parameter>
47769           </parameters>
47770         </callback>
47771       </field>
47772       <field name="get_range_border">
47773         <callback name="get_range_border" c:type="get_range_border">
47774           <return-value transfer-ownership="none">
47775             <type name="none" c:type="void"/>
47776           </return-value>
47777           <parameters>
47778             <parameter name="range" transfer-ownership="none">
47779               <type name="Range" c:type="GtkRange*"/>
47780             </parameter>
47781             <parameter name="border_" transfer-ownership="none">
47782               <type name="Border" c:type="GtkBorder*"/>
47783             </parameter>
47784           </parameters>
47785         </callback>
47786       </field>
47787       <field name="change_value">
47788         <callback name="change_value" c:type="change_value">
47789           <return-value transfer-ownership="none">
47790             <type name="boolean" c:type="gboolean"/>
47791           </return-value>
47792           <parameters>
47793             <parameter name="range" transfer-ownership="none">
47794               <type name="Range" c:type="GtkRange*"/>
47795             </parameter>
47796             <parameter name="scroll" transfer-ownership="none">
47797               <type name="ScrollType" c:type="GtkScrollType"/>
47798             </parameter>
47799             <parameter name="new_value" transfer-ownership="none">
47800               <type name="double" c:type="gdouble"/>
47801             </parameter>
47802           </parameters>
47803         </callback>
47804       </field>
47805       <field name="gtk_reserved1">
47806         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
47807           <return-value transfer-ownership="none">
47808             <type name="none" c:type="void"/>
47809           </return-value>
47810         </callback>
47811       </field>
47812       <field name="gtk_reserved2">
47813         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
47814           <return-value transfer-ownership="none">
47815             <type name="none" c:type="void"/>
47816           </return-value>
47817         </callback>
47818       </field>
47819       <field name="gtk_reserved3">
47820         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
47821           <return-value transfer-ownership="none">
47822             <type name="none" c:type="void"/>
47823           </return-value>
47824         </callback>
47825       </field>
47826     </record>
47827     <record name="RangeLayout" c:type="GtkRangeLayout">
47828     </record>
47829     <record name="RangeStepTimer" c:type="GtkRangeStepTimer">
47830     </record>
47831     <record name="RcContext" c:type="GtkRcContext">
47832     </record>
47833     <bitfield name="RcFlags"
47834               glib:type-name="GtkRcFlags"
47835               glib:get-type="gtk_rc_flags_get_type"
47836               c:type="GtkRcFlags">
47837       <member name="fg" value="1" c:identifier="GTK_RC_FG" glib:nick="fg"/>
47838       <member name="bg" value="2" c:identifier="GTK_RC_BG" glib:nick="bg"/>
47839       <member name="text"
47840               value="4"
47841               c:identifier="GTK_RC_TEXT"
47842               glib:nick="text"/>
47843       <member name="base"
47844               value="8"
47845               c:identifier="GTK_RC_BASE"
47846               glib:nick="base"/>
47847     </bitfield>
47848     <record name="RcProperty" c:type="GtkRcProperty">
47849       <field name="type_name" writable="1">
47850         <type name="GLib.Quark" c:type="GQuark"/>
47851       </field>
47852       <field name="property_name" writable="1">
47853         <type name="GLib.Quark" c:type="GQuark"/>
47854       </field>
47855       <field name="origin" writable="1">
47856         <type name="utf8" c:type="gchar*"/>
47857       </field>
47858       <field name="value" writable="1">
47859         <type name="GObject.Value" c:type="GValue"/>
47860       </field>
47861     </record>
47862     <callback name="RcPropertyParser" c:type="GtkRcPropertyParser">
47863       <return-value transfer-ownership="none">
47864         <type name="boolean" c:type="gboolean"/>
47865       </return-value>
47866       <parameters>
47867         <parameter name="pspec" transfer-ownership="none">
47868           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
47869         </parameter>
47870         <parameter name="rc_string" transfer-ownership="none">
47871           <type name="GLib.String" c:type="GString*"/>
47872         </parameter>
47873         <parameter name="property_value" transfer-ownership="none">
47874           <type name="GObject.Value" c:type="GValue*"/>
47875         </parameter>
47876       </parameters>
47877     </callback>
47878     <class name="RcStyle"
47879            c:type="GtkRcStyle"
47880            parent="GObject.Object"
47881            glib:type-name="GtkRcStyle"
47882            glib:get-type="gtk_rc_style_get_type"
47883            glib:type-struct="RcStyleClass">
47884       <constructor name="new" c:identifier="gtk_rc_style_new">
47885         <return-value transfer-ownership="full">
47886           <type name="RcStyle" c:type="GtkRcStyle*"/>
47887         </return-value>
47888       </constructor>
47889       <virtual-method name="create_rc_style">
47890         <return-value transfer-ownership="full">
47891           <type name="RcStyle" c:type="GtkRcStyle*"/>
47892         </return-value>
47893       </virtual-method>
47894       <virtual-method name="parse">
47895         <return-value transfer-ownership="none">
47896           <type name="uint" c:type="guint"/>
47897         </return-value>
47898         <parameters>
47899           <parameter name="settings" transfer-ownership="none">
47900             <type name="Settings" c:type="GtkSettings*"/>
47901           </parameter>
47902           <parameter name="scanner" transfer-ownership="none">
47903             <type name="GLib.Scanner" c:type="GScanner*"/>
47904           </parameter>
47905         </parameters>
47906       </virtual-method>
47907       <virtual-method name="merge">
47908         <return-value transfer-ownership="none">
47909           <type name="none" c:type="void"/>
47910         </return-value>
47911         <parameters>
47912           <parameter name="src" transfer-ownership="none">
47913             <type name="RcStyle" c:type="GtkRcStyle*"/>
47914           </parameter>
47915         </parameters>
47916       </virtual-method>
47917       <virtual-method name="create_style">
47918         <return-value transfer-ownership="full">
47919           <type name="Style" c:type="GtkStyle*"/>
47920         </return-value>
47921       </virtual-method>
47922       <method name="copy" c:identifier="gtk_rc_style_copy">
47923         <doc xml:whitespace="preserve">Makes a copy of the specified #GtkRcStyle. This function
47924 will correctly copy an RC style that is a member of a class
47925 derived from #GtkRcStyle.</doc>
47926         <return-value transfer-ownership="full">
47927           <doc xml:whitespace="preserve">the resulting #GtkRcStyle</doc>
47928           <type name="RcStyle" c:type="GtkRcStyle*"/>
47929         </return-value>
47930       </method>
47931       <method name="ref" c:identifier="gtk_rc_style_ref">
47932         <return-value transfer-ownership="none">
47933           <type name="none" c:type="void"/>
47934         </return-value>
47935       </method>
47936       <method name="unref" c:identifier="gtk_rc_style_unref">
47937         <return-value transfer-ownership="none">
47938           <type name="none" c:type="void"/>
47939         </return-value>
47940       </method>
47941       <field name="parent_instance">
47942         <type name="GObject.Object" c:type="GObject"/>
47943       </field>
47944       <field name="name">
47945         <type name="utf8" c:type="gchar*"/>
47946       </field>
47947       <field name="bg_pixmap_name">
47948         <array zero-terminated="0" c:type="gchar*" fixed-size="5">
47949           <type name="utf8"/>
47950         </array>
47951       </field>
47952       <field name="font_desc">
47953         <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
47954       </field>
47955       <field name="color_flags">
47956         <array zero-terminated="0" c:type="GtkRcFlags" fixed-size="5">
47957           <type name="RcFlags"/>
47958         </array>
47959       </field>
47960       <field name="fg">
47961         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
47962           <type name="Gdk.Color"/>
47963         </array>
47964       </field>
47965       <field name="bg">
47966         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
47967           <type name="Gdk.Color"/>
47968         </array>
47969       </field>
47970       <field name="text">
47971         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
47972           <type name="Gdk.Color"/>
47973         </array>
47974       </field>
47975       <field name="base">
47976         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
47977           <type name="Gdk.Color"/>
47978         </array>
47979       </field>
47980       <field name="xthickness">
47981         <type name="int" c:type="gint"/>
47982       </field>
47983       <field name="ythickness">
47984         <type name="int" c:type="gint"/>
47985       </field>
47986       <field name="rc_properties">
47987         <type name="GLib.Array" c:type="GArray*"/>
47988       </field>
47989       <field name="rc_style_lists">
47990         <type name="GLib.SList" c:type="GSList*">
47991           <type name="any" c:type="gpointer"/>
47992         </type>
47993       </field>
47994       <field name="icon_factories">
47995         <type name="GLib.SList" c:type="GSList*">
47996           <type name="any" c:type="gpointer"/>
47997         </type>
47998       </field>
47999       <field name="engine_specified" bits="1">
48000         <type name="uint" c:type="guint"/>
48001       </field>
48002     </class>
48003     <record name="RcStyleClass"
48004             c:type="GtkRcStyleClass"
48005             glib:is-gtype-struct-for="RcStyle">
48006       <field name="parent_class">
48007         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
48008       </field>
48009       <field name="create_rc_style">
48010         <callback name="create_rc_style" c:type="create_rc_style">
48011           <return-value transfer-ownership="full">
48012             <type name="RcStyle" c:type="GtkRcStyle*"/>
48013           </return-value>
48014           <parameters>
48015             <parameter name="rc_style" transfer-ownership="none">
48016               <type name="RcStyle" c:type="GtkRcStyle*"/>
48017             </parameter>
48018           </parameters>
48019         </callback>
48020       </field>
48021       <field name="parse">
48022         <callback name="parse" c:type="parse">
48023           <return-value transfer-ownership="none">
48024             <type name="uint" c:type="guint"/>
48025           </return-value>
48026           <parameters>
48027             <parameter name="rc_style" transfer-ownership="none">
48028               <type name="RcStyle" c:type="GtkRcStyle*"/>
48029             </parameter>
48030             <parameter name="settings" transfer-ownership="none">
48031               <type name="Settings" c:type="GtkSettings*"/>
48032             </parameter>
48033             <parameter name="scanner" transfer-ownership="none">
48034               <type name="GLib.Scanner" c:type="GScanner*"/>
48035             </parameter>
48036           </parameters>
48037         </callback>
48038       </field>
48039       <field name="merge">
48040         <callback name="merge" c:type="merge">
48041           <return-value transfer-ownership="none">
48042             <type name="none" c:type="void"/>
48043           </return-value>
48044           <parameters>
48045             <parameter name="dest" transfer-ownership="none">
48046               <type name="RcStyle" c:type="GtkRcStyle*"/>
48047             </parameter>
48048             <parameter name="src" transfer-ownership="none">
48049               <type name="RcStyle" c:type="GtkRcStyle*"/>
48050             </parameter>
48051           </parameters>
48052         </callback>
48053       </field>
48054       <field name="create_style">
48055         <callback name="create_style" c:type="create_style">
48056           <return-value transfer-ownership="full">
48057             <type name="Style" c:type="GtkStyle*"/>
48058           </return-value>
48059           <parameters>
48060             <parameter name="rc_style" transfer-ownership="none">
48061               <type name="RcStyle" c:type="GtkRcStyle*"/>
48062             </parameter>
48063           </parameters>
48064         </callback>
48065       </field>
48066       <field name="gtk_reserved1">
48067         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
48068           <return-value transfer-ownership="none">
48069             <type name="none" c:type="void"/>
48070           </return-value>
48071         </callback>
48072       </field>
48073       <field name="gtk_reserved2">
48074         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
48075           <return-value transfer-ownership="none">
48076             <type name="none" c:type="void"/>
48077           </return-value>
48078         </callback>
48079       </field>
48080       <field name="gtk_reserved3">
48081         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
48082           <return-value transfer-ownership="none">
48083             <type name="none" c:type="void"/>
48084           </return-value>
48085         </callback>
48086       </field>
48087       <field name="gtk_reserved4">
48088         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
48089           <return-value transfer-ownership="none">
48090             <type name="none" c:type="void"/>
48091           </return-value>
48092         </callback>
48093       </field>
48094     </record>
48095     <enumeration name="RcTokenType"
48096                  glib:type-name="GtkRcTokenType"
48097                  glib:get-type="gtk_rc_token_type_get_type"
48098                  c:type="GtkRcTokenType">
48099       <member name="invalid"
48100               value="270"
48101               c:identifier="GTK_RC_TOKEN_INVALID"
48102               glib:nick="invalid"/>
48103       <member name="include"
48104               value="271"
48105               c:identifier="GTK_RC_TOKEN_INCLUDE"
48106               glib:nick="include"/>
48107       <member name="normal"
48108               value="272"
48109               c:identifier="GTK_RC_TOKEN_NORMAL"
48110               glib:nick="normal"/>
48111       <member name="active"
48112               value="273"
48113               c:identifier="GTK_RC_TOKEN_ACTIVE"
48114               glib:nick="active"/>
48115       <member name="prelight"
48116               value="274"
48117               c:identifier="GTK_RC_TOKEN_PRELIGHT"
48118               glib:nick="prelight"/>
48119       <member name="selected"
48120               value="275"
48121               c:identifier="GTK_RC_TOKEN_SELECTED"
48122               glib:nick="selected"/>
48123       <member name="insensitive"
48124               value="276"
48125               c:identifier="GTK_RC_TOKEN_INSENSITIVE"
48126               glib:nick="insensitive"/>
48127       <member name="fg"
48128               value="277"
48129               c:identifier="GTK_RC_TOKEN_FG"
48130               glib:nick="fg"/>
48131       <member name="bg"
48132               value="278"
48133               c:identifier="GTK_RC_TOKEN_BG"
48134               glib:nick="bg"/>
48135       <member name="text"
48136               value="279"
48137               c:identifier="GTK_RC_TOKEN_TEXT"
48138               glib:nick="text"/>
48139       <member name="base"
48140               value="280"
48141               c:identifier="GTK_RC_TOKEN_BASE"
48142               glib:nick="base"/>
48143       <member name="xthickness"
48144               value="281"
48145               c:identifier="GTK_RC_TOKEN_XTHICKNESS"
48146               glib:nick="xthickness"/>
48147       <member name="ythickness"
48148               value="282"
48149               c:identifier="GTK_RC_TOKEN_YTHICKNESS"
48150               glib:nick="ythickness"/>
48151       <member name="font"
48152               value="283"
48153               c:identifier="GTK_RC_TOKEN_FONT"
48154               glib:nick="font"/>
48155       <member name="fontset"
48156               value="284"
48157               c:identifier="GTK_RC_TOKEN_FONTSET"
48158               glib:nick="fontset"/>
48159       <member name="font_name"
48160               value="285"
48161               c:identifier="GTK_RC_TOKEN_FONT_NAME"
48162               glib:nick="font-name"/>
48163       <member name="bg_pixmap"
48164               value="286"
48165               c:identifier="GTK_RC_TOKEN_BG_PIXMAP"
48166               glib:nick="bg-pixmap"/>
48167       <member name="pixmap_path"
48168               value="287"
48169               c:identifier="GTK_RC_TOKEN_PIXMAP_PATH"
48170               glib:nick="pixmap-path"/>
48171       <member name="style"
48172               value="288"
48173               c:identifier="GTK_RC_TOKEN_STYLE"
48174               glib:nick="style"/>
48175       <member name="binding"
48176               value="289"
48177               c:identifier="GTK_RC_TOKEN_BINDING"
48178               glib:nick="binding"/>
48179       <member name="bind"
48180               value="290"
48181               c:identifier="GTK_RC_TOKEN_BIND"
48182               glib:nick="bind"/>
48183       <member name="widget"
48184               value="291"
48185               c:identifier="GTK_RC_TOKEN_WIDGET"
48186               glib:nick="widget"/>
48187       <member name="widget_class"
48188               value="292"
48189               c:identifier="GTK_RC_TOKEN_WIDGET_CLASS"
48190               glib:nick="widget-class"/>
48191       <member name="class"
48192               value="293"
48193               c:identifier="GTK_RC_TOKEN_CLASS"
48194               glib:nick="class"/>
48195       <member name="lowest"
48196               value="294"
48197               c:identifier="GTK_RC_TOKEN_LOWEST"
48198               glib:nick="lowest"/>
48199       <member name="gtk"
48200               value="295"
48201               c:identifier="GTK_RC_TOKEN_GTK"
48202               glib:nick="gtk"/>
48203       <member name="application"
48204               value="296"
48205               c:identifier="GTK_RC_TOKEN_APPLICATION"
48206               glib:nick="application"/>
48207       <member name="theme"
48208               value="297"
48209               c:identifier="GTK_RC_TOKEN_THEME"
48210               glib:nick="theme"/>
48211       <member name="rc"
48212               value="298"
48213               c:identifier="GTK_RC_TOKEN_RC"
48214               glib:nick="rc"/>
48215       <member name="highest"
48216               value="299"
48217               c:identifier="GTK_RC_TOKEN_HIGHEST"
48218               glib:nick="highest"/>
48219       <member name="engine"
48220               value="300"
48221               c:identifier="GTK_RC_TOKEN_ENGINE"
48222               glib:nick="engine"/>
48223       <member name="module_path"
48224               value="301"
48225               c:identifier="GTK_RC_TOKEN_MODULE_PATH"
48226               glib:nick="module-path"/>
48227       <member name="im_module_path"
48228               value="302"
48229               c:identifier="GTK_RC_TOKEN_IM_MODULE_PATH"
48230               glib:nick="im-module-path"/>
48231       <member name="im_module_file"
48232               value="303"
48233               c:identifier="GTK_RC_TOKEN_IM_MODULE_FILE"
48234               glib:nick="im-module-file"/>
48235       <member name="stock"
48236               value="304"
48237               c:identifier="GTK_RC_TOKEN_STOCK"
48238               glib:nick="stock"/>
48239       <member name="ltr"
48240               value="305"
48241               c:identifier="GTK_RC_TOKEN_LTR"
48242               glib:nick="ltr"/>
48243       <member name="rtl"
48244               value="306"
48245               c:identifier="GTK_RC_TOKEN_RTL"
48246               glib:nick="rtl"/>
48247       <member name="color"
48248               value="307"
48249               c:identifier="GTK_RC_TOKEN_COLOR"
48250               glib:nick="color"/>
48251       <member name="unbind"
48252               value="308"
48253               c:identifier="GTK_RC_TOKEN_UNBIND"
48254               glib:nick="unbind"/>
48255       <member name="last"
48256               value="309"
48257               c:identifier="GTK_RC_TOKEN_LAST"
48258               glib:nick="last"/>
48259     </enumeration>
48260     <class name="RecentAction"
48261            c:type="GtkRecentAction"
48262            parent="Action"
48263            glib:type-name="GtkRecentAction"
48264            glib:get-type="gtk_recent_action_get_type"
48265            glib:type-struct="RecentActionClass">
48266       <implements name="Buildable"/>
48267       <implements name="RecentChooser"/>
48268       <constructor name="new"
48269                    c:identifier="gtk_recent_action_new"
48270                    version="2.12">
48271         <doc xml:whitespace="preserve">Creates a new #GtkRecentAction object. To add the action to
48272 a #GtkActionGroup and set the accelerator for the action,
48273 call gtk_action_group_add_action_with_accel().</doc>
48274         <return-value transfer-ownership="full">
48275           <doc xml:whitespace="preserve">the newly created #GtkRecentAction.</doc>
48276           <type name="RecentAction" c:type="GtkAction*"/>
48277         </return-value>
48278         <parameters>
48279           <parameter name="name" transfer-ownership="none">
48280             <doc xml:whitespace="preserve">a unique name for the action</doc>
48281             <type name="utf8" c:type="gchar*"/>
48282           </parameter>
48283           <parameter name="label" transfer-ownership="none" allow-none="1">
48284             <doc xml:whitespace="preserve">the label displayed in menu items and on buttons, or %NULL</doc>
48285             <type name="utf8" c:type="gchar*"/>
48286           </parameter>
48287           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
48288             <doc xml:whitespace="preserve">a tooltip for the action, or %NULL</doc>
48289             <type name="utf8" c:type="gchar*"/>
48290           </parameter>
48291           <parameter name="stock_id" transfer-ownership="none">
48292             <doc xml:whitespace="preserve">the stock icon to display in widgets representing the action, or %NULL</doc>
48293             <type name="utf8" c:type="gchar*"/>
48294           </parameter>
48295         </parameters>
48296       </constructor>
48297       <constructor name="new_for_manager"
48298                    c:identifier="gtk_recent_action_new_for_manager"
48299                    version="2.12">
48300         <doc xml:whitespace="preserve">Creates a new #GtkRecentAction object. To add the action to
48301 a #GtkActionGroup and set the accelerator for the action,
48302 call gtk_action_group_add_action_with_accel().</doc>
48303         <return-value transfer-ownership="full">
48304           <doc xml:whitespace="preserve">the newly created #GtkRecentAction</doc>
48305           <type name="RecentAction" c:type="GtkAction*"/>
48306         </return-value>
48307         <parameters>
48308           <parameter name="name" transfer-ownership="none">
48309             <doc xml:whitespace="preserve">a unique name for the action</doc>
48310             <type name="utf8" c:type="gchar*"/>
48311           </parameter>
48312           <parameter name="label" transfer-ownership="none" allow-none="1">
48313             <doc xml:whitespace="preserve">the label displayed in menu items and on buttons, or %NULL</doc>
48314             <type name="utf8" c:type="gchar*"/>
48315           </parameter>
48316           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
48317             <doc xml:whitespace="preserve">a tooltip for the action, or %NULL</doc>
48318             <type name="utf8" c:type="gchar*"/>
48319           </parameter>
48320           <parameter name="stock_id" transfer-ownership="none">
48321             <doc xml:whitespace="preserve">the stock icon to display in widgets representing the action, or %NULL</doc>
48322             <type name="utf8" c:type="gchar*"/>
48323           </parameter>
48324           <parameter name="manager" transfer-ownership="none" allow-none="1">
48325             <doc xml:whitespace="preserve">a #GtkRecentManager, or %NULL for using the default #GtkRecentManager</doc>
48326             <type name="RecentManager" c:type="GtkRecentManager*"/>
48327           </parameter>
48328         </parameters>
48329       </constructor>
48330       <method name="get_show_numbers"
48331               c:identifier="gtk_recent_action_get_show_numbers"
48332               version="2.12">
48333         <doc xml:whitespace="preserve">Returns the value set by gtk_recent_chooser_menu_set_show_numbers().</doc>
48334         <return-value transfer-ownership="none">
48335           <doc xml:whitespace="preserve">%TRUE if numbers should be shown.</doc>
48336           <type name="boolean" c:type="gboolean"/>
48337         </return-value>
48338       </method>
48339       <method name="set_show_numbers"
48340               c:identifier="gtk_recent_action_set_show_numbers"
48341               version="2.12">
48342         <doc xml:whitespace="preserve">Sets whether a number should be added to the items shown by the
48343 widgets representing @action. The numbers are shown to provide
48344 a unique character for a mnemonic to be used inside the menu item's
48345 label. Only the first ten items get a number to avoid clashes.</doc>
48346         <return-value transfer-ownership="none">
48347           <type name="none" c:type="void"/>
48348         </return-value>
48349         <parameters>
48350           <parameter name="show_numbers" transfer-ownership="none">
48351             <doc xml:whitespace="preserve">%TRUE if the shown items should be numbered</doc>
48352             <type name="boolean" c:type="gboolean"/>
48353           </parameter>
48354         </parameters>
48355       </method>
48356       <property name="show-numbers" writable="1" transfer-ownership="none">
48357         <type name="boolean" c:type="gboolean"/>
48358       </property>
48359       <field name="parent_instance">
48360         <type name="Action" c:type="GtkAction"/>
48361       </field>
48362       <field name="priv">
48363         <type name="RecentActionPrivate" c:type="GtkRecentActionPrivate*"/>
48364       </field>
48365     </class>
48366     <record name="RecentActionClass"
48367             c:type="GtkRecentActionClass"
48368             glib:is-gtype-struct-for="RecentAction">
48369       <field name="parent_class">
48370         <type name="ActionClass" c:type="GtkActionClass"/>
48371       </field>
48372     </record>
48373     <record name="RecentActionPrivate" c:type="GtkRecentActionPrivate">
48374     </record>
48375     <interface name="RecentChooser"
48376                c:type="GtkRecentChooser"
48377                glib:type-name="GtkRecentChooser"
48378                glib:get-type="gtk_recent_chooser_get_type"
48379                glib:type-struct="RecentChooserIface">
48380       <virtual-method name="set_current_uri"
48381                       invoker="set_current_uri"
48382                       version="2.10"
48383                       throws="1">
48384         <doc xml:whitespace="preserve">Sets @uri as the current URI for @chooser.</doc>
48385         <return-value transfer-ownership="none">
48386           <doc xml:whitespace="preserve">%TRUE if the URI was found.</doc>
48387           <type name="boolean" c:type="gboolean"/>
48388         </return-value>
48389         <parameters>
48390           <parameter name="uri" transfer-ownership="none">
48391             <doc xml:whitespace="preserve">a URI</doc>
48392             <type name="utf8" c:type="gchar*"/>
48393           </parameter>
48394         </parameters>
48395       </virtual-method>
48396       <virtual-method name="get_current_uri"
48397                       invoker="get_current_uri"
48398                       version="2.10">
48399         <doc xml:whitespace="preserve">Gets the URI currently selected by @chooser.</doc>
48400         <return-value transfer-ownership="full">
48401           <doc xml:whitespace="preserve">a newly allocated string holding a URI.</doc>
48402           <type name="utf8" c:type="gchar*"/>
48403         </return-value>
48404       </virtual-method>
48405       <virtual-method name="select_uri"
48406                       invoker="select_uri"
48407                       version="2.10"
48408                       throws="1">
48409         <doc xml:whitespace="preserve">Selects @uri inside @chooser.</doc>
48410         <return-value transfer-ownership="none">
48411           <doc xml:whitespace="preserve">%TRUE if @uri was found.</doc>
48412           <type name="boolean" c:type="gboolean"/>
48413         </return-value>
48414         <parameters>
48415           <parameter name="uri" transfer-ownership="none">
48416             <doc xml:whitespace="preserve">a URI</doc>
48417             <type name="utf8" c:type="gchar*"/>
48418           </parameter>
48419         </parameters>
48420       </virtual-method>
48421       <virtual-method name="unselect_uri"
48422                       invoker="unselect_uri"
48423                       version="2.10">
48424         <doc xml:whitespace="preserve">Unselects @uri inside @chooser.</doc>
48425         <return-value transfer-ownership="none">
48426           <type name="none" c:type="void"/>
48427         </return-value>
48428         <parameters>
48429           <parameter name="uri" transfer-ownership="none">
48430             <doc xml:whitespace="preserve">a URI</doc>
48431             <type name="utf8" c:type="gchar*"/>
48432           </parameter>
48433         </parameters>
48434       </virtual-method>
48435       <virtual-method name="select_all" invoker="select_all" version="2.10">
48436         <doc xml:whitespace="preserve">Selects all the items inside @chooser, if the @chooser supports
48437 multiple selection.</doc>
48438         <return-value transfer-ownership="none">
48439           <type name="none" c:type="void"/>
48440         </return-value>
48441       </virtual-method>
48442       <virtual-method name="unselect_all"
48443                       invoker="unselect_all"
48444                       version="2.10">
48445         <doc xml:whitespace="preserve">Unselects all the items inside @chooser.</doc>
48446         <return-value transfer-ownership="none">
48447           <type name="none" c:type="void"/>
48448         </return-value>
48449       </virtual-method>
48450       <virtual-method name="get_items" invoker="get_items" version="2.10">
48451         <doc xml:whitespace="preserve">Gets the list of recently used resources in form of #GtkRecentInfo objects.
48452 The return value of this function is affected by the "sort-type" and
48453 "limit" properties of @chooser.
48454 list of #GtkRecentInfo objects.  You should
48455 use gtk_recent_info_unref() on every item of the list, and then free
48456 the list itself using g_list_free().</doc>
48457         <return-value transfer-ownership="full">
48458           <doc xml:whitespace="preserve">A newly allocated</doc>
48459           <type name="GLib.List" c:type="GList*">
48460             <type name="RecentInfo"/>
48461           </type>
48462         </return-value>
48463       </virtual-method>
48464       <virtual-method name="get_recent_manager">
48465         <return-value transfer-ownership="full">
48466           <type name="RecentManager" c:type="GtkRecentManager*"/>
48467         </return-value>
48468       </virtual-method>
48469       <virtual-method name="add_filter" invoker="add_filter" version="2.10">
48470         <doc xml:whitespace="preserve">Adds @filter to the list of #GtkRecentFilter objects held by @chooser.
48471 If no previous filter objects were defined, this function will call
48472 gtk_recent_chooser_set_filter().</doc>
48473         <return-value transfer-ownership="none">
48474           <type name="none" c:type="void"/>
48475         </return-value>
48476         <parameters>
48477           <parameter name="filter" transfer-ownership="none">
48478             <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
48479             <type name="RecentFilter" c:type="GtkRecentFilter*"/>
48480           </parameter>
48481         </parameters>
48482       </virtual-method>
48483       <virtual-method name="remove_filter"
48484                       invoker="remove_filter"
48485                       version="2.10">
48486         <doc xml:whitespace="preserve">Removes @filter from the list of #GtkRecentFilter objects held by @chooser.</doc>
48487         <return-value transfer-ownership="none">
48488           <type name="none" c:type="void"/>
48489         </return-value>
48490         <parameters>
48491           <parameter name="filter" transfer-ownership="none">
48492             <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
48493             <type name="RecentFilter" c:type="GtkRecentFilter*"/>
48494           </parameter>
48495         </parameters>
48496       </virtual-method>
48497       <virtual-method name="list_filters"
48498                       invoker="list_filters"
48499                       version="2.10">
48500         <doc xml:whitespace="preserve">Gets the #GtkRecentFilter objects held by @chooser.
48501 of #GtkRecentFilter objects.  You
48502 should just free the returned list using g_slist_free().</doc>
48503         <return-value transfer-ownership="container">
48504           <doc xml:whitespace="preserve">A singly linked list</doc>
48505           <type name="GLib.SList" c:type="GSList*">
48506             <type name="RecentFilter"/>
48507           </type>
48508         </return-value>
48509       </virtual-method>
48510       <virtual-method name="set_sort_func">
48511         <return-value transfer-ownership="none">
48512           <type name="none" c:type="void"/>
48513         </return-value>
48514         <parameters>
48515           <parameter name="sort_func" transfer-ownership="none">
48516             <type name="RecentSortFunc" c:type="GtkRecentSortFunc"/>
48517           </parameter>
48518           <parameter name="data" transfer-ownership="none">
48519             <type name="any" c:type="gpointer"/>
48520           </parameter>
48521           <parameter name="destroy" transfer-ownership="none">
48522             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
48523           </parameter>
48524         </parameters>
48525       </virtual-method>
48526       <method name="set_show_private"
48527               c:identifier="gtk_recent_chooser_set_show_private"
48528               version="2.10">
48529         <doc xml:whitespace="preserve">Whether to show recently used resources marked registered as private.</doc>
48530         <return-value transfer-ownership="none">
48531           <type name="none" c:type="void"/>
48532         </return-value>
48533         <parameters>
48534           <parameter name="show_private" transfer-ownership="none">
48535             <doc xml:whitespace="preserve">%TRUE to show private items, %FALSE otherwise</doc>
48536             <type name="boolean" c:type="gboolean"/>
48537           </parameter>
48538         </parameters>
48539       </method>
48540       <method name="get_show_private"
48541               c:identifier="gtk_recent_chooser_get_show_private"
48542               version="2.10">
48543         <doc xml:whitespace="preserve">Returns whether @chooser should display recently used resources
48544 registered as private.
48545 %FALSE otherwise.</doc>
48546         <return-value transfer-ownership="none">
48547           <doc xml:whitespace="preserve">%TRUE if the recent chooser should show private items,</doc>
48548           <type name="boolean" c:type="gboolean"/>
48549         </return-value>
48550       </method>
48551       <method name="set_show_not_found"
48552               c:identifier="gtk_recent_chooser_set_show_not_found"
48553               version="2.10">
48554         <doc xml:whitespace="preserve">Sets whether @chooser should display the recently used resources that
48555 it didn't find.  This only applies to local resources.</doc>
48556         <return-value transfer-ownership="none">
48557           <type name="none" c:type="void"/>
48558         </return-value>
48559         <parameters>
48560           <parameter name="show_not_found" transfer-ownership="none">
48561             <doc xml:whitespace="preserve">whether to show the local items we didn't find</doc>
48562             <type name="boolean" c:type="gboolean"/>
48563           </parameter>
48564         </parameters>
48565       </method>
48566       <method name="get_show_not_found"
48567               c:identifier="gtk_recent_chooser_get_show_not_found"
48568               version="2.10">
48569         <doc xml:whitespace="preserve">Retrieves whether @chooser should show the recently used resources that
48570 were not found.
48571 %FALSE otheriwse.</doc>
48572         <return-value transfer-ownership="none">
48573           <doc xml:whitespace="preserve">%TRUE if the resources not found should be displayed, and</doc>
48574           <type name="boolean" c:type="gboolean"/>
48575         </return-value>
48576       </method>
48577       <method name="set_select_multiple"
48578               c:identifier="gtk_recent_chooser_set_select_multiple"
48579               version="2.10">
48580         <doc xml:whitespace="preserve">Sets whether @chooser can select multiple items.</doc>
48581         <return-value transfer-ownership="none">
48582           <type name="none" c:type="void"/>
48583         </return-value>
48584         <parameters>
48585           <parameter name="select_multiple" transfer-ownership="none">
48586             <doc xml:whitespace="preserve">%TRUE if @chooser can select more than one item</doc>
48587             <type name="boolean" c:type="gboolean"/>
48588           </parameter>
48589         </parameters>
48590       </method>
48591       <method name="get_select_multiple"
48592               c:identifier="gtk_recent_chooser_get_select_multiple"
48593               version="2.10">
48594         <doc xml:whitespace="preserve">Gets whether @chooser can select multiple items.</doc>
48595         <return-value transfer-ownership="none">
48596           <doc xml:whitespace="preserve">%TRUE if @chooser can select more than one item.</doc>
48597           <type name="boolean" c:type="gboolean"/>
48598         </return-value>
48599       </method>
48600       <method name="set_limit"
48601               c:identifier="gtk_recent_chooser_set_limit"
48602               version="2.10">
48603         <doc xml:whitespace="preserve">Sets the number of items that should be returned by
48604 gtk_recent_chooser_get_items() and gtk_recent_chooser_get_uris().</doc>
48605         <return-value transfer-ownership="none">
48606           <type name="none" c:type="void"/>
48607         </return-value>
48608         <parameters>
48609           <parameter name="limit" transfer-ownership="none">
48610             <doc xml:whitespace="preserve">a positive integer, or -1 for all items</doc>
48611             <type name="int" c:type="gint"/>
48612           </parameter>
48613         </parameters>
48614       </method>
48615       <method name="get_limit"
48616               c:identifier="gtk_recent_chooser_get_limit"
48617               version="2.10">
48618         <doc xml:whitespace="preserve">Gets the number of items returned by gtk_recent_chooser_get_items()
48619 and gtk_recent_chooser_get_uris().
48620 returned.</doc>
48621         <return-value transfer-ownership="none">
48622           <doc xml:whitespace="preserve">A positive integer, or -1 meaning that all items are</doc>
48623           <type name="int" c:type="gint"/>
48624         </return-value>
48625       </method>
48626       <method name="set_local_only"
48627               c:identifier="gtk_recent_chooser_set_local_only"
48628               version="2.10">
48629         <doc xml:whitespace="preserve">Sets whether only local resources, that is resources using the file:// URI
48630 scheme, should be shown in the recently used resources selector.  If
48631 to be accessible through the operating system native file system.</doc>
48632         <return-value transfer-ownership="none">
48633           <type name="none" c:type="void"/>
48634         </return-value>
48635         <parameters>
48636           <parameter name="local_only" transfer-ownership="none">
48637             <doc xml:whitespace="preserve">%TRUE if only local files can be shown</doc>
48638             <type name="boolean" c:type="gboolean"/>
48639           </parameter>
48640         </parameters>
48641       </method>
48642       <method name="get_local_only"
48643               c:identifier="gtk_recent_chooser_get_local_only"
48644               version="2.10">
48645         <doc xml:whitespace="preserve">Gets whether only local resources should be shown in the recently used
48646 resources selector.  See gtk_recent_chooser_set_local_only()</doc>
48647         <return-value transfer-ownership="none">
48648           <doc xml:whitespace="preserve">%TRUE if only local resources should be shown.</doc>
48649           <type name="boolean" c:type="gboolean"/>
48650         </return-value>
48651       </method>
48652       <method name="set_show_tips"
48653               c:identifier="gtk_recent_chooser_set_show_tips"
48654               version="2.10">
48655         <doc xml:whitespace="preserve">Sets whether to show a tooltips containing the full path of each
48656 recently used resource in a #GtkRecentChooser widget.</doc>
48657         <return-value transfer-ownership="none">
48658           <type name="none" c:type="void"/>
48659         </return-value>
48660         <parameters>
48661           <parameter name="show_tips" transfer-ownership="none">
48662             <doc xml:whitespace="preserve">%TRUE if tooltips should be shown</doc>
48663             <type name="boolean" c:type="gboolean"/>
48664           </parameter>
48665         </parameters>
48666       </method>
48667       <method name="get_show_tips"
48668               c:identifier="gtk_recent_chooser_get_show_tips"
48669               version="2.10">
48670         <doc xml:whitespace="preserve">Gets whether @chooser should display tooltips containing the full path
48671 of a recently user resource.
48672 %FALSE otherwise.</doc>
48673         <return-value transfer-ownership="none">
48674           <doc xml:whitespace="preserve">%TRUE if the recent chooser should show tooltips,</doc>
48675           <type name="boolean" c:type="gboolean"/>
48676         </return-value>
48677       </method>
48678       <method name="set_show_numbers"
48679               c:identifier="gtk_recent_chooser_set_show_numbers"
48680               version="2.10"
48681               deprecated="Use gtk_recent_chooser_menu_set_show_numbers() instead."
48682               deprecated-version="2.12">
48683         <doc xml:whitespace="preserve">Whether to show recently used resources prepended by a unique number.</doc>
48684         <return-value transfer-ownership="none">
48685           <type name="none" c:type="void"/>
48686         </return-value>
48687         <parameters>
48688           <parameter name="show_numbers" transfer-ownership="none">
48689             <doc xml:whitespace="preserve">%TRUE to show numbers, %FALSE otherwise</doc>
48690             <type name="boolean" c:type="gboolean"/>
48691           </parameter>
48692         </parameters>
48693       </method>
48694       <method name="get_show_numbers"
48695               c:identifier="gtk_recent_chooser_get_show_numbers"
48696               version="2.10"
48697               deprecated="use gtk_recent_chooser_menu_get_show_numbers() instead."
48698               deprecated-version="2.12">
48699         <doc xml:whitespace="preserve">Returns whether @chooser should display recently used resources
48700 prepended by a unique number.
48701 %FALSE otherwise.</doc>
48702         <return-value transfer-ownership="none">
48703           <doc xml:whitespace="preserve">%TRUE if the recent chooser should show display numbers,</doc>
48704           <type name="boolean" c:type="gboolean"/>
48705         </return-value>
48706       </method>
48707       <method name="set_show_icons"
48708               c:identifier="gtk_recent_chooser_set_show_icons"
48709               version="2.10">
48710         <doc xml:whitespace="preserve">Sets whether @chooser should show an icon near the resource when
48711 displaying it.</doc>
48712         <return-value transfer-ownership="none">
48713           <type name="none" c:type="void"/>
48714         </return-value>
48715         <parameters>
48716           <parameter name="show_icons" transfer-ownership="none">
48717             <doc xml:whitespace="preserve">whether to show an icon near the resource</doc>
48718             <type name="boolean" c:type="gboolean"/>
48719           </parameter>
48720         </parameters>
48721       </method>
48722       <method name="get_show_icons"
48723               c:identifier="gtk_recent_chooser_get_show_icons"
48724               version="2.10">
48725         <doc xml:whitespace="preserve">Retrieves whether @chooser should show an icon near the resource.</doc>
48726         <return-value transfer-ownership="none">
48727           <doc xml:whitespace="preserve">%TRUE if the icons should be displayed, %FALSE otherwise.</doc>
48728           <type name="boolean" c:type="gboolean"/>
48729         </return-value>
48730       </method>
48731       <method name="set_sort_type"
48732               c:identifier="gtk_recent_chooser_set_sort_type"
48733               version="2.10">
48734         <doc xml:whitespace="preserve">Changes the sorting order of the recently used resources list displayed by</doc>
48735         <return-value transfer-ownership="none">
48736           <type name="none" c:type="void"/>
48737         </return-value>
48738         <parameters>
48739           <parameter name="sort_type" transfer-ownership="none">
48740             <doc xml:whitespace="preserve">sort order that the chooser should use</doc>
48741             <type name="RecentSortType" c:type="GtkRecentSortType"/>
48742           </parameter>
48743         </parameters>
48744       </method>
48745       <method name="get_sort_type"
48746               c:identifier="gtk_recent_chooser_get_sort_type"
48747               version="2.10">
48748         <doc xml:whitespace="preserve">Gets the value set by gtk_recent_chooser_set_sort_type().</doc>
48749         <return-value transfer-ownership="full">
48750           <doc xml:whitespace="preserve">the sorting order of the @chooser.</doc>
48751           <type name="RecentSortType" c:type="GtkRecentSortType"/>
48752         </return-value>
48753       </method>
48754       <method name="set_sort_func"
48755               c:identifier="gtk_recent_chooser_set_sort_func"
48756               version="2.10">
48757         <doc xml:whitespace="preserve">Sets the comparison function used when sorting to be @sort_func.  If
48758 the @chooser has the sort type set to #GTK_RECENT_SORT_CUSTOM then
48759 the chooser will sort using this function.
48760 To the comparison function will be passed two #GtkRecentInfo structs and
48761 item comes before the second, zero if the two items are equal and
48762 a negative integer if the first item comes after the second.</doc>
48763         <return-value transfer-ownership="none">
48764           <type name="none" c:type="void"/>
48765         </return-value>
48766         <parameters>
48767           <parameter name="sort_func"
48768                      transfer-ownership="none"
48769                      scope="notified"
48770                      closure="2"
48771                      destroy="3">
48772             <doc xml:whitespace="preserve">the comparison function</doc>
48773             <type name="RecentSortFunc" c:type="GtkRecentSortFunc"/>
48774           </parameter>
48775           <parameter name="sort_data" transfer-ownership="none" allow-none="1">
48776             <doc xml:whitespace="preserve">user data to pass to @sort_func, or %NULL</doc>
48777             <type name="any" c:type="gpointer"/>
48778           </parameter>
48779           <parameter name="data_destroy"
48780                      transfer-ownership="none"
48781                      allow-none="1"
48782                      scope="call">
48783             <doc xml:whitespace="preserve">destroy notifier for @sort_data, or %NULL</doc>
48784             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
48785           </parameter>
48786         </parameters>
48787       </method>
48788       <method name="set_current_uri"
48789               c:identifier="gtk_recent_chooser_set_current_uri"
48790               version="2.10"
48791               throws="1">
48792         <doc xml:whitespace="preserve">Sets @uri as the current URI for @chooser.</doc>
48793         <return-value transfer-ownership="none">
48794           <doc xml:whitespace="preserve">%TRUE if the URI was found.</doc>
48795           <type name="boolean" c:type="gboolean"/>
48796         </return-value>
48797         <parameters>
48798           <parameter name="uri" transfer-ownership="none">
48799             <doc xml:whitespace="preserve">a URI</doc>
48800             <type name="utf8" c:type="gchar*"/>
48801           </parameter>
48802         </parameters>
48803       </method>
48804       <method name="get_current_uri"
48805               c:identifier="gtk_recent_chooser_get_current_uri"
48806               version="2.10">
48807         <doc xml:whitespace="preserve">Gets the URI currently selected by @chooser.</doc>
48808         <return-value transfer-ownership="full">
48809           <doc xml:whitespace="preserve">a newly allocated string holding a URI.</doc>
48810           <type name="utf8" c:type="gchar*"/>
48811         </return-value>
48812       </method>
48813       <method name="get_current_item"
48814               c:identifier="gtk_recent_chooser_get_current_item"
48815               version="2.10">
48816         <doc xml:whitespace="preserve">Gets the #GtkRecentInfo currently selected by @chooser.
48817 when you have finished using it.</doc>
48818         <return-value transfer-ownership="full">
48819           <doc xml:whitespace="preserve">a #GtkRecentInfo.  Use gtk_recent_info_unref() when</doc>
48820           <type name="RecentInfo" c:type="GtkRecentInfo*"/>
48821         </return-value>
48822       </method>
48823       <method name="select_uri"
48824               c:identifier="gtk_recent_chooser_select_uri"
48825               version="2.10"
48826               throws="1">
48827         <doc xml:whitespace="preserve">Selects @uri inside @chooser.</doc>
48828         <return-value transfer-ownership="none">
48829           <doc xml:whitespace="preserve">%TRUE if @uri was found.</doc>
48830           <type name="boolean" c:type="gboolean"/>
48831         </return-value>
48832         <parameters>
48833           <parameter name="uri" transfer-ownership="none">
48834             <doc xml:whitespace="preserve">a URI</doc>
48835             <type name="utf8" c:type="gchar*"/>
48836           </parameter>
48837         </parameters>
48838       </method>
48839       <method name="unselect_uri"
48840               c:identifier="gtk_recent_chooser_unselect_uri"
48841               version="2.10">
48842         <doc xml:whitespace="preserve">Unselects @uri inside @chooser.</doc>
48843         <return-value transfer-ownership="none">
48844           <type name="none" c:type="void"/>
48845         </return-value>
48846         <parameters>
48847           <parameter name="uri" transfer-ownership="none">
48848             <doc xml:whitespace="preserve">a URI</doc>
48849             <type name="utf8" c:type="gchar*"/>
48850           </parameter>
48851         </parameters>
48852       </method>
48853       <method name="select_all"
48854               c:identifier="gtk_recent_chooser_select_all"
48855               version="2.10">
48856         <doc xml:whitespace="preserve">Selects all the items inside @chooser, if the @chooser supports
48857 multiple selection.</doc>
48858         <return-value transfer-ownership="none">
48859           <type name="none" c:type="void"/>
48860         </return-value>
48861       </method>
48862       <method name="unselect_all"
48863               c:identifier="gtk_recent_chooser_unselect_all"
48864               version="2.10">
48865         <doc xml:whitespace="preserve">Unselects all the items inside @chooser.</doc>
48866         <return-value transfer-ownership="none">
48867           <type name="none" c:type="void"/>
48868         </return-value>
48869       </method>
48870       <method name="get_items"
48871               c:identifier="gtk_recent_chooser_get_items"
48872               version="2.10">
48873         <doc xml:whitespace="preserve">Gets the list of recently used resources in form of #GtkRecentInfo objects.
48874 The return value of this function is affected by the "sort-type" and
48875 "limit" properties of @chooser.
48876 list of #GtkRecentInfo objects.  You should
48877 use gtk_recent_info_unref() on every item of the list, and then free
48878 the list itself using g_list_free().</doc>
48879         <return-value transfer-ownership="full">
48880           <doc xml:whitespace="preserve">A newly allocated</doc>
48881           <type name="GLib.List" c:type="GList*">
48882             <type name="RecentInfo"/>
48883           </type>
48884         </return-value>
48885       </method>
48886       <method name="get_uris"
48887               c:identifier="gtk_recent_chooser_get_uris"
48888               version="2.10">
48889         <doc xml:whitespace="preserve">Gets the URI of the recently used resources.
48890 The return value of this function is affected by the "sort-type" and "limit"
48891 properties of @chooser.
48892 Since the returned array is %NULL terminated, @length may be %NULL.
48893 g_strfreev() to free it.</doc>
48894         <return-value transfer-ownership="full">
48895           <doc xml:whitespace="preserve">A newly allocated, %NULL terminated array of strings. Use</doc>
48896           <array c:type="gchar**">
48897             <type name="utf8"/>
48898           </array>
48899         </return-value>
48900         <parameters>
48901           <parameter name="length"
48902                      direction="out"
48903                      caller-allocates="0"
48904                      transfer-ownership="full"
48905                      allow-none="1">
48906             <doc xml:whitespace="preserve">return location for a the length of the URI list, or %NULL</doc>
48907             <type name="gsize" c:type="gsize*"/>
48908           </parameter>
48909         </parameters>
48910       </method>
48911       <method name="add_filter"
48912               c:identifier="gtk_recent_chooser_add_filter"
48913               version="2.10">
48914         <doc xml:whitespace="preserve">Adds @filter to the list of #GtkRecentFilter objects held by @chooser.
48915 If no previous filter objects were defined, this function will call
48916 gtk_recent_chooser_set_filter().</doc>
48917         <return-value transfer-ownership="none">
48918           <type name="none" c:type="void"/>
48919         </return-value>
48920         <parameters>
48921           <parameter name="filter" transfer-ownership="none">
48922             <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
48923             <type name="RecentFilter" c:type="GtkRecentFilter*"/>
48924           </parameter>
48925         </parameters>
48926       </method>
48927       <method name="remove_filter"
48928               c:identifier="gtk_recent_chooser_remove_filter"
48929               version="2.10">
48930         <doc xml:whitespace="preserve">Removes @filter from the list of #GtkRecentFilter objects held by @chooser.</doc>
48931         <return-value transfer-ownership="none">
48932           <type name="none" c:type="void"/>
48933         </return-value>
48934         <parameters>
48935           <parameter name="filter" transfer-ownership="none">
48936             <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
48937             <type name="RecentFilter" c:type="GtkRecentFilter*"/>
48938           </parameter>
48939         </parameters>
48940       </method>
48941       <method name="list_filters"
48942               c:identifier="gtk_recent_chooser_list_filters"
48943               version="2.10">
48944         <doc xml:whitespace="preserve">Gets the #GtkRecentFilter objects held by @chooser.
48945 of #GtkRecentFilter objects.  You
48946 should just free the returned list using g_slist_free().</doc>
48947         <return-value transfer-ownership="container">
48948           <doc xml:whitespace="preserve">A singly linked list</doc>
48949           <type name="GLib.SList" c:type="GSList*">
48950             <type name="RecentFilter"/>
48951           </type>
48952         </return-value>
48953       </method>
48954       <method name="set_filter"
48955               c:identifier="gtk_recent_chooser_set_filter"
48956               version="2.10">
48957         <doc xml:whitespace="preserve">Sets @filter as the current #GtkRecentFilter object used by @chooser
48958 to affect the displayed recently used resources.</doc>
48959         <return-value transfer-ownership="none">
48960           <type name="none" c:type="void"/>
48961         </return-value>
48962         <parameters>
48963           <parameter name="filter" transfer-ownership="none">
48964             <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
48965             <type name="RecentFilter" c:type="GtkRecentFilter*"/>
48966           </parameter>
48967         </parameters>
48968       </method>
48969       <method name="get_filter"
48970               c:identifier="gtk_recent_chooser_get_filter"
48971               version="2.10">
48972         <doc xml:whitespace="preserve">Gets the #GtkRecentFilter object currently used by @chooser to affect
48973 the display of the recently used resources.</doc>
48974         <return-value transfer-ownership="full">
48975           <doc xml:whitespace="preserve">a #GtkRecentFilter object.</doc>
48976           <type name="RecentFilter" c:type="GtkRecentFilter*"/>
48977         </return-value>
48978       </method>
48979       <property name="filter"
48980                 version="2.10"
48981                 writable="1"
48982                 transfer-ownership="none">
48983         <doc xml:whitespace="preserve">The #GtkRecentFilter object to be used when displaying
48984 the recently used resources.</doc>
48985         <type name="RecentFilter" c:type="GtkRecentFilter"/>
48986       </property>
48987       <property name="limit"
48988                 version="2.10"
48989                 writable="1"
48990                 transfer-ownership="none">
48991         <doc xml:whitespace="preserve">The maximum number of recently used resources to be displayed,
48992 or -1 to display all items. By default, the
48993 override that limit on a particular instance of #GtkRecentChooser
48994 by setting this property.</doc>
48995         <type name="int" c:type="gint"/>
48996       </property>
48997       <property name="local-only"
48998                 version="2.10"
48999                 writable="1"
49000                 transfer-ownership="none">
49001         <doc xml:whitespace="preserve">Whether this #GtkRecentChooser should display only local (file:)
49002 resources.</doc>
49003         <type name="boolean" c:type="gboolean"/>
49004       </property>
49005       <property name="recent-manager"
49006                 version="2.10"
49007                 readable="0"
49008                 writable="1"
49009                 construct-only="1"
49010                 transfer-ownership="none">
49011         <doc xml:whitespace="preserve">The #GtkRecentManager instance used by the #GtkRecentChooser to
49012 display the list of recently used resources.</doc>
49013         <type name="RecentManager" c:type="GtkRecentManager"/>
49014       </property>
49015       <property name="select-multiple"
49016                 version="2.10"
49017                 writable="1"
49018                 transfer-ownership="none">
49019         <doc xml:whitespace="preserve">Allow the user to select multiple resources.</doc>
49020         <type name="boolean" c:type="gboolean"/>
49021       </property>
49022       <property name="show-icons"
49023                 version="2.10"
49024                 writable="1"
49025                 transfer-ownership="none">
49026         <doc xml:whitespace="preserve">Whether this #GtkRecentChooser should display an icon near the item.</doc>
49027         <type name="boolean" c:type="gboolean"/>
49028       </property>
49029       <property name="show-not-found"
49030                 version="2.10"
49031                 writable="1"
49032                 transfer-ownership="none">
49033         <doc xml:whitespace="preserve">Whether this #GtkRecentChooser should display the recently used resources
49034 even if not present anymore. Setting this to %FALSE will perform a
49035 potentially expensive check on every local resource (every remote
49036 resource will always be displayed).</doc>
49037         <type name="boolean" c:type="gboolean"/>
49038       </property>
49039       <property name="show-private" writable="1" transfer-ownership="none">
49040         <type name="boolean" c:type="gboolean"/>
49041       </property>
49042       <property name="show-tips"
49043                 version="2.10"
49044                 writable="1"
49045                 transfer-ownership="none">
49046         <doc xml:whitespace="preserve">Whether this #GtkRecentChooser should display a tooltip containing the
49047 full path of the recently used resources.</doc>
49048         <type name="boolean" c:type="gboolean"/>
49049       </property>
49050       <property name="sort-type"
49051                 version="2.10"
49052                 writable="1"
49053                 transfer-ownership="none">
49054         <doc xml:whitespace="preserve">Sorting order to be used when displaying the recently used resources.</doc>
49055         <type name="RecentSortType" c:type="GtkRecentSortType"/>
49056       </property>
49057       <glib:signal name="item-activated">
49058         <return-value transfer-ownership="full">
49059           <type name="none" c:type="void"/>
49060         </return-value>
49061       </glib:signal>
49062       <glib:signal name="selection-changed">
49063         <return-value transfer-ownership="full">
49064           <type name="none" c:type="void"/>
49065         </return-value>
49066       </glib:signal>
49067     </interface>
49068     <class name="RecentChooserDialog"
49069            c:type="GtkRecentChooserDialog"
49070            parent="Dialog"
49071            glib:type-name="GtkRecentChooserDialog"
49072            glib:get-type="gtk_recent_chooser_dialog_get_type"
49073            glib:type-struct="RecentChooserDialogClass">
49074       <implements name="Atk.ImplementorIface"/>
49075       <implements name="Buildable"/>
49076       <implements name="RecentChooser"/>
49077       <constructor name="new"
49078                    c:identifier="gtk_recent_chooser_dialog_new"
49079                    version="2.10"
49080                    introspectable="0">
49081         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserDialog.  This function is analogous to
49082 gtk_dialog_new_with_buttons().</doc>
49083         <return-value transfer-ownership="full">
49084           <doc xml:whitespace="preserve">a new #GtkRecentChooserDialog</doc>
49085           <type name="RecentChooserDialog" c:type="GtkWidget*"/>
49086         </return-value>
49087         <parameters>
49088           <parameter name="title" transfer-ownership="none" allow-none="1">
49089             <doc xml:whitespace="preserve">Title of the dialog, or %NULL</doc>
49090             <type name="utf8" c:type="gchar*"/>
49091           </parameter>
49092           <parameter name="parent" transfer-ownership="none" allow-none="1">
49093             <doc xml:whitespace="preserve">Transient parent of the dialog, or %NULL,</doc>
49094             <type name="Window" c:type="GtkWindow*"/>
49095           </parameter>
49096           <parameter name="first_button_text"
49097                      transfer-ownership="none"
49098                      allow-none="1">
49099             <doc xml:whitespace="preserve">stock ID or text to go in the first button, or %NULL</doc>
49100             <type name="utf8" c:type="gchar*"/>
49101           </parameter>
49102           <parameter transfer-ownership="none">
49103             <varargs>
49104             </varargs>
49105           </parameter>
49106         </parameters>
49107       </constructor>
49108       <constructor name="new_for_manager"
49109                    c:identifier="gtk_recent_chooser_dialog_new_for_manager"
49110                    version="2.10"
49111                    introspectable="0">
49112         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserDialog with a specified recent manager.
49113 This is useful if you have implemented your own recent manager, or if you
49114 have a customized instance of a #GtkRecentManager object.</doc>
49115         <return-value transfer-ownership="full">
49116           <doc xml:whitespace="preserve">a new #GtkRecentChooserDialog</doc>
49117           <type name="RecentChooserDialog" c:type="GtkWidget*"/>
49118         </return-value>
49119         <parameters>
49120           <parameter name="title" transfer-ownership="none" allow-none="1">
49121             <doc xml:whitespace="preserve">Title of the dialog, or %NULL</doc>
49122             <type name="utf8" c:type="gchar*"/>
49123           </parameter>
49124           <parameter name="parent" transfer-ownership="none" allow-none="1">
49125             <doc xml:whitespace="preserve">Transient parent of the dialog, or %NULL,</doc>
49126             <type name="Window" c:type="GtkWindow*"/>
49127           </parameter>
49128           <parameter name="manager" transfer-ownership="none">
49129             <doc xml:whitespace="preserve">a #GtkRecentManager</doc>
49130             <type name="RecentManager" c:type="GtkRecentManager*"/>
49131           </parameter>
49132           <parameter name="first_button_text"
49133                      transfer-ownership="none"
49134                      allow-none="1">
49135             <doc xml:whitespace="preserve">stock ID or text to go in the first button, or %NULL</doc>
49136             <type name="utf8" c:type="gchar*"/>
49137           </parameter>
49138           <parameter transfer-ownership="none">
49139             <varargs>
49140             </varargs>
49141           </parameter>
49142         </parameters>
49143       </constructor>
49144       <field name="parent_instance">
49145         <type name="Dialog" c:type="GtkDialog"/>
49146       </field>
49147       <field name="priv">
49148         <type name="RecentChooserDialogPrivate"
49149               c:type="GtkRecentChooserDialogPrivate*"/>
49150       </field>
49151     </class>
49152     <record name="RecentChooserDialogClass"
49153             c:type="GtkRecentChooserDialogClass"
49154             glib:is-gtype-struct-for="RecentChooserDialog">
49155       <field name="parent_class">
49156         <type name="DialogClass" c:type="GtkDialogClass"/>
49157       </field>
49158     </record>
49159     <record name="RecentChooserDialogPrivate"
49160             c:type="GtkRecentChooserDialogPrivate">
49161     </record>
49162     <enumeration name="RecentChooserError"
49163                  glib:type-name="GtkRecentChooserError"
49164                  glib:get-type="gtk_recent_chooser_error_get_type"
49165                  c:type="GtkRecentChooserError"
49166                  glib:error-quark="gtk_recent_chooser_error_quark">
49167       <member name="not_found"
49168               value="0"
49169               c:identifier="GTK_RECENT_CHOOSER_ERROR_NOT_FOUND"
49170               glib:nick="not-found"/>
49171       <member name="invalid_uri"
49172               value="1"
49173               c:identifier="GTK_RECENT_CHOOSER_ERROR_INVALID_URI"
49174               glib:nick="invalid-uri"/>
49175     </enumeration>
49176     <record name="RecentChooserIface"
49177             c:type="GtkRecentChooserIface"
49178             glib:is-gtype-struct-for="RecentChooser">
49179       <field name="base_iface">
49180         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
49181       </field>
49182       <field name="set_current_uri">
49183         <callback name="set_current_uri" c:type="set_current_uri" throws="1">
49184           <return-value transfer-ownership="none">
49185             <doc xml:whitespace="preserve">%TRUE if the URI was found.</doc>
49186             <type name="boolean" c:type="gboolean"/>
49187           </return-value>
49188           <parameters>
49189             <parameter name="chooser" transfer-ownership="none">
49190               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49191             </parameter>
49192             <parameter name="uri" transfer-ownership="none">
49193               <doc xml:whitespace="preserve">a URI</doc>
49194               <type name="utf8" c:type="gchar*"/>
49195             </parameter>
49196           </parameters>
49197         </callback>
49198       </field>
49199       <field name="get_current_uri">
49200         <callback name="get_current_uri" c:type="get_current_uri">
49201           <return-value transfer-ownership="full">
49202             <doc xml:whitespace="preserve">a newly allocated string holding a URI.</doc>
49203             <type name="utf8" c:type="gchar*"/>
49204           </return-value>
49205           <parameters>
49206             <parameter name="chooser" transfer-ownership="none">
49207               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49208             </parameter>
49209           </parameters>
49210         </callback>
49211       </field>
49212       <field name="select_uri">
49213         <callback name="select_uri" c:type="select_uri" throws="1">
49214           <return-value transfer-ownership="none">
49215             <doc xml:whitespace="preserve">%TRUE if @uri was found.</doc>
49216             <type name="boolean" c:type="gboolean"/>
49217           </return-value>
49218           <parameters>
49219             <parameter name="chooser" transfer-ownership="none">
49220               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49221             </parameter>
49222             <parameter name="uri" transfer-ownership="none">
49223               <doc xml:whitespace="preserve">a URI</doc>
49224               <type name="utf8" c:type="gchar*"/>
49225             </parameter>
49226           </parameters>
49227         </callback>
49228       </field>
49229       <field name="unselect_uri">
49230         <callback name="unselect_uri" c:type="unselect_uri">
49231           <return-value transfer-ownership="none">
49232             <type name="none" c:type="void"/>
49233           </return-value>
49234           <parameters>
49235             <parameter name="chooser" transfer-ownership="none">
49236               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49237             </parameter>
49238             <parameter name="uri" transfer-ownership="none">
49239               <doc xml:whitespace="preserve">a URI</doc>
49240               <type name="utf8" c:type="gchar*"/>
49241             </parameter>
49242           </parameters>
49243         </callback>
49244       </field>
49245       <field name="select_all">
49246         <callback name="select_all" c:type="select_all">
49247           <return-value transfer-ownership="none">
49248             <type name="none" c:type="void"/>
49249           </return-value>
49250           <parameters>
49251             <parameter name="chooser" transfer-ownership="none">
49252               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49253             </parameter>
49254           </parameters>
49255         </callback>
49256       </field>
49257       <field name="unselect_all">
49258         <callback name="unselect_all" c:type="unselect_all">
49259           <return-value transfer-ownership="none">
49260             <type name="none" c:type="void"/>
49261           </return-value>
49262           <parameters>
49263             <parameter name="chooser" transfer-ownership="none">
49264               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49265             </parameter>
49266           </parameters>
49267         </callback>
49268       </field>
49269       <field name="get_items">
49270         <callback name="get_items" c:type="get_items">
49271           <return-value transfer-ownership="full">
49272             <doc xml:whitespace="preserve">A newly allocated</doc>
49273             <type name="GLib.List" c:type="GList*">
49274               <type name="RecentInfo"/>
49275             </type>
49276           </return-value>
49277           <parameters>
49278             <parameter name="chooser" transfer-ownership="none">
49279               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49280             </parameter>
49281           </parameters>
49282         </callback>
49283       </field>
49284       <field name="get_recent_manager">
49285         <callback name="get_recent_manager" c:type="get_recent_manager">
49286           <return-value transfer-ownership="full">
49287             <type name="RecentManager" c:type="GtkRecentManager*"/>
49288           </return-value>
49289           <parameters>
49290             <parameter name="chooser" transfer-ownership="none">
49291               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49292             </parameter>
49293           </parameters>
49294         </callback>
49295       </field>
49296       <field name="add_filter">
49297         <callback name="add_filter" c:type="add_filter">
49298           <return-value transfer-ownership="none">
49299             <type name="none" c:type="void"/>
49300           </return-value>
49301           <parameters>
49302             <parameter name="chooser" transfer-ownership="none">
49303               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49304             </parameter>
49305             <parameter name="filter" transfer-ownership="none">
49306               <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
49307               <type name="RecentFilter" c:type="GtkRecentFilter*"/>
49308             </parameter>
49309           </parameters>
49310         </callback>
49311       </field>
49312       <field name="remove_filter">
49313         <callback name="remove_filter" c:type="remove_filter">
49314           <return-value transfer-ownership="none">
49315             <type name="none" c:type="void"/>
49316           </return-value>
49317           <parameters>
49318             <parameter name="chooser" transfer-ownership="none">
49319               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49320             </parameter>
49321             <parameter name="filter" transfer-ownership="none">
49322               <doc xml:whitespace="preserve">a #GtkRecentFilter</doc>
49323               <type name="RecentFilter" c:type="GtkRecentFilter*"/>
49324             </parameter>
49325           </parameters>
49326         </callback>
49327       </field>
49328       <field name="list_filters">
49329         <callback name="list_filters" c:type="list_filters">
49330           <return-value transfer-ownership="container">
49331             <doc xml:whitespace="preserve">A singly linked list</doc>
49332             <type name="GLib.SList" c:type="GSList*">
49333               <type name="RecentFilter"/>
49334             </type>
49335           </return-value>
49336           <parameters>
49337             <parameter name="chooser" transfer-ownership="none">
49338               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49339             </parameter>
49340           </parameters>
49341         </callback>
49342       </field>
49343       <field name="set_sort_func">
49344         <callback name="set_sort_func" c:type="set_sort_func">
49345           <return-value transfer-ownership="none">
49346             <type name="none" c:type="void"/>
49347           </return-value>
49348           <parameters>
49349             <parameter name="chooser" transfer-ownership="none">
49350               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49351             </parameter>
49352             <parameter name="sort_func" transfer-ownership="none">
49353               <type name="RecentSortFunc" c:type="GtkRecentSortFunc"/>
49354             </parameter>
49355             <parameter name="data" transfer-ownership="none">
49356               <type name="any" c:type="gpointer"/>
49357             </parameter>
49358             <parameter name="destroy" transfer-ownership="none">
49359               <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
49360             </parameter>
49361           </parameters>
49362         </callback>
49363       </field>
49364       <field name="item_activated">
49365         <callback name="item_activated" c:type="item_activated">
49366           <return-value transfer-ownership="none">
49367             <type name="none" c:type="void"/>
49368           </return-value>
49369           <parameters>
49370             <parameter name="chooser" transfer-ownership="none">
49371               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49372             </parameter>
49373           </parameters>
49374         </callback>
49375       </field>
49376       <field name="selection_changed">
49377         <callback name="selection_changed" c:type="selection_changed">
49378           <return-value transfer-ownership="none">
49379             <type name="none" c:type="void"/>
49380           </return-value>
49381           <parameters>
49382             <parameter name="chooser" transfer-ownership="none">
49383               <type name="RecentChooser" c:type="GtkRecentChooser*"/>
49384             </parameter>
49385           </parameters>
49386         </callback>
49387       </field>
49388     </record>
49389     <class name="RecentChooserMenu"
49390            c:type="GtkRecentChooserMenu"
49391            parent="Menu"
49392            glib:type-name="GtkRecentChooserMenu"
49393            glib:get-type="gtk_recent_chooser_menu_get_type"
49394            glib:type-struct="RecentChooserMenuClass">
49395       <implements name="Activatable"/>
49396       <implements name="Atk.ImplementorIface"/>
49397       <implements name="Buildable"/>
49398       <implements name="RecentChooser"/>
49399       <constructor name="new"
49400                    c:identifier="gtk_recent_chooser_menu_new"
49401                    version="2.10">
49402         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserMenu widget.
49403 This kind of widget shows the list of recently used resources as
49404 a menu, each item as a menu item.  Each item inside the menu might
49405 have an icon, representing its MIME type, and a number, for mnemonic
49406 access.
49407 This widget implements the #GtkRecentChooser interface.
49408 This widget creates its own #GtkRecentManager object.  See the
49409 gtk_recent_chooser_menu_new_for_manager() function to know how to create
49410 a #GtkRecentChooserMenu widget bound to another #GtkRecentManager object.</doc>
49411         <return-value transfer-ownership="full">
49412           <doc xml:whitespace="preserve">a new #GtkRecentChooserMenu</doc>
49413           <type name="RecentChooserMenu" c:type="GtkWidget*"/>
49414         </return-value>
49415       </constructor>
49416       <constructor name="new_for_manager"
49417                    c:identifier="gtk_recent_chooser_menu_new_for_manager"
49418                    version="2.10">
49419         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserMenu widget using @manager as
49420 the underlying recently used resources manager.
49421 This is useful if you have implemented your own recent manager,
49422 or if you have a customized instance of a #GtkRecentManager
49423 object or if you wish to share a common #GtkRecentManager object
49424 among multiple #GtkRecentChooser widgets.</doc>
49425         <return-value transfer-ownership="full">
49426           <doc xml:whitespace="preserve">a new #GtkRecentChooserMenu, bound to @manager.</doc>
49427           <type name="RecentChooserMenu" c:type="GtkWidget*"/>
49428         </return-value>
49429         <parameters>
49430           <parameter name="manager" transfer-ownership="none">
49431             <doc xml:whitespace="preserve">a #GtkRecentManager</doc>
49432             <type name="RecentManager" c:type="GtkRecentManager*"/>
49433           </parameter>
49434         </parameters>
49435       </constructor>
49436       <method name="get_show_numbers"
49437               c:identifier="gtk_recent_chooser_menu_get_show_numbers"
49438               version="2.10">
49439         <doc xml:whitespace="preserve">Returns the value set by gtk_recent_chooser_menu_set_show_numbers().</doc>
49440         <return-value transfer-ownership="none">
49441           <doc xml:whitespace="preserve">%TRUE if numbers should be shown.</doc>
49442           <type name="boolean" c:type="gboolean"/>
49443         </return-value>
49444       </method>
49445       <method name="set_show_numbers"
49446               c:identifier="gtk_recent_chooser_menu_set_show_numbers"
49447               version="2.10">
49448         <doc xml:whitespace="preserve">Sets whether a number should be added to the items of @menu.  The
49449 numbers are shown to provide a unique character for a mnemonic to
49450 be used inside ten menu item's label.  Only the first the items
49451 get a number to avoid clashes.</doc>
49452         <return-value transfer-ownership="none">
49453           <type name="none" c:type="void"/>
49454         </return-value>
49455         <parameters>
49456           <parameter name="show_numbers" transfer-ownership="none">
49457             <doc xml:whitespace="preserve">whether to show numbers</doc>
49458             <type name="boolean" c:type="gboolean"/>
49459           </parameter>
49460         </parameters>
49461       </method>
49462       <property name="show-numbers" writable="1" transfer-ownership="none">
49463         <type name="boolean" c:type="gboolean"/>
49464       </property>
49465       <field name="parent_instance">
49466         <type name="Menu" c:type="GtkMenu"/>
49467       </field>
49468       <field name="priv">
49469         <type name="RecentChooserMenuPrivate"
49470               c:type="GtkRecentChooserMenuPrivate*"/>
49471       </field>
49472     </class>
49473     <record name="RecentChooserMenuClass"
49474             c:type="GtkRecentChooserMenuClass"
49475             glib:is-gtype-struct-for="RecentChooserMenu">
49476       <field name="parent_class">
49477         <type name="MenuClass" c:type="GtkMenuClass"/>
49478       </field>
49479       <field name="recent1">
49480         <callback name="recent1" c:type="gtk_recent1">
49481           <return-value transfer-ownership="none">
49482             <type name="none" c:type="void"/>
49483           </return-value>
49484         </callback>
49485       </field>
49486       <field name="recent2">
49487         <callback name="recent2" c:type="gtk_recent2">
49488           <return-value transfer-ownership="none">
49489             <type name="none" c:type="void"/>
49490           </return-value>
49491         </callback>
49492       </field>
49493       <field name="recent3">
49494         <callback name="recent3" c:type="gtk_recent3">
49495           <return-value transfer-ownership="none">
49496             <type name="none" c:type="void"/>
49497           </return-value>
49498         </callback>
49499       </field>
49500       <field name="recent4">
49501         <callback name="recent4" c:type="gtk_recent4">
49502           <return-value transfer-ownership="none">
49503             <type name="none" c:type="void"/>
49504           </return-value>
49505         </callback>
49506       </field>
49507     </record>
49508     <record name="RecentChooserMenuPrivate"
49509             c:type="GtkRecentChooserMenuPrivate">
49510     </record>
49511     <class name="RecentChooserWidget"
49512            c:type="GtkRecentChooserWidget"
49513            parent="VBox"
49514            glib:type-name="GtkRecentChooserWidget"
49515            glib:get-type="gtk_recent_chooser_widget_get_type"
49516            glib:type-struct="RecentChooserWidgetClass">
49517       <implements name="Atk.ImplementorIface"/>
49518       <implements name="Buildable"/>
49519       <implements name="Orientable"/>
49520       <implements name="RecentChooser"/>
49521       <constructor name="new"
49522                    c:identifier="gtk_recent_chooser_widget_new"
49523                    version="2.10">
49524         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserWidget object.  This is an embeddable widget
49525 used to access the recently used resources list.</doc>
49526         <return-value transfer-ownership="full">
49527           <doc xml:whitespace="preserve">a new #GtkRecentChooserWidget</doc>
49528           <type name="RecentChooserWidget" c:type="GtkWidget*"/>
49529         </return-value>
49530       </constructor>
49531       <constructor name="new_for_manager"
49532                    c:identifier="gtk_recent_chooser_widget_new_for_manager"
49533                    version="2.10">
49534         <doc xml:whitespace="preserve">Creates a new #GtkRecentChooserWidget with a specified recent manager.
49535 This is useful if you have implemented your own recent manager, or if you
49536 have a customized instance of a #GtkRecentManager object.</doc>
49537         <return-value transfer-ownership="full">
49538           <doc xml:whitespace="preserve">a new #GtkRecentChooserWidget</doc>
49539           <type name="RecentChooserWidget" c:type="GtkWidget*"/>
49540         </return-value>
49541         <parameters>
49542           <parameter name="manager" transfer-ownership="none">
49543             <doc xml:whitespace="preserve">a #GtkRecentManager</doc>
49544             <type name="RecentManager" c:type="GtkRecentManager*"/>
49545           </parameter>
49546         </parameters>
49547       </constructor>
49548       <field name="parent_instance">
49549         <type name="VBox" c:type="GtkVBox"/>
49550       </field>
49551       <field name="priv">
49552         <type name="RecentChooserWidgetPrivate"
49553               c:type="GtkRecentChooserWidgetPrivate*"/>
49554       </field>
49555     </class>
49556     <record name="RecentChooserWidgetClass"
49557             c:type="GtkRecentChooserWidgetClass"
49558             glib:is-gtype-struct-for="RecentChooserWidget">
49559       <field name="parent_class">
49560         <type name="VBoxClass" c:type="GtkVBoxClass"/>
49561       </field>
49562     </record>
49563     <record name="RecentChooserWidgetPrivate"
49564             c:type="GtkRecentChooserWidgetPrivate">
49565     </record>
49566     <record name="RecentData" c:type="GtkRecentData">
49567       <doc xml:whitespace="preserve">Meta-data to be passed to gtk_recent_manager_add_full() when
49568 registering a recently used resource.</doc>
49569       <field name="display_name" writable="1">
49570         <type name="utf8" c:type="gchar*"/>
49571       </field>
49572       <field name="description" writable="1">
49573         <type name="utf8" c:type="gchar*"/>
49574       </field>
49575       <field name="mime_type" writable="1">
49576         <type name="utf8" c:type="gchar*"/>
49577       </field>
49578       <field name="app_name" writable="1">
49579         <type name="utf8" c:type="gchar*"/>
49580       </field>
49581       <field name="app_exec" writable="1">
49582         <type name="utf8" c:type="gchar*"/>
49583       </field>
49584       <field name="groups" writable="1">
49585         <type name="utf8" c:type="gchar**"/>
49586       </field>
49587       <field name="is_private" writable="1">
49588         <type name="boolean" c:type="gboolean"/>
49589       </field>
49590     </record>
49591     <class name="RecentFilter"
49592            c:type="GtkRecentFilter"
49593            parent="Object"
49594            glib:type-name="GtkRecentFilter"
49595            glib:get-type="gtk_recent_filter_get_type">
49596       <constructor name="new"
49597                    c:identifier="gtk_recent_filter_new"
49598                    version="2.10">
49599         <doc xml:whitespace="preserve">Creates a new #GtkRecentFilter with no rules added to it.
49600 Such filter does not accept any recently used resources, so is not
49601 particularly useful until you add rules with
49602 gtk_recent_filter_add_pattern(), gtk_recent_filter_add_mime_type(),
49603 gtk_recent_filter_add_application(), gtk_recent_filter_add_age().
49604 To create a filter that accepts any recently used resource, use:
49605 |[
49606 GtkRecentFilter *filter = gtk_recent_filter_new ();
49607 gtk_recent_filter_add_pattern (filter, "*");
49608 ]|</doc>
49609         <return-value transfer-ownership="full">
49610           <doc xml:whitespace="preserve">a new #GtkRecentFilter</doc>
49611           <type name="RecentFilter" c:type="GtkRecentFilter*"/>
49612         </return-value>
49613       </constructor>
49614       <method name="set_name"
49615               c:identifier="gtk_recent_filter_set_name"
49616               version="2.10">
49617         <doc xml:whitespace="preserve">Sets the human-readable name of the filter; this is the string
49618 that will be displayed in the recently used resources selector
49619 user interface if there is a selectable list of filters.</doc>
49620         <return-value transfer-ownership="none">
49621           <type name="none" c:type="void"/>
49622         </return-value>
49623         <parameters>
49624           <parameter name="name" transfer-ownership="none">
49625             <doc xml:whitespace="preserve">then human readable name of @filter</doc>
49626             <type name="utf8" c:type="gchar*"/>
49627           </parameter>
49628         </parameters>
49629       </method>
49630       <method name="get_name"
49631               c:identifier="gtk_recent_filter_get_name"
49632               version="2.10">
49633         <doc xml:whitespace="preserve">Gets the human-readable name for the filter.
49634 See gtk_recent_filter_set_name().
49635 is owned by the filter object and should not be freed.</doc>
49636         <return-value transfer-ownership="none">
49637           <doc xml:whitespace="preserve">the name of the filter, or %NULL.  The returned string</doc>
49638           <type name="utf8" c:type="gchar*"/>
49639         </return-value>
49640       </method>
49641       <method name="add_mime_type"
49642               c:identifier="gtk_recent_filter_add_mime_type"
49643               version="2.10">
49644         <doc xml:whitespace="preserve">Adds a rule that allows resources based on their registered MIME type.</doc>
49645         <return-value transfer-ownership="none">
49646           <type name="none" c:type="void"/>
49647         </return-value>
49648         <parameters>
49649           <parameter name="mime_type" transfer-ownership="none">
49650             <doc xml:whitespace="preserve">a MIME type</doc>
49651             <type name="utf8" c:type="gchar*"/>
49652           </parameter>
49653         </parameters>
49654       </method>
49655       <method name="add_pattern"
49656               c:identifier="gtk_recent_filter_add_pattern"
49657               version="2.10">
49658         <doc xml:whitespace="preserve">Adds a rule that allows resources based on a pattern matching their
49659 display name.</doc>
49660         <return-value transfer-ownership="none">
49661           <type name="none" c:type="void"/>
49662         </return-value>
49663         <parameters>
49664           <parameter name="pattern" transfer-ownership="none">
49665             <doc xml:whitespace="preserve">a file pattern</doc>
49666             <type name="utf8" c:type="gchar*"/>
49667           </parameter>
49668         </parameters>
49669       </method>
49670       <method name="add_pixbuf_formats"
49671               c:identifier="gtk_recent_filter_add_pixbuf_formats"
49672               version="2.10">
49673         <doc xml:whitespace="preserve">Adds a rule allowing image files in the formats supported
49674 by GdkPixbuf.</doc>
49675         <return-value transfer-ownership="none">
49676           <type name="none" c:type="void"/>
49677         </return-value>
49678       </method>
49679       <method name="add_application"
49680               c:identifier="gtk_recent_filter_add_application"
49681               version="2.10">
49682         <doc xml:whitespace="preserve">Adds a rule that allows resources based on the name of the application
49683 that has registered them.</doc>
49684         <return-value transfer-ownership="none">
49685           <type name="none" c:type="void"/>
49686         </return-value>
49687         <parameters>
49688           <parameter name="application" transfer-ownership="none">
49689             <doc xml:whitespace="preserve">an application name</doc>
49690             <type name="utf8" c:type="gchar*"/>
49691           </parameter>
49692         </parameters>
49693       </method>
49694       <method name="add_group"
49695               c:identifier="gtk_recent_filter_add_group"
49696               version="2.10">
49697         <doc xml:whitespace="preserve">Adds a rule that allows resources based on the name of the group
49698 to which they belong</doc>
49699         <return-value transfer-ownership="none">
49700           <type name="none" c:type="void"/>
49701         </return-value>
49702         <parameters>
49703           <parameter name="group" transfer-ownership="none">
49704             <doc xml:whitespace="preserve">a group name</doc>
49705             <type name="utf8" c:type="gchar*"/>
49706           </parameter>
49707         </parameters>
49708       </method>
49709       <method name="add_age"
49710               c:identifier="gtk_recent_filter_add_age"
49711               version="2.10">
49712         <doc xml:whitespace="preserve">Adds a rule that allows resources based on their age - that is, the number
49713 of days elapsed since they were last modified.</doc>
49714         <return-value transfer-ownership="none">
49715           <type name="none" c:type="void"/>
49716         </return-value>
49717         <parameters>
49718           <parameter name="days" transfer-ownership="none">
49719             <doc xml:whitespace="preserve">number of days</doc>
49720             <type name="int" c:type="gint"/>
49721           </parameter>
49722         </parameters>
49723       </method>
49724       <method name="add_custom"
49725               c:identifier="gtk_recent_filter_add_custom"
49726               version="2.10">
49727         <doc xml:whitespace="preserve">Adds a rule to a filter that allows resources based on a custom callback
49728 function. The bitfield @needed which is passed in provides information
49729 about what sorts of information that the filter function needs;
49730 this allows GTK+ to avoid retrieving expensive information when
49731 it isn't needed by the filter.</doc>
49732         <return-value transfer-ownership="none">
49733           <type name="none" c:type="void"/>
49734         </return-value>
49735         <parameters>
49736           <parameter name="needed" transfer-ownership="none">
49737             <doc xml:whitespace="preserve">bitfield of flags indicating the information that the custom filter function needs.</doc>
49738             <type name="RecentFilterFlags" c:type="GtkRecentFilterFlags"/>
49739           </parameter>
49740           <parameter name="func"
49741                      transfer-ownership="none"
49742                      scope="notified"
49743                      closure="3"
49744                      destroy="4">
49745             <doc xml:whitespace="preserve">callback function; if the function returns %TRUE, then the file will be displayed.</doc>
49746             <type name="RecentFilterFunc" c:type="GtkRecentFilterFunc"/>
49747           </parameter>
49748           <parameter name="data" transfer-ownership="none">
49749             <doc xml:whitespace="preserve">data to pass to @func</doc>
49750             <type name="any" c:type="gpointer"/>
49751           </parameter>
49752           <parameter name="data_destroy"
49753                      transfer-ownership="none"
49754                      scope="call">
49755             <doc xml:whitespace="preserve">function to call to free @data when it is no longer needed.</doc>
49756             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
49757           </parameter>
49758         </parameters>
49759       </method>
49760       <method name="get_needed"
49761               c:identifier="gtk_recent_filter_get_needed"
49762               version="2.10">
49763         <doc xml:whitespace="preserve">Gets the fields that need to be filled in for the structure
49764 passed to gtk_recent_filter_filter()
49765 This function will not typically be used by applications; it
49766 is intended principally for use in the implementation of
49767 #GtkRecentChooser.
49768 calling gtk_recent_filter_filter()</doc>
49769         <return-value transfer-ownership="full">
49770           <doc xml:whitespace="preserve">bitfield of flags indicating needed fields when</doc>
49771           <type name="RecentFilterFlags" c:type="GtkRecentFilterFlags"/>
49772         </return-value>
49773       </method>
49774       <method name="filter"
49775               c:identifier="gtk_recent_filter_filter"
49776               version="2.10">
49777         <doc xml:whitespace="preserve">Tests whether a file should be displayed according to @filter.
49778 The #GtkRecentFilterInfo structure @filter_info should include
49779 the fields returned from gtk_recent_filter_get_needed().
49780 This function will not typically be used by applications; it
49781 is intended principally for use in the implementation of
49782 #GtkRecentChooser.</doc>
49783         <return-value transfer-ownership="none">
49784           <doc xml:whitespace="preserve">%TRUE if the file should be displayed</doc>
49785           <type name="boolean" c:type="gboolean"/>
49786         </return-value>
49787         <parameters>
49788           <parameter name="filter_info" transfer-ownership="none">
49789             <doc xml:whitespace="preserve">a #GtkRecentFilterInfo structure containing information about a recently used resource</doc>
49790             <type name="RecentFilterInfo" c:type="GtkRecentFilterInfo*"/>
49791           </parameter>
49792         </parameters>
49793       </method>
49794     </class>
49795     <bitfield name="RecentFilterFlags"
49796               glib:type-name="GtkRecentFilterFlags"
49797               glib:get-type="gtk_recent_filter_flags_get_type"
49798               c:type="GtkRecentFilterFlags">
49799       <member name="uri"
49800               value="1"
49801               c:identifier="GTK_RECENT_FILTER_URI"
49802               glib:nick="uri"/>
49803       <member name="display_name"
49804               value="2"
49805               c:identifier="GTK_RECENT_FILTER_DISPLAY_NAME"
49806               glib:nick="display-name"/>
49807       <member name="mime_type"
49808               value="4"
49809               c:identifier="GTK_RECENT_FILTER_MIME_TYPE"
49810               glib:nick="mime-type"/>
49811       <member name="application"
49812               value="8"
49813               c:identifier="GTK_RECENT_FILTER_APPLICATION"
49814               glib:nick="application"/>
49815       <member name="group"
49816               value="16"
49817               c:identifier="GTK_RECENT_FILTER_GROUP"
49818               glib:nick="group"/>
49819       <member name="age"
49820               value="32"
49821               c:identifier="GTK_RECENT_FILTER_AGE"
49822               glib:nick="age"/>
49823     </bitfield>
49824     <callback name="RecentFilterFunc" c:type="GtkRecentFilterFunc">
49825       <return-value transfer-ownership="none">
49826         <type name="boolean" c:type="gboolean"/>
49827       </return-value>
49828       <parameters>
49829         <parameter name="filter_info" transfer-ownership="none">
49830           <type name="RecentFilterInfo" c:type="GtkRecentFilterInfo*"/>
49831         </parameter>
49832         <parameter name="user_data" transfer-ownership="none" closure="1">
49833           <type name="any" c:type="gpointer"/>
49834         </parameter>
49835       </parameters>
49836     </callback>
49837     <record name="RecentFilterInfo" c:type="GtkRecentFilterInfo">
49838       <field name="contains" writable="1">
49839         <type name="RecentFilterFlags" c:type="GtkRecentFilterFlags"/>
49840       </field>
49841       <field name="uri" writable="1">
49842         <type name="utf8" c:type="gchar*"/>
49843       </field>
49844       <field name="display_name" writable="1">
49845         <type name="utf8" c:type="gchar*"/>
49846       </field>
49847       <field name="mime_type" writable="1">
49848         <type name="utf8" c:type="gchar*"/>
49849       </field>
49850       <field name="applications" writable="1">
49851         <type name="utf8" c:type="gchar**"/>
49852       </field>
49853       <field name="groups" writable="1">
49854         <type name="utf8" c:type="gchar**"/>
49855       </field>
49856       <field name="age" writable="1">
49857         <type name="int" c:type="gint"/>
49858       </field>
49859     </record>
49860     <record name="RecentInfo"
49861             c:type="GtkRecentInfo"
49862             glib:type-name="GtkRecentInfo"
49863             glib:get-type="gtk_recent_info_get_type">
49864       <method name="ref" c:identifier="gtk_recent_info_ref" version="2.10">
49865         <doc xml:whitespace="preserve">Increases the reference count of @recent_info by one.
49866 by one.</doc>
49867         <return-value transfer-ownership="full">
49868           <doc xml:whitespace="preserve">the recent info object with its reference count increased</doc>
49869           <type name="RecentInfo" c:type="GtkRecentInfo*"/>
49870         </return-value>
49871       </method>
49872       <method name="unref" c:identifier="gtk_recent_info_unref" version="2.10">
49873         <doc xml:whitespace="preserve">Decreases the reference count of @info by one.  If the reference
49874 count reaches zero, @info is deallocated, and the memory freed.</doc>
49875         <return-value transfer-ownership="none">
49876           <type name="none" c:type="void"/>
49877         </return-value>
49878       </method>
49879       <method name="get_uri"
49880               c:identifier="gtk_recent_info_get_uri"
49881               version="2.10">
49882         <doc xml:whitespace="preserve">Gets the URI of the resource.
49883 owned by the recent manager, and should not be freed.</doc>
49884         <return-value transfer-ownership="none">
49885           <doc xml:whitespace="preserve">the URI of the resource.  The returned string is</doc>
49886           <type name="utf8" c:type="gchar*"/>
49887         </return-value>
49888       </method>
49889       <method name="get_display_name"
49890               c:identifier="gtk_recent_info_get_display_name"
49891               version="2.10">
49892         <doc xml:whitespace="preserve">Gets the name of the resource.  If none has been defined, the basename
49893 of the resource is obtained.
49894 is owned by the recent manager, and should not be freed.</doc>
49895         <return-value transfer-ownership="none">
49896           <doc xml:whitespace="preserve">the display name of the resource.  The returned string</doc>
49897           <type name="utf8" c:type="gchar*"/>
49898         </return-value>
49899       </method>
49900       <method name="get_description"
49901               c:identifier="gtk_recent_info_get_description"
49902               version="2.10">
49903         <doc xml:whitespace="preserve">Gets the (short) description of the resource.
49904 is owned by the recent manager, and should not be freed.</doc>
49905         <return-value transfer-ownership="none">
49906           <doc xml:whitespace="preserve">the description of the resource.  The returned string</doc>
49907           <type name="utf8" c:type="gchar*"/>
49908         </return-value>
49909       </method>
49910       <method name="get_mime_type"
49911               c:identifier="gtk_recent_info_get_mime_type"
49912               version="2.10">
49913         <doc xml:whitespace="preserve">Gets the MIME type of the resource.
49914 is owned by the recent manager, and should not be freed.</doc>
49915         <return-value transfer-ownership="none">
49916           <doc xml:whitespace="preserve">the MIME type of the resource.  The returned string</doc>
49917           <type name="utf8" c:type="gchar*"/>
49918         </return-value>
49919       </method>
49920       <method name="get_added"
49921               c:identifier="gtk_recent_info_get_added"
49922               version="2.10">
49923         <doc xml:whitespace="preserve">Gets the timestamp (seconds from system's Epoch) when the resource
49924 was added to the recently used resources list.
49925 the resource was added to the list, or -1 on failure.</doc>
49926         <return-value transfer-ownership="none">
49927           <doc xml:whitespace="preserve">the number of seconds elapsed from system's Epoch when</doc>
49928           <type name="long" c:type="time_t"/>
49929         </return-value>
49930       </method>
49931       <method name="get_modified"
49932               c:identifier="gtk_recent_info_get_modified"
49933               version="2.10">
49934         <doc xml:whitespace="preserve">Gets the timestamp (seconds from system's Epoch) when the resource
49935 was last modified.
49936 the resource was last modified, or -1 on failure.</doc>
49937         <return-value transfer-ownership="none">
49938           <doc xml:whitespace="preserve">the number of seconds elapsed from system's Epoch when</doc>
49939           <type name="long" c:type="time_t"/>
49940         </return-value>
49941       </method>
49942       <method name="get_visited"
49943               c:identifier="gtk_recent_info_get_visited"
49944               version="2.10">
49945         <doc xml:whitespace="preserve">Gets the timestamp (seconds from system's Epoch) when the resource
49946 was last visited.
49947 the resource was last visited, or -1 on failure.</doc>
49948         <return-value transfer-ownership="none">
49949           <doc xml:whitespace="preserve">the number of seconds elapsed from system's Epoch when</doc>
49950           <type name="long" c:type="time_t"/>
49951         </return-value>
49952       </method>
49953       <method name="get_private_hint"
49954               c:identifier="gtk_recent_info_get_private_hint"
49955               version="2.10">
49956         <doc xml:whitespace="preserve">Gets the value of the "private" flag.  Resources in the recently used
49957 list that have this flag set to %TRUE should only be displayed by the
49958 applications that have registered them.</doc>
49959         <return-value transfer-ownership="none">
49960           <doc xml:whitespace="preserve">%TRUE if the private flag was found, %FALSE otherwise.</doc>
49961           <type name="boolean" c:type="gboolean"/>
49962         </return-value>
49963       </method>
49964       <method name="get_application_info"
49965               c:identifier="gtk_recent_info_get_application_info"
49966               version="2.10">
49967         <doc xml:whitespace="preserve">Gets the data regarding the application that has registered the resource
49968 pointed by @info.
49969 If the command line contains any escape characters defined inside the
49970 storage specification, they will be expanded.
49971 resource inside the recently used list, or %FALSE otherwise. The
49972 modified or freed</doc>
49973         <return-value transfer-ownership="none">
49974           <doc xml:whitespace="preserve">%TRUE if an application with @app_name has registered this</doc>
49975           <type name="boolean" c:type="gboolean"/>
49976         </return-value>
49977         <parameters>
49978           <parameter name="app_name" transfer-ownership="none">
49979             <doc xml:whitespace="preserve">the name of the application that has registered this item</doc>
49980             <type name="utf8" c:type="gchar*"/>
49981           </parameter>
49982           <parameter name="app_exec"
49983                      direction="out"
49984                      caller-allocates="0"
49985                      transfer-ownership="none">
49986             <doc xml:whitespace="preserve">return location for the string containing the command line</doc>
49987             <type name="utf8" c:type="gchar**"/>
49988           </parameter>
49989           <parameter name="count"
49990                      direction="out"
49991                      caller-allocates="0"
49992                      transfer-ownership="full">
49993             <doc xml:whitespace="preserve">return location for the number of times this item was registered</doc>
49994             <type name="uint" c:type="guint*"/>
49995           </parameter>
49996           <parameter name="time_"
49997                      direction="out"
49998                      caller-allocates="0"
49999                      transfer-ownership="full">
50000             <doc xml:whitespace="preserve">return location for the timestamp this item was last registered for this application</doc>
50001             <type name="long" c:type="time_t*"/>
50002           </parameter>
50003         </parameters>
50004       </method>
50005       <method name="get_applications"
50006               c:identifier="gtk_recent_info_get_applications"
50007               version="2.10">
50008         <doc xml:whitespace="preserve">Retrieves the list of applications that have registered this resource.
50009 %NULL-terminated array of strings. Use g_strfreev() to free it.</doc>
50010         <return-value transfer-ownership="full">
50011           <doc xml:whitespace="preserve">a newly allocated</doc>
50012           <array length="1" c:type="gchar**">
50013             <type name="utf8"/>
50014           </array>
50015         </return-value>
50016         <parameters>
50017           <parameter name="length"
50018                      direction="out"
50019                      caller-allocates="0"
50020                      transfer-ownership="full"
50021                      allow-none="1">
50022             <doc xml:whitespace="preserve">return location for the length of the returned list</doc>
50023             <type name="gsize" c:type="gsize*"/>
50024           </parameter>
50025         </parameters>
50026       </method>
50027       <method name="last_application"
50028               c:identifier="gtk_recent_info_last_application"
50029               version="2.10">
50030         <doc xml:whitespace="preserve">Gets the name of the last application that have registered the
50031 recently used resource represented by @info.</doc>
50032         <return-value transfer-ownership="full">
50033           <doc xml:whitespace="preserve">an application name.  Use g_free() to free it.</doc>
50034           <type name="utf8" c:type="gchar*"/>
50035         </return-value>
50036       </method>
50037       <method name="has_application"
50038               c:identifier="gtk_recent_info_has_application"
50039               version="2.10">
50040         <doc xml:whitespace="preserve">Checks whether an application registered this resource using @app_name.
50041 %FALSE otherwise.</doc>
50042         <return-value transfer-ownership="none">
50043           <doc xml:whitespace="preserve">%TRUE if an application with name @app_name was found,</doc>
50044           <type name="boolean" c:type="gboolean"/>
50045         </return-value>
50046         <parameters>
50047           <parameter name="app_name" transfer-ownership="none">
50048             <doc xml:whitespace="preserve">a string containing an application name</doc>
50049             <type name="utf8" c:type="gchar*"/>
50050           </parameter>
50051         </parameters>
50052       </method>
50053       <method name="get_groups"
50054               c:identifier="gtk_recent_info_get_groups"
50055               version="2.10">
50056         <doc xml:whitespace="preserve">Returns all groups registered for the recently used item @info.  The
50057 array of returned group names will be %NULL terminated, so length might
50058 optionally be %NULL.
50059 %NULL terminated array of strings.  Use g_strfreev() to free it.</doc>
50060         <return-value transfer-ownership="full">
50061           <doc xml:whitespace="preserve">a newly allocated</doc>
50062           <array length="1" c:type="gchar**">
50063             <type name="utf8"/>
50064           </array>
50065         </return-value>
50066         <parameters>
50067           <parameter name="length"
50068                      direction="out"
50069                      caller-allocates="0"
50070                      transfer-ownership="full"
50071                      allow-none="1">
50072             <doc xml:whitespace="preserve">return location for the number of groups returned</doc>
50073             <type name="gsize" c:type="gsize*"/>
50074           </parameter>
50075         </parameters>
50076       </method>
50077       <method name="has_group"
50078               c:identifier="gtk_recent_info_has_group"
50079               version="2.10">
50080         <doc xml:whitespace="preserve">Checks whether @group_name appears inside the groups registered for the
50081 recently used item @info.</doc>
50082         <return-value transfer-ownership="none">
50083           <doc xml:whitespace="preserve">%TRUE if the group was found.</doc>
50084           <type name="boolean" c:type="gboolean"/>
50085         </return-value>
50086         <parameters>
50087           <parameter name="group_name" transfer-ownership="none">
50088             <doc xml:whitespace="preserve">name of a group</doc>
50089             <type name="utf8" c:type="gchar*"/>
50090           </parameter>
50091         </parameters>
50092       </method>
50093       <method name="get_icon"
50094               c:identifier="gtk_recent_info_get_icon"
50095               version="2.10">
50096         <doc xml:whitespace="preserve">Retrieves the icon of size @size associated to the resource MIME type.
50097 g_object_unref() when finished using the icon.</doc>
50098         <return-value transfer-ownership="full">
50099           <doc xml:whitespace="preserve">a #GdkPixbuf containing the icon, or %NULL. Use</doc>
50100           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
50101         </return-value>
50102         <parameters>
50103           <parameter name="size" transfer-ownership="none">
50104             <doc xml:whitespace="preserve">the size of the icon in pixels</doc>
50105             <type name="int" c:type="gint"/>
50106           </parameter>
50107         </parameters>
50108       </method>
50109       <method name="get_short_name"
50110               c:identifier="gtk_recent_info_get_short_name"
50111               version="2.10">
50112         <doc xml:whitespace="preserve">Computes a valid UTF-8 string that can be used as the name of the item in a
50113 menu or list.  For example, calling this function on an item that refers to
50114 "file:///foo/bar.txt" will yield "bar.txt".
50115 g_free().</doc>
50116         <return-value transfer-ownership="full">
50117           <doc xml:whitespace="preserve">A newly-allocated string in UTF-8 encoding; free it with</doc>
50118           <type name="utf8" c:type="gchar*"/>
50119         </return-value>
50120       </method>
50121       <method name="get_uri_display"
50122               c:identifier="gtk_recent_info_get_uri_display"
50123               version="2.10">
50124         <doc xml:whitespace="preserve">Gets a displayable version of the resource's URI.  If the resource
50125 is local, it returns a local path; if the resource is not local,
50126 it returns the UTF-8 encoded content of gtk_recent_info_get_uri().
50127 resource's URI or %NULL. Use g_free() when done using it.</doc>
50128         <return-value transfer-ownership="full">
50129           <doc xml:whitespace="preserve">a newly allocated UTF-8 string containing the</doc>
50130           <type name="utf8" c:type="gchar*"/>
50131         </return-value>
50132       </method>
50133       <method name="get_age"
50134               c:identifier="gtk_recent_info_get_age"
50135               version="2.10">
50136         <doc xml:whitespace="preserve">Gets the number of days elapsed since the last update of the resource
50137 pointed by @info.
50138 since the time this resource was last modified.</doc>
50139         <return-value transfer-ownership="none">
50140           <doc xml:whitespace="preserve">a positive integer containing the number of days elapsed</doc>
50141           <type name="int" c:type="gint"/>
50142         </return-value>
50143       </method>
50144       <method name="is_local"
50145               c:identifier="gtk_recent_info_is_local"
50146               version="2.10">
50147         <doc xml:whitespace="preserve">Checks whether the resource is local or not by looking at the
50148 scheme of its URI.</doc>
50149         <return-value transfer-ownership="none">
50150           <doc xml:whitespace="preserve">%TRUE if the resource is local.</doc>
50151           <type name="boolean" c:type="gboolean"/>
50152         </return-value>
50153       </method>
50154       <method name="exists"
50155               c:identifier="gtk_recent_info_exists"
50156               version="2.10">
50157         <doc xml:whitespace="preserve">Checks whether the resource pointed by @info still exists.  At
50158 the moment this check is done only on resources pointing to local files.</doc>
50159         <return-value transfer-ownership="none">
50160           <doc xml:whitespace="preserve">%TRUE if the resource exists</doc>
50161           <type name="boolean" c:type="gboolean"/>
50162         </return-value>
50163       </method>
50164       <method name="match" c:identifier="gtk_recent_info_match" version="2.10">
50165         <doc xml:whitespace="preserve">Checks whether two #GtkRecentInfo structures point to the same
50166 resource.
50167 resource, %FALSE otherwise.</doc>
50168         <return-value transfer-ownership="none">
50169           <doc xml:whitespace="preserve">%TRUE if both #GtkRecentInfo structures point to se same</doc>
50170           <type name="boolean" c:type="gboolean"/>
50171         </return-value>
50172         <parameters>
50173           <parameter name="info_b" transfer-ownership="none">
50174             <doc xml:whitespace="preserve">a #GtkRecentInfo</doc>
50175             <type name="RecentInfo" c:type="GtkRecentInfo*"/>
50176           </parameter>
50177         </parameters>
50178       </method>
50179     </record>
50180     <class name="RecentManager"
50181            c:type="GtkRecentManager"
50182            parent="GObject.Object"
50183            glib:type-name="GtkRecentManager"
50184            glib:get-type="gtk_recent_manager_get_type"
50185            glib:type-struct="RecentManagerClass">
50186       <constructor name="new"
50187                    c:identifier="gtk_recent_manager_new"
50188                    version="2.10">
50189         <doc xml:whitespace="preserve">Creates a new recent manager object.  Recent manager objects are used to
50190 handle the list of recently used resources.  A #GtkRecentManager object
50191 monitors the recently used resources list, and emits the "changed" signal
50192 each time something inside the list changes.
50193 #GtkRecentManager objects are expensive: be sure to create them only when
50194 needed. You should use gtk_recent_manager_get_default() instead.</doc>
50195         <return-value transfer-ownership="full">
50196           <doc xml:whitespace="preserve">A newly created #GtkRecentManager object.</doc>
50197           <type name="RecentManager" c:type="GtkRecentManager*"/>
50198         </return-value>
50199       </constructor>
50200       <function name="get_default"
50201                 c:identifier="gtk_recent_manager_get_default"
50202                 version="2.10">
50203         <doc xml:whitespace="preserve">Gets a unique instance of #GtkRecentManager, that you can share
50204 in your application without caring about memory management. The
50205 returned instance will be freed when you application terminates.</doc>
50206         <return-value transfer-ownership="none">
50207           <doc xml:whitespace="preserve">A unique #GtkRecentManager. Do not ref or unref it.</doc>
50208           <type name="RecentManager" c:type="GtkRecentManager*"/>
50209         </return-value>
50210       </function>
50211       <function name="get_for_screen"
50212                 c:identifier="gtk_recent_manager_get_for_screen"
50213                 version="2.10"
50214                 deprecated="This function has been deprecated and should"
50215                 deprecated-version="2.12">
50216         <doc xml:whitespace="preserve">Gets the recent manager object associated with @screen; if this
50217 function has not previously been called for the given screen,
50218 a new recent manager object will be created and associated with
50219 the screen. Recent manager objects are fairly expensive to create,
50220 so using this function is usually a better choice than calling 
50221 gtk_recent_manager_new() and setting the screen yourself; by using
50222 this function a single recent manager object will be shared between
50223 users.
50224 screen. This recent manager is associated to the with the screen
50225 and can be used as long as the screen is open. Do not ref or
50226 unref it.
50227 not be used in newly written code. Calling this function is
50228 equivalent to calling gtk_recent_manager_get_default().</doc>
50229         <return-value transfer-ownership="full">
50230           <doc xml:whitespace="preserve">A unique #GtkRecentManager associated with the given</doc>
50231           <type name="RecentManager" c:type="GtkRecentManager*"/>
50232         </return-value>
50233         <parameters>
50234           <parameter name="screen" transfer-ownership="none">
50235             <doc xml:whitespace="preserve">a #GdkScreen</doc>
50236             <type name="Gdk.Screen" c:type="GdkScreen*"/>
50237           </parameter>
50238         </parameters>
50239       </function>
50240       <method name="set_screen"
50241               c:identifier="gtk_recent_manager_set_screen"
50242               version="2.10"
50243               deprecated="This function has been deprecated and should"
50244               deprecated-version="2.12">
50245         <doc xml:whitespace="preserve">Sets the screen for a recent manager; the screen is used to
50246 track the user's currently configured recently used documents
50247 storage.
50248 not be used in newly written code. Calling this function has
50249 no effect.</doc>
50250         <return-value transfer-ownership="none">
50251           <type name="none" c:type="void"/>
50252         </return-value>
50253         <parameters>
50254           <parameter name="screen" transfer-ownership="none">
50255             <doc xml:whitespace="preserve">a #GdkScreen</doc>
50256             <type name="Gdk.Screen" c:type="GdkScreen*"/>
50257           </parameter>
50258         </parameters>
50259       </method>
50260       <method name="add_item"
50261               c:identifier="gtk_recent_manager_add_item"
50262               version="2.10">
50263         <doc xml:whitespace="preserve">Adds a new resource, pointed by @uri, into the recently used
50264 resources list.
50265 This function automatically retrieves some of the needed
50266 metadata and setting other metadata to common default values; it
50267 then feeds the data to gtk_recent_manager_add_full().
50268 See gtk_recent_manager_add_full() if you want to explicitly
50269 define the metadata for the resource pointed by @uri.
50270 to the recently used resources list</doc>
50271         <return-value transfer-ownership="none">
50272           <doc xml:whitespace="preserve">%TRUE if the new item was successfully added</doc>
50273           <type name="boolean" c:type="gboolean"/>
50274         </return-value>
50275         <parameters>
50276           <parameter name="uri" transfer-ownership="none">
50277             <doc xml:whitespace="preserve">a valid URI</doc>
50278             <type name="utf8" c:type="gchar*"/>
50279           </parameter>
50280         </parameters>
50281       </method>
50282       <method name="add_full"
50283               c:identifier="gtk_recent_manager_add_full"
50284               version="2.10">
50285         <doc xml:whitespace="preserve">Adds a new resource, pointed by @uri, into the recently used
50286 resources list, using the metadata specified inside the #GtkRecentData
50287 structure passed in @recent_data.
50288 The passed URI will be used to identify this resource inside the
50289 list.
50290 In order to register the new recently used resource, metadata about
50291 the resource must be passed as well as the URI; the metadata is
50292 stored in a #GtkRecentData structure, which must contain the MIME
50293 type of the resource pointed by the URI; the name of the application
50294 that is registering the item, and a command line to be used when
50295 launching the item.
50296 Optionally, a #GtkRecentData structure might contain a UTF-8 string
50297 to be used when viewing the item instead of the last component of the
50298 URI; a short description of the item; whether the item should be
50299 considered private - that is, should be displayed only by the
50300 applications that have registered it.
50301 recently used resources list, %FALSE otherwise.</doc>
50302         <return-value transfer-ownership="none">
50303           <doc xml:whitespace="preserve">%TRUE if the new item was successfully added to the</doc>
50304           <type name="boolean" c:type="gboolean"/>
50305         </return-value>
50306         <parameters>
50307           <parameter name="uri" transfer-ownership="none">
50308             <doc xml:whitespace="preserve">a valid URI</doc>
50309             <type name="utf8" c:type="gchar*"/>
50310           </parameter>
50311           <parameter name="recent_data" transfer-ownership="none">
50312             <doc xml:whitespace="preserve">metadata of the resource</doc>
50313             <type name="RecentData" c:type="GtkRecentData*"/>
50314           </parameter>
50315         </parameters>
50316       </method>
50317       <method name="remove_item"
50318               c:identifier="gtk_recent_manager_remove_item"
50319               version="2.10"
50320               throws="1">
50321         <doc xml:whitespace="preserve">Removes a resource pointed by @uri from the recently used resources
50322 list handled by a recent manager.
50323 removed by the recently used resources list, and %FALSE otherwise.</doc>
50324         <return-value transfer-ownership="none">
50325           <doc xml:whitespace="preserve">%TRUE if the item pointed by @uri has been successfully</doc>
50326           <type name="boolean" c:type="gboolean"/>
50327         </return-value>
50328         <parameters>
50329           <parameter name="uri" transfer-ownership="none">
50330             <doc xml:whitespace="preserve">the URI of the item you wish to remove</doc>
50331             <type name="utf8" c:type="gchar*"/>
50332           </parameter>
50333         </parameters>
50334       </method>
50335       <method name="lookup_item"
50336               c:identifier="gtk_recent_manager_lookup_item"
50337               version="2.10"
50338               throws="1">
50339         <doc xml:whitespace="preserve">Searches for a URI inside the recently used resources list, and
50340 returns a structure containing informations about the resource
50341 like its MIME type, or its display name.
50342 about the resource pointed by @uri, or %NULL if the URI was
50343 not registered in the recently used resources list.  Free with
50344 gtk_recent_info_unref().</doc>
50345         <return-value transfer-ownership="full">
50346           <doc xml:whitespace="preserve">a #GtkRecentInfo structure containing information</doc>
50347           <type name="RecentInfo" c:type="GtkRecentInfo*"/>
50348         </return-value>
50349         <parameters>
50350           <parameter name="uri" transfer-ownership="none">
50351             <doc xml:whitespace="preserve">a URI</doc>
50352             <type name="utf8" c:type="gchar*"/>
50353           </parameter>
50354         </parameters>
50355       </method>
50356       <method name="has_item"
50357               c:identifier="gtk_recent_manager_has_item"
50358               version="2.10">
50359         <doc xml:whitespace="preserve">Checks whether there is a recently used resource registered
50360 with @uri inside the recent manager.</doc>
50361         <return-value transfer-ownership="none">
50362           <doc xml:whitespace="preserve">%TRUE if the resource was found, %FALSE otherwise.</doc>
50363           <type name="boolean" c:type="gboolean"/>
50364         </return-value>
50365         <parameters>
50366           <parameter name="uri" transfer-ownership="none">
50367             <doc xml:whitespace="preserve">a URI</doc>
50368             <type name="utf8" c:type="gchar*"/>
50369           </parameter>
50370         </parameters>
50371       </method>
50372       <method name="move_item"
50373               c:identifier="gtk_recent_manager_move_item"
50374               version="2.10"
50375               throws="1">
50376         <doc xml:whitespace="preserve">Changes the location of a recently used resource from @uri to @new_uri.
50377 Please note that this function will not affect the resource pointed
50378 by the URIs, but only the URI used in the recently used resources list.</doc>
50379         <return-value transfer-ownership="none">
50380           <doc xml:whitespace="preserve">%TRUE on success.</doc>
50381           <type name="boolean" c:type="gboolean"/>
50382         </return-value>
50383         <parameters>
50384           <parameter name="uri" transfer-ownership="none">
50385             <doc xml:whitespace="preserve">the URI of a recently used resource</doc>
50386             <type name="utf8" c:type="gchar*"/>
50387           </parameter>
50388           <parameter name="new_uri" transfer-ownership="none" allow-none="1">
50389             <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>
50390             <type name="utf8" c:type="gchar*"/>
50391           </parameter>
50392         </parameters>
50393       </method>
50394       <method name="set_limit"
50395               c:identifier="gtk_recent_manager_set_limit"
50396               version="2.10">
50397         <doc xml:whitespace="preserve">Sets the maximum number of item that the gtk_recent_manager_get_items()
50398 function should return.  If @limit is set to -1, then return all the
50399 items.</doc>
50400         <return-value transfer-ownership="none">
50401           <type name="none" c:type="void"/>
50402         </return-value>
50403         <parameters>
50404           <parameter name="limit" transfer-ownership="none">
50405             <doc xml:whitespace="preserve">the maximum number of items to return, or -1.</doc>
50406             <type name="int" c:type="gint"/>
50407           </parameter>
50408         </parameters>
50409       </method>
50410       <method name="get_limit"
50411               c:identifier="gtk_recent_manager_get_limit"
50412               version="2.10">
50413         <doc xml:whitespace="preserve">Gets the maximum number of items that the gtk_recent_manager_get_items()
50414 function should return.</doc>
50415         <return-value transfer-ownership="none">
50416           <doc xml:whitespace="preserve">the number of items to return, or -1 for every item.</doc>
50417           <type name="int" c:type="gint"/>
50418         </return-value>
50419       </method>
50420       <method name="get_items"
50421               c:identifier="gtk_recent_manager_get_items"
50422               version="2.10">
50423         <doc xml:whitespace="preserve">Gets the list of recently used resources.
50424 newly allocated #GtkRecentInfo objects. Use
50425 gtk_recent_info_unref() on each item inside the list, and then
50426 free the list itself using g_list_free().</doc>
50427         <return-value transfer-ownership="full">
50428           <doc xml:whitespace="preserve">a list of</doc>
50429           <type name="GLib.List" c:type="GList*">
50430             <type name="RecentInfo"/>
50431           </type>
50432         </return-value>
50433       </method>
50434       <method name="purge_items"
50435               c:identifier="gtk_recent_manager_purge_items"
50436               version="2.10"
50437               throws="1">
50438         <doc xml:whitespace="preserve">Purges every item from the recently used resources list.
50439 recently used resources list.</doc>
50440         <return-value transfer-ownership="none">
50441           <doc xml:whitespace="preserve">the number of items that have been removed from the</doc>
50442           <type name="int" c:type="gint"/>
50443         </return-value>
50444       </method>
50445       <property name="filename"
50446                 writable="1"
50447                 construct-only="1"
50448                 transfer-ownership="none">
50449         <type name="utf8" c:type="gchararray"/>
50450       </property>
50451       <property name="limit" writable="1" transfer-ownership="none">
50452         <type name="int" c:type="gint"/>
50453       </property>
50454       <property name="size" transfer-ownership="none">
50455         <type name="int" c:type="gint"/>
50456       </property>
50457       <field name="parent_instance">
50458         <type name="GObject.Object" c:type="GObject"/>
50459       </field>
50460       <field name="priv">
50461         <type name="RecentManagerPrivate" c:type="GtkRecentManagerPrivate*"/>
50462       </field>
50463       <glib:signal name="changed">
50464         <return-value transfer-ownership="full">
50465           <type name="none" c:type="void"/>
50466         </return-value>
50467       </glib:signal>
50468     </class>
50469     <record name="RecentManagerClass"
50470             c:type="GtkRecentManagerClass"
50471             glib:is-gtype-struct-for="RecentManager">
50472       <field name="parent_class">
50473         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
50474       </field>
50475       <field name="changed">
50476         <callback name="changed" c:type="changed">
50477           <return-value transfer-ownership="none">
50478             <type name="none" c:type="void"/>
50479           </return-value>
50480           <parameters>
50481             <parameter name="manager" transfer-ownership="none">
50482               <type name="RecentManager" c:type="GtkRecentManager*"/>
50483             </parameter>
50484           </parameters>
50485         </callback>
50486       </field>
50487       <field name="gtk_recent1">
50488         <callback name="gtk_recent1" c:type="_gtk_recent1">
50489           <return-value transfer-ownership="none">
50490             <type name="none" c:type="void"/>
50491           </return-value>
50492         </callback>
50493       </field>
50494       <field name="gtk_recent2">
50495         <callback name="gtk_recent2" c:type="_gtk_recent2">
50496           <return-value transfer-ownership="none">
50497             <type name="none" c:type="void"/>
50498           </return-value>
50499         </callback>
50500       </field>
50501       <field name="gtk_recent3">
50502         <callback name="gtk_recent3" c:type="_gtk_recent3">
50503           <return-value transfer-ownership="none">
50504             <type name="none" c:type="void"/>
50505           </return-value>
50506         </callback>
50507       </field>
50508       <field name="gtk_recent4">
50509         <callback name="gtk_recent4" c:type="_gtk_recent4">
50510           <return-value transfer-ownership="none">
50511             <type name="none" c:type="void"/>
50512           </return-value>
50513         </callback>
50514       </field>
50515     </record>
50516     <enumeration name="RecentManagerError"
50517                  glib:type-name="GtkRecentManagerError"
50518                  glib:get-type="gtk_recent_manager_error_get_type"
50519                  c:type="GtkRecentManagerError"
50520                  glib:error-quark="gtk_recent_manager_error_quark">
50521       <doc xml:whitespace="preserve">Error codes for GtkRecentManager operations</doc>
50522       <member name="not_found"
50523               value="0"
50524               c:identifier="GTK_RECENT_MANAGER_ERROR_NOT_FOUND"
50525               glib:nick="not-found"/>
50526       <member name="invalid_uri"
50527               value="1"
50528               c:identifier="GTK_RECENT_MANAGER_ERROR_INVALID_URI"
50529               glib:nick="invalid-uri"/>
50530       <member name="invalid_encoding"
50531               value="2"
50532               c:identifier="GTK_RECENT_MANAGER_ERROR_INVALID_ENCODING"
50533               glib:nick="invalid-encoding"/>
50534       <member name="not_registered"
50535               value="3"
50536               c:identifier="GTK_RECENT_MANAGER_ERROR_NOT_REGISTERED"
50537               glib:nick="not-registered"/>
50538       <member name="read"
50539               value="4"
50540               c:identifier="GTK_RECENT_MANAGER_ERROR_READ"
50541               glib:nick="read"/>
50542       <member name="write"
50543               value="5"
50544               c:identifier="GTK_RECENT_MANAGER_ERROR_WRITE"
50545               glib:nick="write"/>
50546       <member name="unknown"
50547               value="6"
50548               c:identifier="GTK_RECENT_MANAGER_ERROR_UNKNOWN"
50549               glib:nick="unknown"/>
50550     </enumeration>
50551     <record name="RecentManagerPrivate" c:type="GtkRecentManagerPrivate">
50552     </record>
50553     <callback name="RecentSortFunc" c:type="GtkRecentSortFunc">
50554       <return-value transfer-ownership="none">
50555         <type name="int" c:type="gint"/>
50556       </return-value>
50557       <parameters>
50558         <parameter name="a" transfer-ownership="none">
50559           <type name="RecentInfo" c:type="GtkRecentInfo*"/>
50560         </parameter>
50561         <parameter name="b" transfer-ownership="none">
50562           <type name="RecentInfo" c:type="GtkRecentInfo*"/>
50563         </parameter>
50564         <parameter name="user_data" transfer-ownership="none" closure="2">
50565           <type name="any" c:type="gpointer"/>
50566         </parameter>
50567       </parameters>
50568     </callback>
50569     <enumeration name="RecentSortType"
50570                  glib:type-name="GtkRecentSortType"
50571                  glib:get-type="gtk_recent_sort_type_get_type"
50572                  c:type="GtkRecentSortType">
50573       <doc xml:whitespace="preserve">Used to specify the sorting method to be applyed to the recently
50574 used resource list.</doc>
50575       <member name="none"
50576               value="0"
50577               c:identifier="GTK_RECENT_SORT_NONE"
50578               glib:nick="none"/>
50579       <member name="mru"
50580               value="1"
50581               c:identifier="GTK_RECENT_SORT_MRU"
50582               glib:nick="mru"/>
50583       <member name="lru"
50584               value="2"
50585               c:identifier="GTK_RECENT_SORT_LRU"
50586               glib:nick="lru"/>
50587       <member name="custom"
50588               value="3"
50589               c:identifier="GTK_RECENT_SORT_CUSTOM"
50590               glib:nick="custom"/>
50591     </enumeration>
50592     <enumeration name="ReliefStyle"
50593                  glib:type-name="GtkReliefStyle"
50594                  glib:get-type="gtk_relief_style_get_type"
50595                  c:type="GtkReliefStyle">
50596       <member name="normal"
50597               value="0"
50598               c:identifier="GTK_RELIEF_NORMAL"
50599               glib:nick="normal"/>
50600       <member name="half"
50601               value="1"
50602               c:identifier="GTK_RELIEF_HALF"
50603               glib:nick="half"/>
50604       <member name="none"
50605               value="2"
50606               c:identifier="GTK_RELIEF_NONE"
50607               glib:nick="none"/>
50608     </enumeration>
50609     <record name="Requisition"
50610             c:type="GtkRequisition"
50611             glib:type-name="GtkRequisition"
50612             glib:get-type="gtk_requisition_get_type">
50613       <doc xml:whitespace="preserve">A &lt;structname&gt;GtkRequisition&lt;/structname&gt; represents the desired size of a widget. See
50614 &lt;xref linkend="size-requisition"/&gt; for more information.</doc>
50615       <field name="width" writable="1">
50616         <type name="int" c:type="gint"/>
50617       </field>
50618       <field name="height" writable="1">
50619         <type name="int" c:type="gint"/>
50620       </field>
50621       <method name="copy" c:identifier="gtk_requisition_copy">
50622         <doc xml:whitespace="preserve">Copies a #GtkRequisition.</doc>
50623         <return-value transfer-ownership="full">
50624           <doc xml:whitespace="preserve">a copy of @requisition</doc>
50625           <type name="Requisition" c:type="GtkRequisition*"/>
50626         </return-value>
50627       </method>
50628       <method name="free" c:identifier="gtk_requisition_free">
50629         <doc xml:whitespace="preserve">Frees a #GtkRequisition.</doc>
50630         <return-value transfer-ownership="none">
50631           <type name="none" c:type="void"/>
50632         </return-value>
50633       </method>
50634     </record>
50635     <enumeration name="ResizeMode"
50636                  glib:type-name="GtkResizeMode"
50637                  glib:get-type="gtk_resize_mode_get_type"
50638                  c:type="GtkResizeMode">
50639       <member name="parent"
50640               value="0"
50641               c:identifier="GTK_RESIZE_PARENT"
50642               glib:nick="parent"/>
50643       <member name="queue"
50644               value="1"
50645               c:identifier="GTK_RESIZE_QUEUE"
50646               glib:nick="queue"/>
50647       <member name="immediate"
50648               value="2"
50649               c:identifier="GTK_RESIZE_IMMEDIATE"
50650               glib:nick="immediate"/>
50651     </enumeration>
50652     <enumeration name="ResponseType"
50653                  glib:type-name="GtkResponseType"
50654                  glib:get-type="gtk_response_type_get_type"
50655                  c:type="GtkResponseType">
50656       <member name="none"
50657               value="-1"
50658               c:identifier="GTK_RESPONSE_NONE"
50659               glib:nick="none"/>
50660       <member name="reject"
50661               value="-2"
50662               c:identifier="GTK_RESPONSE_REJECT"
50663               glib:nick="reject"/>
50664       <member name="accept"
50665               value="-3"
50666               c:identifier="GTK_RESPONSE_ACCEPT"
50667               glib:nick="accept"/>
50668       <member name="delete_event"
50669               value="-4"
50670               c:identifier="GTK_RESPONSE_DELETE_EVENT"
50671               glib:nick="delete-event"/>
50672       <member name="ok"
50673               value="-5"
50674               c:identifier="GTK_RESPONSE_OK"
50675               glib:nick="ok"/>
50676       <member name="cancel"
50677               value="-6"
50678               c:identifier="GTK_RESPONSE_CANCEL"
50679               glib:nick="cancel"/>
50680       <member name="close"
50681               value="-7"
50682               c:identifier="GTK_RESPONSE_CLOSE"
50683               glib:nick="close"/>
50684       <member name="yes"
50685               value="-8"
50686               c:identifier="GTK_RESPONSE_YES"
50687               glib:nick="yes"/>
50688       <member name="no"
50689               value="-9"
50690               c:identifier="GTK_RESPONSE_NO"
50691               glib:nick="no"/>
50692       <member name="apply"
50693               value="-10"
50694               c:identifier="GTK_RESPONSE_APPLY"
50695               glib:nick="apply"/>
50696       <member name="help"
50697               value="-11"
50698               c:identifier="GTK_RESPONSE_HELP"
50699               glib:nick="help"/>
50700     </enumeration>
50701     <class name="Ruler"
50702            c:type="GtkRuler"
50703            parent="Widget"
50704            glib:type-name="GtkRuler"
50705            glib:get-type="gtk_ruler_get_type"
50706            glib:type-struct="RulerClass">
50707       <implements name="Atk.ImplementorIface"/>
50708       <implements name="Buildable"/>
50709       <implements name="Orientable"/>
50710       <virtual-method name="draw_ticks" invoker="draw_ticks">
50711         <return-value transfer-ownership="none">
50712           <type name="none" c:type="void"/>
50713         </return-value>
50714       </virtual-method>
50715       <virtual-method name="draw_pos" invoker="draw_pos">
50716         <return-value transfer-ownership="none">
50717           <type name="none" c:type="void"/>
50718         </return-value>
50719       </virtual-method>
50720       <method name="set_metric" c:identifier="gtk_ruler_set_metric">
50721         <return-value transfer-ownership="none">
50722           <type name="none" c:type="void"/>
50723         </return-value>
50724         <parameters>
50725           <parameter name="metric" transfer-ownership="none">
50726             <type name="MetricType" c:type="GtkMetricType"/>
50727           </parameter>
50728         </parameters>
50729       </method>
50730       <method name="get_metric" c:identifier="gtk_ruler_get_metric">
50731         <doc xml:whitespace="preserve">Gets the units used for a #GtkRuler. See gtk_ruler_set_metric().</doc>
50732         <return-value transfer-ownership="full">
50733           <doc xml:whitespace="preserve">the units currently used for @ruler</doc>
50734           <type name="MetricType" c:type="GtkMetricType"/>
50735         </return-value>
50736       </method>
50737       <method name="set_range" c:identifier="gtk_ruler_set_range">
50738         <doc xml:whitespace="preserve">This sets the range of the ruler.</doc>
50739         <return-value transfer-ownership="none">
50740           <type name="none" c:type="void"/>
50741         </return-value>
50742         <parameters>
50743           <parameter name="lower" transfer-ownership="none">
50744             <doc xml:whitespace="preserve">the lower limit of the ruler</doc>
50745             <type name="double" c:type="gdouble"/>
50746           </parameter>
50747           <parameter name="upper" transfer-ownership="none">
50748             <doc xml:whitespace="preserve">the upper limit of the ruler</doc>
50749             <type name="double" c:type="gdouble"/>
50750           </parameter>
50751           <parameter name="position" transfer-ownership="none">
50752             <doc xml:whitespace="preserve">the mark on the ruler</doc>
50753             <type name="double" c:type="gdouble"/>
50754           </parameter>
50755           <parameter name="max_size" transfer-ownership="none">
50756             <doc xml:whitespace="preserve">the maximum size of the ruler used when calculating the space to leave for the text</doc>
50757             <type name="double" c:type="gdouble"/>
50758           </parameter>
50759         </parameters>
50760       </method>
50761       <method name="get_range" c:identifier="gtk_ruler_get_range">
50762         <doc xml:whitespace="preserve">Retrieves values indicating the range and current position of a #GtkRuler.
50763 See gtk_ruler_set_range().</doc>
50764         <return-value transfer-ownership="none">
50765           <type name="none" c:type="void"/>
50766         </return-value>
50767         <parameters>
50768           <parameter name="lower"
50769                      direction="out"
50770                      caller-allocates="0"
50771                      transfer-ownership="full"
50772                      allow-none="1">
50773             <doc xml:whitespace="preserve">location to store lower limit of the ruler, or %NULL</doc>
50774             <type name="double" c:type="gdouble*"/>
50775           </parameter>
50776           <parameter name="upper"
50777                      direction="out"
50778                      caller-allocates="0"
50779                      transfer-ownership="full"
50780                      allow-none="1">
50781             <doc xml:whitespace="preserve">location to store upper limit of the ruler, or %NULL</doc>
50782             <type name="double" c:type="gdouble*"/>
50783           </parameter>
50784           <parameter name="position"
50785                      direction="out"
50786                      caller-allocates="0"
50787                      transfer-ownership="full"
50788                      allow-none="1">
50789             <doc xml:whitespace="preserve">location to store the current position of the mark on the ruler, or %NULL</doc>
50790             <type name="double" c:type="gdouble*"/>
50791           </parameter>
50792           <parameter name="max_size"
50793                      direction="out"
50794                      caller-allocates="0"
50795                      transfer-ownership="full">
50796             <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>
50797             <type name="double" c:type="gdouble*"/>
50798           </parameter>
50799         </parameters>
50800       </method>
50801       <method name="draw_ticks" c:identifier="gtk_ruler_draw_ticks">
50802         <return-value transfer-ownership="none">
50803           <type name="none" c:type="void"/>
50804         </return-value>
50805       </method>
50806       <method name="draw_pos" c:identifier="gtk_ruler_draw_pos">
50807         <return-value transfer-ownership="none">
50808           <type name="none" c:type="void"/>
50809         </return-value>
50810       </method>
50811       <property name="lower" writable="1" transfer-ownership="none">
50812         <type name="double" c:type="gdouble"/>
50813       </property>
50814       <property name="max-size" writable="1" transfer-ownership="none">
50815         <type name="double" c:type="gdouble"/>
50816       </property>
50817       <property name="metric"
50818                 version="2.8"
50819                 writable="1"
50820                 transfer-ownership="none">
50821         <doc xml:whitespace="preserve">The metric used for the ruler.</doc>
50822         <type name="MetricType" c:type="GtkMetricType"/>
50823       </property>
50824       <property name="position" writable="1" transfer-ownership="none">
50825         <type name="double" c:type="gdouble"/>
50826       </property>
50827       <property name="upper" writable="1" transfer-ownership="none">
50828         <type name="double" c:type="gdouble"/>
50829       </property>
50830       <field name="widget">
50831         <type name="Widget" c:type="GtkWidget"/>
50832       </field>
50833       <field name="backing_store">
50834         <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
50835       </field>
50836       <field name="non_gr_exp_gc">
50837         <type name="Gdk.GC" c:type="GdkGC*"/>
50838       </field>
50839       <field name="metric">
50840         <type name="RulerMetric" c:type="GtkRulerMetric*"/>
50841       </field>
50842       <field name="xsrc">
50843         <type name="int" c:type="gint"/>
50844       </field>
50845       <field name="ysrc">
50846         <type name="int" c:type="gint"/>
50847       </field>
50848       <field name="slider_size">
50849         <type name="int" c:type="gint"/>
50850       </field>
50851       <field name="lower">
50852         <type name="double" c:type="gdouble"/>
50853       </field>
50854       <field name="upper">
50855         <type name="double" c:type="gdouble"/>
50856       </field>
50857       <field name="position">
50858         <type name="double" c:type="gdouble"/>
50859       </field>
50860       <field name="max_size">
50861         <type name="double" c:type="gdouble"/>
50862       </field>
50863     </class>
50864     <record name="RulerClass"
50865             c:type="GtkRulerClass"
50866             glib:is-gtype-struct-for="Ruler">
50867       <field name="parent_class">
50868         <type name="WidgetClass" c:type="GtkWidgetClass"/>
50869       </field>
50870       <field name="draw_ticks">
50871         <callback name="draw_ticks" c:type="draw_ticks">
50872           <return-value transfer-ownership="none">
50873             <type name="none" c:type="void"/>
50874           </return-value>
50875           <parameters>
50876             <parameter name="ruler" transfer-ownership="none">
50877               <type name="Ruler" c:type="GtkRuler*"/>
50878             </parameter>
50879           </parameters>
50880         </callback>
50881       </field>
50882       <field name="draw_pos">
50883         <callback name="draw_pos" c:type="draw_pos">
50884           <return-value transfer-ownership="none">
50885             <type name="none" c:type="void"/>
50886           </return-value>
50887           <parameters>
50888             <parameter name="ruler" transfer-ownership="none">
50889               <type name="Ruler" c:type="GtkRuler*"/>
50890             </parameter>
50891           </parameters>
50892         </callback>
50893       </field>
50894       <field name="gtk_reserved1">
50895         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
50896           <return-value transfer-ownership="none">
50897             <type name="none" c:type="void"/>
50898           </return-value>
50899         </callback>
50900       </field>
50901       <field name="gtk_reserved2">
50902         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
50903           <return-value transfer-ownership="none">
50904             <type name="none" c:type="void"/>
50905           </return-value>
50906         </callback>
50907       </field>
50908       <field name="gtk_reserved3">
50909         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
50910           <return-value transfer-ownership="none">
50911             <type name="none" c:type="void"/>
50912           </return-value>
50913         </callback>
50914       </field>
50915       <field name="gtk_reserved4">
50916         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
50917           <return-value transfer-ownership="none">
50918             <type name="none" c:type="void"/>
50919           </return-value>
50920         </callback>
50921       </field>
50922     </record>
50923     <record name="RulerMetric" c:type="GtkRulerMetric">
50924       <field name="metric_name" writable="1">
50925         <type name="utf8" c:type="gchar*"/>
50926       </field>
50927       <field name="abbrev" writable="1">
50928         <type name="utf8" c:type="gchar*"/>
50929       </field>
50930       <field name="pixels_per_unit" writable="1">
50931         <type name="double" c:type="gdouble"/>
50932       </field>
50933       <field name="ruler_scale" writable="1">
50934         <array zero-terminated="0" c:type="gdouble" fixed-size="10">
50935           <type name="double"/>
50936         </array>
50937       </field>
50938       <field name="subdivide" writable="1">
50939         <array zero-terminated="0" c:type="gint" fixed-size="5">
50940           <type name="int"/>
50941         </array>
50942       </field>
50943     </record>
50944     <constant name="STOCK_ABOUT" value="gtk-about">
50945       <type name="utf8"/>
50946     </constant>
50947     <constant name="STOCK_ADD" value="gtk-add">
50948       <type name="utf8"/>
50949     </constant>
50950     <constant name="STOCK_APPLY" value="gtk-apply">
50951       <type name="utf8"/>
50952     </constant>
50953     <constant name="STOCK_BOLD" value="gtk-bold">
50954       <type name="utf8"/>
50955     </constant>
50956     <constant name="STOCK_CANCEL" value="gtk-cancel">
50957       <type name="utf8"/>
50958     </constant>
50959     <constant name="STOCK_CAPS_LOCK_WARNING" value="gtk-caps-lock-warning">
50960       <type name="utf8"/>
50961     </constant>
50962     <constant name="STOCK_CDROM" value="gtk-cdrom">
50963       <type name="utf8"/>
50964     </constant>
50965     <constant name="STOCK_CLEAR" value="gtk-clear">
50966       <type name="utf8"/>
50967     </constant>
50968     <constant name="STOCK_CLOSE" value="gtk-close">
50969       <type name="utf8"/>
50970     </constant>
50971     <constant name="STOCK_COLOR_PICKER" value="gtk-color-picker">
50972       <type name="utf8"/>
50973     </constant>
50974     <constant name="STOCK_CONNECT" value="gtk-connect">
50975       <type name="utf8"/>
50976     </constant>
50977     <constant name="STOCK_CONVERT" value="gtk-convert">
50978       <type name="utf8"/>
50979     </constant>
50980     <constant name="STOCK_COPY" value="gtk-copy">
50981       <type name="utf8"/>
50982     </constant>
50983     <constant name="STOCK_CUT" value="gtk-cut">
50984       <type name="utf8"/>
50985     </constant>
50986     <constant name="STOCK_DELETE" value="gtk-delete">
50987       <type name="utf8"/>
50988     </constant>
50989     <constant name="STOCK_DIALOG_AUTHENTICATION"
50990               value="gtk-dialog-authentication">
50991       <type name="utf8"/>
50992     </constant>
50993     <constant name="STOCK_DIALOG_ERROR" value="gtk-dialog-error">
50994       <type name="utf8"/>
50995     </constant>
50996     <constant name="STOCK_DIALOG_INFO" value="gtk-dialog-info">
50997       <type name="utf8"/>
50998     </constant>
50999     <constant name="STOCK_DIALOG_QUESTION" value="gtk-dialog-question">
51000       <type name="utf8"/>
51001     </constant>
51002     <constant name="STOCK_DIALOG_WARNING" value="gtk-dialog-warning">
51003       <type name="utf8"/>
51004     </constant>
51005     <constant name="STOCK_DIRECTORY" value="gtk-directory">
51006       <type name="utf8"/>
51007     </constant>
51008     <constant name="STOCK_DISCARD" value="gtk-discard">
51009       <type name="utf8"/>
51010     </constant>
51011     <constant name="STOCK_DISCONNECT" value="gtk-disconnect">
51012       <type name="utf8"/>
51013     </constant>
51014     <constant name="STOCK_DND" value="gtk-dnd">
51015       <type name="utf8"/>
51016     </constant>
51017     <constant name="STOCK_DND_MULTIPLE" value="gtk-dnd-multiple">
51018       <type name="utf8"/>
51019     </constant>
51020     <constant name="STOCK_EDIT" value="gtk-edit">
51021       <type name="utf8"/>
51022     </constant>
51023     <constant name="STOCK_EXECUTE" value="gtk-execute">
51024       <type name="utf8"/>
51025     </constant>
51026     <constant name="STOCK_FILE" value="gtk-file">
51027       <type name="utf8"/>
51028     </constant>
51029     <constant name="STOCK_FIND" value="gtk-find">
51030       <type name="utf8"/>
51031     </constant>
51032     <constant name="STOCK_FIND_AND_REPLACE" value="gtk-find-and-replace">
51033       <type name="utf8"/>
51034     </constant>
51035     <constant name="STOCK_FLOPPY" value="gtk-floppy">
51036       <type name="utf8"/>
51037     </constant>
51038     <constant name="STOCK_FULLSCREEN" value="gtk-fullscreen">
51039       <type name="utf8"/>
51040     </constant>
51041     <constant name="STOCK_GOTO_BOTTOM" value="gtk-goto-bottom">
51042       <type name="utf8"/>
51043     </constant>
51044     <constant name="STOCK_GOTO_FIRST" value="gtk-goto-first">
51045       <type name="utf8"/>
51046     </constant>
51047     <constant name="STOCK_GOTO_LAST" value="gtk-goto-last">
51048       <type name="utf8"/>
51049     </constant>
51050     <constant name="STOCK_GOTO_TOP" value="gtk-goto-top">
51051       <type name="utf8"/>
51052     </constant>
51053     <constant name="STOCK_GO_BACK" value="gtk-go-back">
51054       <type name="utf8"/>
51055     </constant>
51056     <constant name="STOCK_GO_DOWN" value="gtk-go-down">
51057       <type name="utf8"/>
51058     </constant>
51059     <constant name="STOCK_GO_FORWARD" value="gtk-go-forward">
51060       <type name="utf8"/>
51061     </constant>
51062     <constant name="STOCK_GO_UP" value="gtk-go-up">
51063       <type name="utf8"/>
51064     </constant>
51065     <constant name="STOCK_HARDDISK" value="gtk-harddisk">
51066       <type name="utf8"/>
51067     </constant>
51068     <constant name="STOCK_HELP" value="gtk-help">
51069       <type name="utf8"/>
51070     </constant>
51071     <constant name="STOCK_HOME" value="gtk-home">
51072       <type name="utf8"/>
51073     </constant>
51074     <constant name="STOCK_INDENT" value="gtk-indent">
51075       <type name="utf8"/>
51076     </constant>
51077     <constant name="STOCK_INDEX" value="gtk-index">
51078       <type name="utf8"/>
51079     </constant>
51080     <constant name="STOCK_INFO" value="gtk-info">
51081       <type name="utf8"/>
51082     </constant>
51083     <constant name="STOCK_ITALIC" value="gtk-italic">
51084       <type name="utf8"/>
51085     </constant>
51086     <constant name="STOCK_JUMP_TO" value="gtk-jump-to">
51087       <type name="utf8"/>
51088     </constant>
51089     <constant name="STOCK_JUSTIFY_CENTER" value="gtk-justify-center">
51090       <type name="utf8"/>
51091     </constant>
51092     <constant name="STOCK_JUSTIFY_FILL" value="gtk-justify-fill">
51093       <type name="utf8"/>
51094     </constant>
51095     <constant name="STOCK_JUSTIFY_LEFT" value="gtk-justify-left">
51096       <type name="utf8"/>
51097     </constant>
51098     <constant name="STOCK_JUSTIFY_RIGHT" value="gtk-justify-right">
51099       <type name="utf8"/>
51100     </constant>
51101     <constant name="STOCK_LEAVE_FULLSCREEN" value="gtk-leave-fullscreen">
51102       <type name="utf8"/>
51103     </constant>
51104     <constant name="STOCK_MEDIA_FORWARD" value="gtk-media-forward">
51105       <type name="utf8"/>
51106     </constant>
51107     <constant name="STOCK_MEDIA_NEXT" value="gtk-media-next">
51108       <type name="utf8"/>
51109     </constant>
51110     <constant name="STOCK_MEDIA_PAUSE" value="gtk-media-pause">
51111       <type name="utf8"/>
51112     </constant>
51113     <constant name="STOCK_MEDIA_PLAY" value="gtk-media-play">
51114       <type name="utf8"/>
51115     </constant>
51116     <constant name="STOCK_MEDIA_PREVIOUS" value="gtk-media-previous">
51117       <type name="utf8"/>
51118     </constant>
51119     <constant name="STOCK_MEDIA_RECORD" value="gtk-media-record">
51120       <type name="utf8"/>
51121     </constant>
51122     <constant name="STOCK_MEDIA_REWIND" value="gtk-media-rewind">
51123       <type name="utf8"/>
51124     </constant>
51125     <constant name="STOCK_MEDIA_STOP" value="gtk-media-stop">
51126       <type name="utf8"/>
51127     </constant>
51128     <constant name="STOCK_MISSING_IMAGE" value="gtk-missing-image">
51129       <type name="utf8"/>
51130     </constant>
51131     <constant name="STOCK_NETWORK" value="gtk-network">
51132       <type name="utf8"/>
51133     </constant>
51134     <constant name="STOCK_NEW" value="gtk-new">
51135       <type name="utf8"/>
51136     </constant>
51137     <constant name="STOCK_NO" value="gtk-no">
51138       <type name="utf8"/>
51139     </constant>
51140     <constant name="STOCK_OK" value="gtk-ok">
51141       <type name="utf8"/>
51142     </constant>
51143     <constant name="STOCK_OPEN" value="gtk-open">
51144       <type name="utf8"/>
51145     </constant>
51146     <constant name="STOCK_ORIENTATION_LANDSCAPE"
51147               value="gtk-orientation-landscape">
51148       <type name="utf8"/>
51149     </constant>
51150     <constant name="STOCK_ORIENTATION_PORTRAIT"
51151               value="gtk-orientation-portrait">
51152       <type name="utf8"/>
51153     </constant>
51154     <constant name="STOCK_ORIENTATION_REVERSE_LANDSCAPE"
51155               value="gtk-orientation-reverse-landscape">
51156       <type name="utf8"/>
51157     </constant>
51158     <constant name="STOCK_ORIENTATION_REVERSE_PORTRAIT"
51159               value="gtk-orientation-reverse-portrait">
51160       <type name="utf8"/>
51161     </constant>
51162     <constant name="STOCK_PAGE_SETUP" value="gtk-page-setup">
51163       <type name="utf8"/>
51164     </constant>
51165     <constant name="STOCK_PASTE" value="gtk-paste">
51166       <type name="utf8"/>
51167     </constant>
51168     <constant name="STOCK_PREFERENCES" value="gtk-preferences">
51169       <type name="utf8"/>
51170     </constant>
51171     <constant name="STOCK_PRINT" value="gtk-print">
51172       <type name="utf8"/>
51173     </constant>
51174     <constant name="STOCK_PRINT_ERROR" value="gtk-print-error">
51175       <type name="utf8"/>
51176     </constant>
51177     <constant name="STOCK_PRINT_PAUSED" value="gtk-print-paused">
51178       <type name="utf8"/>
51179     </constant>
51180     <constant name="STOCK_PRINT_PREVIEW" value="gtk-print-preview">
51181       <type name="utf8"/>
51182     </constant>
51183     <constant name="STOCK_PRINT_REPORT" value="gtk-print-report">
51184       <type name="utf8"/>
51185     </constant>
51186     <constant name="STOCK_PRINT_WARNING" value="gtk-print-warning">
51187       <type name="utf8"/>
51188     </constant>
51189     <constant name="STOCK_PROPERTIES" value="gtk-properties">
51190       <type name="utf8"/>
51191     </constant>
51192     <constant name="STOCK_QUIT" value="gtk-quit">
51193       <type name="utf8"/>
51194     </constant>
51195     <constant name="STOCK_REDO" value="gtk-redo">
51196       <type name="utf8"/>
51197     </constant>
51198     <constant name="STOCK_REFRESH" value="gtk-refresh">
51199       <type name="utf8"/>
51200     </constant>
51201     <constant name="STOCK_REMOVE" value="gtk-remove">
51202       <type name="utf8"/>
51203     </constant>
51204     <constant name="STOCK_REVERT_TO_SAVED" value="gtk-revert-to-saved">
51205       <type name="utf8"/>
51206     </constant>
51207     <constant name="STOCK_SAVE" value="gtk-save">
51208       <type name="utf8"/>
51209     </constant>
51210     <constant name="STOCK_SAVE_AS" value="gtk-save-as">
51211       <type name="utf8"/>
51212     </constant>
51213     <constant name="STOCK_SELECT_ALL" value="gtk-select-all">
51214       <type name="utf8"/>
51215     </constant>
51216     <constant name="STOCK_SELECT_COLOR" value="gtk-select-color">
51217       <type name="utf8"/>
51218     </constant>
51219     <constant name="STOCK_SELECT_FONT" value="gtk-select-font">
51220       <type name="utf8"/>
51221     </constant>
51222     <constant name="STOCK_SORT_ASCENDING" value="gtk-sort-ascending">
51223       <type name="utf8"/>
51224     </constant>
51225     <constant name="STOCK_SORT_DESCENDING" value="gtk-sort-descending">
51226       <type name="utf8"/>
51227     </constant>
51228     <constant name="STOCK_SPELL_CHECK" value="gtk-spell-check">
51229       <type name="utf8"/>
51230     </constant>
51231     <constant name="STOCK_STOP" value="gtk-stop">
51232       <type name="utf8"/>
51233     </constant>
51234     <constant name="STOCK_STRIKETHROUGH" value="gtk-strikethrough">
51235       <type name="utf8"/>
51236     </constant>
51237     <constant name="STOCK_UNDELETE" value="gtk-undelete">
51238       <type name="utf8"/>
51239     </constant>
51240     <constant name="STOCK_UNDERLINE" value="gtk-underline">
51241       <type name="utf8"/>
51242     </constant>
51243     <constant name="STOCK_UNDO" value="gtk-undo">
51244       <type name="utf8"/>
51245     </constant>
51246     <constant name="STOCK_UNINDENT" value="gtk-unindent">
51247       <type name="utf8"/>
51248     </constant>
51249     <constant name="STOCK_YES" value="gtk-yes">
51250       <type name="utf8"/>
51251     </constant>
51252     <constant name="STOCK_ZOOM_100" value="gtk-zoom-100">
51253       <type name="utf8"/>
51254     </constant>
51255     <constant name="STOCK_ZOOM_FIT" value="gtk-zoom-fit">
51256       <type name="utf8"/>
51257     </constant>
51258     <constant name="STOCK_ZOOM_IN" value="gtk-zoom-in">
51259       <type name="utf8"/>
51260     </constant>
51261     <constant name="STOCK_ZOOM_OUT" value="gtk-zoom-out">
51262       <type name="utf8"/>
51263     </constant>
51264     <class name="Scale"
51265            c:type="GtkScale"
51266            parent="Range"
51267            abstract="1"
51268            glib:type-name="GtkScale"
51269            glib:get-type="gtk_scale_get_type"
51270            glib:type-struct="ScaleClass">
51271       <implements name="Atk.ImplementorIface"/>
51272       <implements name="Buildable"/>
51273       <implements name="Orientable"/>
51274       <virtual-method name="draw_value">
51275         <return-value transfer-ownership="none">
51276           <type name="none" c:type="void"/>
51277         </return-value>
51278       </virtual-method>
51279       <virtual-method name="get_layout_offsets"
51280                       invoker="get_layout_offsets"
51281                       version="2.4">
51282         <doc xml:whitespace="preserve">Obtains the coordinates where the scale will draw the 
51283 #PangoLayout representing the text in the scale. Remember
51284 when using the #PangoLayout function you need to convert to
51285 and from pixels using PANGO_PIXELS() or #PANGO_SCALE. 
51286 If the #GtkScale:draw-value property is %FALSE, the return 
51287 values are undefined.</doc>
51288         <return-value transfer-ownership="none">
51289           <type name="none" c:type="void"/>
51290         </return-value>
51291         <parameters>
51292           <parameter name="x"
51293                      direction="out"
51294                      caller-allocates="0"
51295                      transfer-ownership="full"
51296                      allow-none="1">
51297             <doc xml:whitespace="preserve">location to store X offset of layout, or %NULL</doc>
51298             <type name="int" c:type="gint*"/>
51299           </parameter>
51300           <parameter name="y"
51301                      direction="out"
51302                      caller-allocates="0"
51303                      transfer-ownership="full"
51304                      allow-none="1">
51305             <doc xml:whitespace="preserve">location to store Y offset of layout, or %NULL</doc>
51306             <type name="int" c:type="gint*"/>
51307           </parameter>
51308         </parameters>
51309       </virtual-method>
51310       <method name="set_digits" c:identifier="gtk_scale_set_digits">
51311         <doc xml:whitespace="preserve">Sets the number of decimal places that are displayed in the value.
51312 Also causes the value of the adjustment to be rounded off to this
51313 number of digits, so the retrieved value matches the value the user saw.</doc>
51314         <return-value transfer-ownership="none">
51315           <type name="none" c:type="void"/>
51316         </return-value>
51317         <parameters>
51318           <parameter name="digits" transfer-ownership="none">
51319             <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>
51320             <type name="int" c:type="gint"/>
51321           </parameter>
51322         </parameters>
51323       </method>
51324       <method name="get_digits" c:identifier="gtk_scale_get_digits">
51325         <doc xml:whitespace="preserve">Gets the number of decimal places that are displayed in the value.</doc>
51326         <return-value transfer-ownership="none">
51327           <doc xml:whitespace="preserve">the number of decimal places that are displayed</doc>
51328           <type name="int" c:type="gint"/>
51329         </return-value>
51330       </method>
51331       <method name="set_draw_value" c:identifier="gtk_scale_set_draw_value">
51332         <doc xml:whitespace="preserve">Specifies whether the current value is displayed as a string next 
51333 to the slider.</doc>
51334         <return-value transfer-ownership="none">
51335           <type name="none" c:type="void"/>
51336         </return-value>
51337         <parameters>
51338           <parameter name="draw_value" transfer-ownership="none">
51339             <doc xml:whitespace="preserve">%TRUE to draw the value</doc>
51340             <type name="boolean" c:type="gboolean"/>
51341           </parameter>
51342         </parameters>
51343       </method>
51344       <method name="get_draw_value" c:identifier="gtk_scale_get_draw_value">
51345         <doc xml:whitespace="preserve">Returns whether the current value is displayed as a string 
51346 next to the slider.</doc>
51347         <return-value transfer-ownership="none">
51348           <doc xml:whitespace="preserve">whether the current value is displayed as a string</doc>
51349           <type name="boolean" c:type="gboolean"/>
51350         </return-value>
51351       </method>
51352       <method name="set_value_pos" c:identifier="gtk_scale_set_value_pos">
51353         <doc xml:whitespace="preserve">Sets the position in which the current value is displayed.</doc>
51354         <return-value transfer-ownership="none">
51355           <type name="none" c:type="void"/>
51356         </return-value>
51357         <parameters>
51358           <parameter name="pos" transfer-ownership="none">
51359             <doc xml:whitespace="preserve">the position in which the current value is displayed</doc>
51360             <type name="PositionType" c:type="GtkPositionType"/>
51361           </parameter>
51362         </parameters>
51363       </method>
51364       <method name="get_value_pos" c:identifier="gtk_scale_get_value_pos">
51365         <doc xml:whitespace="preserve">Gets the position in which the current value is displayed.</doc>
51366         <return-value transfer-ownership="full">
51367           <doc xml:whitespace="preserve">the position in which the current value is displayed</doc>
51368           <type name="PositionType" c:type="GtkPositionType"/>
51369         </return-value>
51370       </method>
51371       <method name="get_layout"
51372               c:identifier="gtk_scale_get_layout"
51373               version="2.4">
51374         <doc xml:whitespace="preserve">Gets the #PangoLayout used to display the scale. 
51375 The returned object is owned by the scale so does 
51376 not need to be freed by the caller. 
51377 if the #GtkScale:draw-value property is %FALSE.</doc>
51378         <return-value transfer-ownership="full">
51379           <doc xml:whitespace="preserve">the #PangoLayout for this scale, or %NULL</doc>
51380           <type name="Pango.Layout" c:type="PangoLayout*"/>
51381         </return-value>
51382       </method>
51383       <method name="get_layout_offsets"
51384               c:identifier="gtk_scale_get_layout_offsets"
51385               version="2.4">
51386         <doc xml:whitespace="preserve">Obtains the coordinates where the scale will draw the 
51387 #PangoLayout representing the text in the scale. Remember
51388 when using the #PangoLayout function you need to convert to
51389 and from pixels using PANGO_PIXELS() or #PANGO_SCALE. 
51390 If the #GtkScale:draw-value property is %FALSE, the return 
51391 values are undefined.</doc>
51392         <return-value transfer-ownership="none">
51393           <type name="none" c:type="void"/>
51394         </return-value>
51395         <parameters>
51396           <parameter name="x"
51397                      direction="out"
51398                      caller-allocates="0"
51399                      transfer-ownership="full"
51400                      allow-none="1">
51401             <doc xml:whitespace="preserve">location to store X offset of layout, or %NULL</doc>
51402             <type name="int" c:type="gint*"/>
51403           </parameter>
51404           <parameter name="y"
51405                      direction="out"
51406                      caller-allocates="0"
51407                      transfer-ownership="full"
51408                      allow-none="1">
51409             <doc xml:whitespace="preserve">location to store Y offset of layout, or %NULL</doc>
51410             <type name="int" c:type="gint*"/>
51411           </parameter>
51412         </parameters>
51413       </method>
51414       <method name="add_mark" c:identifier="gtk_scale_add_mark" version="2.16">
51415         <doc xml:whitespace="preserve">Adds a mark at @value. 
51416 A mark is indicated visually by drawing a tick mark next to the scale, 
51417 and GTK+ makes it easy for the user to position the scale exactly at the 
51418 marks value.
51419 If @markup is not %NULL, text is shown next to the tick mark. 
51420 To remove marks from a scale, use gtk_scale_clear_marks().</doc>
51421         <return-value transfer-ownership="none">
51422           <type name="none" c:type="void"/>
51423         </return-value>
51424         <parameters>
51425           <parameter name="value" transfer-ownership="none">
51426             <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>
51427             <type name="double" c:type="gdouble"/>
51428           </parameter>
51429           <parameter name="position" transfer-ownership="none">
51430             <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>
51431             <type name="PositionType" c:type="GtkPositionType"/>
51432           </parameter>
51433           <parameter name="markup" transfer-ownership="none" allow-none="1">
51434             <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>
51435             <type name="utf8" c:type="gchar*"/>
51436           </parameter>
51437         </parameters>
51438       </method>
51439       <method name="clear_marks"
51440               c:identifier="gtk_scale_clear_marks"
51441               version="2.16">
51442         <doc xml:whitespace="preserve">Removes any marks that have been added with gtk_scale_add_mark().</doc>
51443         <return-value transfer-ownership="none">
51444           <type name="none" c:type="void"/>
51445         </return-value>
51446       </method>
51447       <property name="digits" writable="1" transfer-ownership="none">
51448         <type name="int" c:type="gint"/>
51449       </property>
51450       <property name="draw-value" writable="1" transfer-ownership="none">
51451         <type name="boolean" c:type="gboolean"/>
51452       </property>
51453       <property name="value-pos" writable="1" transfer-ownership="none">
51454         <type name="PositionType" c:type="GtkPositionType"/>
51455       </property>
51456       <field name="range">
51457         <type name="Range" c:type="GtkRange"/>
51458       </field>
51459       <field name="digits">
51460         <type name="int" c:type="gint"/>
51461       </field>
51462       <field name="draw_value" bits="1">
51463         <type name="uint" c:type="guint"/>
51464       </field>
51465       <field name="value_pos" bits="2">
51466         <type name="uint" c:type="guint"/>
51467       </field>
51468       <glib:signal name="format-value">
51469         <doc xml:whitespace="preserve">Signal which allows you to change how the scale value is displayed.
51470 Connect a signal handler which returns an allocated string representing 
51471 Here's an example signal handler which displays a value 1.0 as
51472 with "--&amp;gt;1.0&amp;lt;--".
51473 |[
51474 static gchar*
51475 format_value_callback (GtkScale *scale,
51476 gdouble   value)
51477 {
51478 return g_strdup_printf ("--&amp;gt;&amp;percnt;0.*g&amp;lt;--",
51479 gtk_scale_get_digits (scale), value);
51480 }
51481 ]|</doc>
51482         <return-value transfer-ownership="full">
51483           <doc xml:whitespace="preserve">allocated string representing @value</doc>
51484           <type name="utf8" c:type="gchararray"/>
51485         </return-value>
51486         <parameters>
51487           <parameter name="value" transfer-ownership="none">
51488             <doc xml:whitespace="preserve">the value to format</doc>
51489             <type name="double" c:type="gdouble"/>
51490           </parameter>
51491         </parameters>
51492       </glib:signal>
51493     </class>
51494     <class name="ScaleButton"
51495            c:type="GtkScaleButton"
51496            parent="Button"
51497            glib:type-name="GtkScaleButton"
51498            glib:get-type="gtk_scale_button_get_type"
51499            glib:type-struct="ScaleButtonClass">
51500       <implements name="Activatable"/>
51501       <implements name="Atk.ImplementorIface"/>
51502       <implements name="Buildable"/>
51503       <implements name="Orientable"/>
51504       <constructor name="new"
51505                    c:identifier="gtk_scale_button_new"
51506                    version="2.12">
51507         <doc xml:whitespace="preserve">Creates a #GtkScaleButton, with a range between @min and @max, with
51508 a stepping of @step.</doc>
51509         <return-value transfer-ownership="full">
51510           <doc xml:whitespace="preserve">a new #GtkScaleButton</doc>
51511           <type name="ScaleButton" c:type="GtkWidget*"/>
51512         </return-value>
51513         <parameters>
51514           <parameter name="size" transfer-ownership="none">
51515             <doc xml:whitespace="preserve">a stock icon size</doc>
51516             <type name="IconSize" c:type="GtkIconSize"/>
51517           </parameter>
51518           <parameter name="min" transfer-ownership="none">
51519             <doc xml:whitespace="preserve">the minimum value of the scale (usually 0)</doc>
51520             <type name="double" c:type="gdouble"/>
51521           </parameter>
51522           <parameter name="max" transfer-ownership="none">
51523             <doc xml:whitespace="preserve">the maximum value of the scale (usually 100)</doc>
51524             <type name="double" c:type="gdouble"/>
51525           </parameter>
51526           <parameter name="step" transfer-ownership="none">
51527             <doc xml:whitespace="preserve">the stepping of value when a scroll-wheel event, or up/down arrow event occurs (usually 2)</doc>
51528             <type name="double" c:type="gdouble"/>
51529           </parameter>
51530           <parameter name="icons" transfer-ownership="none" allow-none="1">
51531             <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>
51532             <array c:type="gchar**">
51533               <type name="utf8"/>
51534             </array>
51535           </parameter>
51536         </parameters>
51537       </constructor>
51538       <method name="set_icons"
51539               c:identifier="gtk_scale_button_set_icons"
51540               version="2.12">
51541         <doc xml:whitespace="preserve">Sets the icons to be used by the scale button.
51542 For details, see the #GtkScaleButton:icons property.</doc>
51543         <return-value transfer-ownership="none">
51544           <type name="none" c:type="void"/>
51545         </return-value>
51546         <parameters>
51547           <parameter name="icons" transfer-ownership="none">
51548             <doc xml:whitespace="preserve">a %NULL-terminated array of icon names</doc>
51549             <array c:type="gchar**">
51550               <type name="utf8"/>
51551             </array>
51552           </parameter>
51553         </parameters>
51554       </method>
51555       <method name="get_value"
51556               c:identifier="gtk_scale_button_get_value"
51557               version="2.12">
51558         <doc xml:whitespace="preserve">Gets the current value of the scale button.</doc>
51559         <return-value transfer-ownership="none">
51560           <doc xml:whitespace="preserve">current value of the scale button</doc>
51561           <type name="double" c:type="gdouble"/>
51562         </return-value>
51563       </method>
51564       <method name="set_value"
51565               c:identifier="gtk_scale_button_set_value"
51566               version="2.12">
51567         <doc xml:whitespace="preserve">Sets the current value of the scale; if the value is outside
51568 the minimum or maximum range values, it will be clamped to fit
51569 inside them. The scale button emits the #GtkScaleButton::value-changed
51570 signal if the value changes.</doc>
51571         <return-value transfer-ownership="none">
51572           <type name="none" c:type="void"/>
51573         </return-value>
51574         <parameters>
51575           <parameter name="value" transfer-ownership="none">
51576             <doc xml:whitespace="preserve">new value of the scale button</doc>
51577             <type name="double" c:type="gdouble"/>
51578           </parameter>
51579         </parameters>
51580       </method>
51581       <method name="get_adjustment"
51582               c:identifier="gtk_scale_button_get_adjustment"
51583               version="2.12">
51584         <doc xml:whitespace="preserve">Gets the #GtkAdjustment associated with the #GtkScaleButton's scale.
51585 See gtk_range_get_adjustment() for details.</doc>
51586         <return-value transfer-ownership="full">
51587           <doc xml:whitespace="preserve">the adjustment associated with the scale</doc>
51588           <type name="Adjustment" c:type="GtkAdjustment*"/>
51589         </return-value>
51590       </method>
51591       <method name="set_adjustment"
51592               c:identifier="gtk_scale_button_set_adjustment"
51593               version="2.12">
51594         <doc xml:whitespace="preserve">Sets the #GtkAdjustment to be used as a model
51595 for the #GtkScaleButton's scale.
51596 See gtk_range_set_adjustment() for details.</doc>
51597         <return-value transfer-ownership="none">
51598           <type name="none" c:type="void"/>
51599         </return-value>
51600         <parameters>
51601           <parameter name="adjustment" transfer-ownership="none">
51602             <doc xml:whitespace="preserve">a #GtkAdjustment</doc>
51603             <type name="Adjustment" c:type="GtkAdjustment*"/>
51604           </parameter>
51605         </parameters>
51606       </method>
51607       <method name="get_plus_button"
51608               c:identifier="gtk_scale_button_get_plus_button"
51609               version="2.14">
51610         <doc xml:whitespace="preserve">Retrieves the plus button of the #GtkScaleButton.</doc>
51611         <return-value transfer-ownership="full">
51612           <doc xml:whitespace="preserve">the plus button of the #GtkScaleButton.</doc>
51613           <type name="Widget" c:type="GtkWidget*"/>
51614         </return-value>
51615       </method>
51616       <method name="get_minus_button"
51617               c:identifier="gtk_scale_button_get_minus_button"
51618               version="2.14">
51619         <doc xml:whitespace="preserve">Retrieves the minus button of the #GtkScaleButton.</doc>
51620         <return-value transfer-ownership="full">
51621           <doc xml:whitespace="preserve">the minus button of the #GtkScaleButton.</doc>
51622           <type name="Widget" c:type="GtkWidget*"/>
51623         </return-value>
51624       </method>
51625       <method name="get_popup"
51626               c:identifier="gtk_scale_button_get_popup"
51627               version="2.14">
51628         <doc xml:whitespace="preserve">Retrieves the popup of the #GtkScaleButton.</doc>
51629         <return-value transfer-ownership="full">
51630           <doc xml:whitespace="preserve">the popup of the #GtkScaleButton</doc>
51631           <type name="Widget" c:type="GtkWidget*"/>
51632         </return-value>
51633       </method>
51634       <method name="get_orientation"
51635               c:identifier="gtk_scale_button_get_orientation"
51636               version="2.14"
51637               deprecated="Use gtk_orientable_get_orientation() instead."
51638               deprecated-version="2.16">
51639         <doc xml:whitespace="preserve">Gets the orientation of the #GtkScaleButton's popup window.</doc>
51640         <return-value transfer-ownership="full">
51641           <doc xml:whitespace="preserve">the #GtkScaleButton's orientation.</doc>
51642           <type name="Orientation" c:type="GtkOrientation"/>
51643         </return-value>
51644       </method>
51645       <method name="set_orientation"
51646               c:identifier="gtk_scale_button_set_orientation"
51647               version="2.14"
51648               deprecated="Use gtk_orientable_set_orientation() instead."
51649               deprecated-version="2.16">
51650         <doc xml:whitespace="preserve">Sets the orientation of the #GtkScaleButton's popup window.</doc>
51651         <return-value transfer-ownership="none">
51652           <type name="none" c:type="void"/>
51653         </return-value>
51654         <parameters>
51655           <parameter name="orientation" transfer-ownership="none">
51656             <doc xml:whitespace="preserve">the new orientation</doc>
51657             <type name="Orientation" c:type="GtkOrientation"/>
51658           </parameter>
51659         </parameters>
51660       </method>
51661       <property name="adjustment" writable="1" transfer-ownership="none">
51662         <type name="Adjustment" c:type="GtkAdjustment"/>
51663       </property>
51664       <property name="icons"
51665                 version="2.12"
51666                 writable="1"
51667                 transfer-ownership="none">
51668         <doc xml:whitespace="preserve">The names of the icons to be used by the scale button.
51669 The first item in the array will be used in the button
51670 when the current value is the lowest value, the second
51671 item for the highest value. All the subsequent icons will
51672 be used for all the other values, spread evenly over the
51673 range of values.
51674 If there's only one icon name in the @icons array, it will
51675 be used for all the values. If only two icon names are in
51676 the @icons array, the first one will be used for the bottom
51677 50% of the scale, and the second one for the top 50%.
51678 It is recommended to use at least 3 icons so that the
51679 #GtkScaleButton reflects the current value of the scale
51680 better for the users.</doc>
51681         <type name="GObject.Strv" c:type="GStrv"/>
51682       </property>
51683       <property name="size" writable="1" transfer-ownership="none">
51684         <type name="IconSize" c:type="GtkIconSize"/>
51685       </property>
51686       <property name="value" writable="1" transfer-ownership="none">
51687         <type name="double" c:type="gdouble"/>
51688       </property>
51689       <field name="parent">
51690         <type name="Button" c:type="GtkButton"/>
51691       </field>
51692       <field name="plus_button">
51693         <type name="Widget" c:type="GtkWidget*"/>
51694       </field>
51695       <field name="minus_button">
51696         <type name="Widget" c:type="GtkWidget*"/>
51697       </field>
51698       <field name="priv">
51699         <type name="ScaleButtonPrivate" c:type="GtkScaleButtonPrivate*"/>
51700       </field>
51701       <glib:signal name="popdown" version="2.12">
51702         <doc xml:whitespace="preserve">The ::popdown signal is a
51703 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
51704 which gets emitted to popdown the scale widget.
51705 The default binding for this signal is Escape.</doc>
51706         <return-value transfer-ownership="full">
51707           <type name="none" c:type="void"/>
51708         </return-value>
51709       </glib:signal>
51710       <glib:signal name="popup" version="2.12">
51711         <doc xml:whitespace="preserve">The ::popup signal is a
51712 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
51713 which gets emitted to popup the scale widget.
51714 The default bindings for this signal are Space, Enter and Return.</doc>
51715         <return-value transfer-ownership="full">
51716           <type name="none" c:type="void"/>
51717         </return-value>
51718       </glib:signal>
51719       <glib:signal name="value-changed" version="2.12">
51720         <doc xml:whitespace="preserve">The ::value-changed signal is emitted when the value field has
51721 changed.</doc>
51722         <return-value transfer-ownership="full">
51723           <type name="none" c:type="void"/>
51724         </return-value>
51725         <parameters>
51726           <parameter name="value" transfer-ownership="none">
51727             <doc xml:whitespace="preserve">the new value</doc>
51728             <type name="double" c:type="gdouble"/>
51729           </parameter>
51730         </parameters>
51731       </glib:signal>
51732     </class>
51733     <record name="ScaleButtonClass"
51734             c:type="GtkScaleButtonClass"
51735             glib:is-gtype-struct-for="ScaleButton">
51736       <field name="parent_class">
51737         <type name="ButtonClass" c:type="GtkButtonClass"/>
51738       </field>
51739       <field name="value_changed">
51740         <callback name="value_changed" c:type="value_changed">
51741           <return-value transfer-ownership="none">
51742             <type name="none" c:type="void"/>
51743           </return-value>
51744           <parameters>
51745             <parameter name="button" transfer-ownership="none">
51746               <type name="ScaleButton" c:type="GtkScaleButton*"/>
51747             </parameter>
51748             <parameter name="value" transfer-ownership="none">
51749               <type name="double" c:type="gdouble"/>
51750             </parameter>
51751           </parameters>
51752         </callback>
51753       </field>
51754       <field name="gtk_reserved1">
51755         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
51756           <return-value transfer-ownership="none">
51757             <type name="none" c:type="void"/>
51758           </return-value>
51759         </callback>
51760       </field>
51761       <field name="gtk_reserved2">
51762         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
51763           <return-value transfer-ownership="none">
51764             <type name="none" c:type="void"/>
51765           </return-value>
51766         </callback>
51767       </field>
51768       <field name="gtk_reserved3">
51769         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
51770           <return-value transfer-ownership="none">
51771             <type name="none" c:type="void"/>
51772           </return-value>
51773         </callback>
51774       </field>
51775       <field name="gtk_reserved4">
51776         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
51777           <return-value transfer-ownership="none">
51778             <type name="none" c:type="void"/>
51779           </return-value>
51780         </callback>
51781       </field>
51782     </record>
51783     <record name="ScaleButtonPrivate" c:type="GtkScaleButtonPrivate">
51784     </record>
51785     <record name="ScaleClass"
51786             c:type="GtkScaleClass"
51787             glib:is-gtype-struct-for="Scale">
51788       <field name="parent_class">
51789         <type name="RangeClass" c:type="GtkRangeClass"/>
51790       </field>
51791       <field name="format_value">
51792         <callback name="format_value" c:type="format_value">
51793           <return-value transfer-ownership="full">
51794             <type name="utf8" c:type="gchar*"/>
51795           </return-value>
51796           <parameters>
51797             <parameter name="scale" transfer-ownership="none">
51798               <type name="Scale" c:type="GtkScale*"/>
51799             </parameter>
51800             <parameter name="value" transfer-ownership="none">
51801               <type name="double" c:type="gdouble"/>
51802             </parameter>
51803           </parameters>
51804         </callback>
51805       </field>
51806       <field name="draw_value">
51807         <callback name="draw_value" c:type="draw_value">
51808           <return-value transfer-ownership="none">
51809             <type name="none" c:type="void"/>
51810           </return-value>
51811           <parameters>
51812             <parameter name="scale" transfer-ownership="none">
51813               <type name="Scale" c:type="GtkScale*"/>
51814             </parameter>
51815           </parameters>
51816         </callback>
51817       </field>
51818       <field name="get_layout_offsets">
51819         <callback name="get_layout_offsets" c:type="get_layout_offsets">
51820           <return-value transfer-ownership="none">
51821             <type name="none" c:type="void"/>
51822           </return-value>
51823           <parameters>
51824             <parameter name="scale" transfer-ownership="none">
51825               <type name="Scale" c:type="GtkScale*"/>
51826             </parameter>
51827             <parameter name="x"
51828                        direction="out"
51829                        caller-allocates="0"
51830                        transfer-ownership="full"
51831                        allow-none="1">
51832               <doc xml:whitespace="preserve">location to store X offset of layout, or %NULL</doc>
51833               <type name="int" c:type="gint*"/>
51834             </parameter>
51835             <parameter name="y"
51836                        direction="out"
51837                        caller-allocates="0"
51838                        transfer-ownership="full"
51839                        allow-none="1">
51840               <doc xml:whitespace="preserve">location to store Y offset of layout, or %NULL</doc>
51841               <type name="int" c:type="gint*"/>
51842             </parameter>
51843           </parameters>
51844         </callback>
51845       </field>
51846       <field name="gtk_reserved1">
51847         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
51848           <return-value transfer-ownership="none">
51849             <type name="none" c:type="void"/>
51850           </return-value>
51851         </callback>
51852       </field>
51853       <field name="gtk_reserved2">
51854         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
51855           <return-value transfer-ownership="none">
51856             <type name="none" c:type="void"/>
51857           </return-value>
51858         </callback>
51859       </field>
51860       <field name="gtk_reserved3">
51861         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
51862           <return-value transfer-ownership="none">
51863             <type name="none" c:type="void"/>
51864           </return-value>
51865         </callback>
51866       </field>
51867     </record>
51868     <enumeration name="ScrollStep"
51869                  glib:type-name="GtkScrollStep"
51870                  glib:get-type="gtk_scroll_step_get_type"
51871                  c:type="GtkScrollStep">
51872       <member name="steps"
51873               value="0"
51874               c:identifier="GTK_SCROLL_STEPS"
51875               glib:nick="steps"/>
51876       <member name="pages"
51877               value="1"
51878               c:identifier="GTK_SCROLL_PAGES"
51879               glib:nick="pages"/>
51880       <member name="ends"
51881               value="2"
51882               c:identifier="GTK_SCROLL_ENDS"
51883               glib:nick="ends"/>
51884       <member name="horizontal_steps"
51885               value="3"
51886               c:identifier="GTK_SCROLL_HORIZONTAL_STEPS"
51887               glib:nick="horizontal-steps"/>
51888       <member name="horizontal_pages"
51889               value="4"
51890               c:identifier="GTK_SCROLL_HORIZONTAL_PAGES"
51891               glib:nick="horizontal-pages"/>
51892       <member name="horizontal_ends"
51893               value="5"
51894               c:identifier="GTK_SCROLL_HORIZONTAL_ENDS"
51895               glib:nick="horizontal-ends"/>
51896     </enumeration>
51897     <enumeration name="ScrollType"
51898                  glib:type-name="GtkScrollType"
51899                  glib:get-type="gtk_scroll_type_get_type"
51900                  c:type="GtkScrollType">
51901       <member name="none"
51902               value="0"
51903               c:identifier="GTK_SCROLL_NONE"
51904               glib:nick="none"/>
51905       <member name="jump"
51906               value="1"
51907               c:identifier="GTK_SCROLL_JUMP"
51908               glib:nick="jump"/>
51909       <member name="step_backward"
51910               value="2"
51911               c:identifier="GTK_SCROLL_STEP_BACKWARD"
51912               glib:nick="step-backward"/>
51913       <member name="step_forward"
51914               value="3"
51915               c:identifier="GTK_SCROLL_STEP_FORWARD"
51916               glib:nick="step-forward"/>
51917       <member name="page_backward"
51918               value="4"
51919               c:identifier="GTK_SCROLL_PAGE_BACKWARD"
51920               glib:nick="page-backward"/>
51921       <member name="page_forward"
51922               value="5"
51923               c:identifier="GTK_SCROLL_PAGE_FORWARD"
51924               glib:nick="page-forward"/>
51925       <member name="step_up"
51926               value="6"
51927               c:identifier="GTK_SCROLL_STEP_UP"
51928               glib:nick="step-up"/>
51929       <member name="step_down"
51930               value="7"
51931               c:identifier="GTK_SCROLL_STEP_DOWN"
51932               glib:nick="step-down"/>
51933       <member name="page_up"
51934               value="8"
51935               c:identifier="GTK_SCROLL_PAGE_UP"
51936               glib:nick="page-up"/>
51937       <member name="page_down"
51938               value="9"
51939               c:identifier="GTK_SCROLL_PAGE_DOWN"
51940               glib:nick="page-down"/>
51941       <member name="step_left"
51942               value="10"
51943               c:identifier="GTK_SCROLL_STEP_LEFT"
51944               glib:nick="step-left"/>
51945       <member name="step_right"
51946               value="11"
51947               c:identifier="GTK_SCROLL_STEP_RIGHT"
51948               glib:nick="step-right"/>
51949       <member name="page_left"
51950               value="12"
51951               c:identifier="GTK_SCROLL_PAGE_LEFT"
51952               glib:nick="page-left"/>
51953       <member name="page_right"
51954               value="13"
51955               c:identifier="GTK_SCROLL_PAGE_RIGHT"
51956               glib:nick="page-right"/>
51957       <member name="start"
51958               value="14"
51959               c:identifier="GTK_SCROLL_START"
51960               glib:nick="start"/>
51961       <member name="end"
51962               value="15"
51963               c:identifier="GTK_SCROLL_END"
51964               glib:nick="end"/>
51965     </enumeration>
51966     <class name="Scrollbar"
51967            c:type="GtkScrollbar"
51968            parent="Range"
51969            abstract="1"
51970            glib:type-name="GtkScrollbar"
51971            glib:get-type="gtk_scrollbar_get_type"
51972            glib:type-struct="ScrollbarClass">
51973       <implements name="Atk.ImplementorIface"/>
51974       <implements name="Buildable"/>
51975       <implements name="Orientable"/>
51976       <field name="range">
51977         <type name="Range" c:type="GtkRange"/>
51978       </field>
51979     </class>
51980     <record name="ScrollbarClass"
51981             c:type="GtkScrollbarClass"
51982             glib:is-gtype-struct-for="Scrollbar">
51983       <field name="parent_class">
51984         <type name="RangeClass" c:type="GtkRangeClass"/>
51985       </field>
51986       <field name="gtk_reserved1">
51987         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
51988           <return-value transfer-ownership="none">
51989             <type name="none" c:type="void"/>
51990           </return-value>
51991         </callback>
51992       </field>
51993       <field name="gtk_reserved2">
51994         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
51995           <return-value transfer-ownership="none">
51996             <type name="none" c:type="void"/>
51997           </return-value>
51998         </callback>
51999       </field>
52000       <field name="gtk_reserved3">
52001         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
52002           <return-value transfer-ownership="none">
52003             <type name="none" c:type="void"/>
52004           </return-value>
52005         </callback>
52006       </field>
52007       <field name="gtk_reserved4">
52008         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
52009           <return-value transfer-ownership="none">
52010             <type name="none" c:type="void"/>
52011           </return-value>
52012         </callback>
52013       </field>
52014     </record>
52015     <class name="ScrolledWindow"
52016            c:type="GtkScrolledWindow"
52017            parent="Bin"
52018            glib:type-name="GtkScrolledWindow"
52019            glib:get-type="gtk_scrolled_window_get_type"
52020            glib:type-struct="ScrolledWindowClass">
52021       <implements name="Atk.ImplementorIface"/>
52022       <implements name="Buildable"/>
52023       <constructor name="new" c:identifier="gtk_scrolled_window_new">
52024         <doc xml:whitespace="preserve">Creates a new scrolled window.
52025 The two arguments are the scrolled window's adjustments; these will be
52026 shared with the scrollbars and the child widget to keep the bars in sync 
52027 with the child. Usually you want to pass %NULL for the adjustments, which 
52028 will cause the scrolled window to create them for you.</doc>
52029         <return-value transfer-ownership="full">
52030           <doc xml:whitespace="preserve">a new scrolled window</doc>
52031           <type name="ScrolledWindow" c:type="GtkWidget*"/>
52032         </return-value>
52033         <parameters>
52034           <parameter name="hadjustment"
52035                      transfer-ownership="none"
52036                      allow-none="1">
52037             <doc xml:whitespace="preserve">horizontal adjustment</doc>
52038             <type name="Adjustment" c:type="GtkAdjustment*"/>
52039           </parameter>
52040           <parameter name="vadjustment"
52041                      transfer-ownership="none"
52042                      allow-none="1">
52043             <doc xml:whitespace="preserve">vertical adjustment</doc>
52044             <type name="Adjustment" c:type="GtkAdjustment*"/>
52045           </parameter>
52046         </parameters>
52047       </constructor>
52048       <method name="set_hadjustment"
52049               c:identifier="gtk_scrolled_window_set_hadjustment">
52050         <doc xml:whitespace="preserve">Sets the #GtkAdjustment for the horizontal scrollbar.</doc>
52051         <return-value transfer-ownership="none">
52052           <type name="none" c:type="void"/>
52053         </return-value>
52054         <parameters>
52055           <parameter name="hadjustment" transfer-ownership="none">
52056             <doc xml:whitespace="preserve">horizontal scroll adjustment</doc>
52057             <type name="Adjustment" c:type="GtkAdjustment*"/>
52058           </parameter>
52059         </parameters>
52060       </method>
52061       <method name="set_vadjustment"
52062               c:identifier="gtk_scrolled_window_set_vadjustment">
52063         <doc xml:whitespace="preserve">Sets the #GtkAdjustment for the vertical scrollbar.</doc>
52064         <return-value transfer-ownership="none">
52065           <type name="none" c:type="void"/>
52066         </return-value>
52067         <parameters>
52068           <parameter name="vadjustment" transfer-ownership="none">
52069             <doc xml:whitespace="preserve">vertical scroll adjustment</doc>
52070             <type name="Adjustment" c:type="GtkAdjustment*"/>
52071           </parameter>
52072         </parameters>
52073       </method>
52074       <method name="get_hadjustment"
52075               c:identifier="gtk_scrolled_window_get_hadjustment">
52076         <doc xml:whitespace="preserve">Returns the horizontal scrollbar's adjustment, used to connect the
52077 horizontal scrollbar to the child widget's horizontal scroll
52078 functionality.</doc>
52079         <return-value transfer-ownership="full">
52080           <doc xml:whitespace="preserve">the horizontal #GtkAdjustment</doc>
52081           <type name="Adjustment" c:type="GtkAdjustment*"/>
52082         </return-value>
52083       </method>
52084       <method name="get_vadjustment"
52085               c:identifier="gtk_scrolled_window_get_vadjustment">
52086         <doc xml:whitespace="preserve">Returns the vertical scrollbar's adjustment, used to connect the
52087 vertical scrollbar to the child widget's vertical scroll
52088 functionality.</doc>
52089         <return-value transfer-ownership="full">
52090           <doc xml:whitespace="preserve">the vertical #GtkAdjustment</doc>
52091           <type name="Adjustment" c:type="GtkAdjustment*"/>
52092         </return-value>
52093       </method>
52094       <method name="get_hscrollbar"
52095               c:identifier="gtk_scrolled_window_get_hscrollbar"
52096               version="2.8">
52097         <doc xml:whitespace="preserve">Returns the horizontal scrollbar of @scrolled_window.
52098 %NULL if it does not have one.</doc>
52099         <return-value transfer-ownership="full">
52100           <doc xml:whitespace="preserve">the horizontal scrollbar of the scrolled window, or</doc>
52101           <type name="Widget" c:type="GtkWidget*"/>
52102         </return-value>
52103       </method>
52104       <method name="get_vscrollbar"
52105               c:identifier="gtk_scrolled_window_get_vscrollbar"
52106               version="2.8">
52107         <doc xml:whitespace="preserve">Returns the vertical scrollbar of @scrolled_window.
52108 %NULL if it does not have one.</doc>
52109         <return-value transfer-ownership="full">
52110           <doc xml:whitespace="preserve">the vertical scrollbar of the scrolled window, or</doc>
52111           <type name="Widget" c:type="GtkWidget*"/>
52112         </return-value>
52113       </method>
52114       <method name="set_policy" c:identifier="gtk_scrolled_window_set_policy">
52115         <doc xml:whitespace="preserve">Sets the scrollbar policy for the horizontal and vertical scrollbars.
52116 The policy determines when the scrollbar should appear; it is a value
52117 from the #GtkPolicyType enumeration. If %GTK_POLICY_ALWAYS, the
52118 scrollbar is always present; if %GTK_POLICY_NEVER, the scrollbar is
52119 never present; if %GTK_POLICY_AUTOMATIC, the scrollbar is present only
52120 if needed (that is, if the slider part of the bar would be smaller
52121 than the trough - the display is larger than the page size).</doc>
52122         <return-value transfer-ownership="none">
52123           <type name="none" c:type="void"/>
52124         </return-value>
52125         <parameters>
52126           <parameter name="hscrollbar_policy" transfer-ownership="none">
52127             <doc xml:whitespace="preserve">policy for horizontal bar</doc>
52128             <type name="PolicyType" c:type="GtkPolicyType"/>
52129           </parameter>
52130           <parameter name="vscrollbar_policy" transfer-ownership="none">
52131             <doc xml:whitespace="preserve">policy for vertical bar</doc>
52132             <type name="PolicyType" c:type="GtkPolicyType"/>
52133           </parameter>
52134         </parameters>
52135       </method>
52136       <method name="get_policy" c:identifier="gtk_scrolled_window_get_policy">
52137         <doc xml:whitespace="preserve">Retrieves the current policy values for the horizontal and vertical
52138 scrollbars. See gtk_scrolled_window_set_policy().</doc>
52139         <return-value transfer-ownership="none">
52140           <type name="none" c:type="void"/>
52141         </return-value>
52142         <parameters>
52143           <parameter name="hscrollbar_policy" transfer-ownership="none">
52144             <doc xml:whitespace="preserve">location to store the policy for the horizontal scrollbar, or %NULL.</doc>
52145             <type name="PolicyType" c:type="GtkPolicyType*"/>
52146           </parameter>
52147           <parameter name="vscrollbar_policy" transfer-ownership="none">
52148             <doc xml:whitespace="preserve">location to store the policy for the vertical scrollbar, or %NULL.</doc>
52149             <type name="PolicyType" c:type="GtkPolicyType*"/>
52150           </parameter>
52151         </parameters>
52152       </method>
52153       <method name="set_placement"
52154               c:identifier="gtk_scrolled_window_set_placement">
52155         <doc xml:whitespace="preserve">Sets the placement of the contents with respect to the scrollbars
52156 for the scrolled window.
52157 The default is %GTK_CORNER_TOP_LEFT, meaning the child is
52158 in the top left, with the scrollbars underneath and to the right.
52159 Other values in #GtkCornerType are %GTK_CORNER_TOP_RIGHT,
52160 %GTK_CORNER_BOTTOM_LEFT, and %GTK_CORNER_BOTTOM_RIGHT.
52161 See also gtk_scrolled_window_get_placement() and
52162 gtk_scrolled_window_unset_placement().</doc>
52163         <return-value transfer-ownership="none">
52164           <type name="none" c:type="void"/>
52165         </return-value>
52166         <parameters>
52167           <parameter name="window_placement" transfer-ownership="none">
52168             <doc xml:whitespace="preserve">position of the child window</doc>
52169             <type name="CornerType" c:type="GtkCornerType"/>
52170           </parameter>
52171         </parameters>
52172       </method>
52173       <method name="unset_placement"
52174               c:identifier="gtk_scrolled_window_unset_placement"
52175               version="2.10">
52176         <doc xml:whitespace="preserve">Unsets the placement of the contents with respect to the scrollbars
52177 for the scrolled window. If no window placement is set for a scrolled
52178 window, it obeys the "gtk-scrolled-window-placement" XSETTING.
52179 See also gtk_scrolled_window_set_placement() and
52180 gtk_scrolled_window_get_placement().</doc>
52181         <return-value transfer-ownership="none">
52182           <type name="none" c:type="void"/>
52183         </return-value>
52184       </method>
52185       <method name="get_placement"
52186               c:identifier="gtk_scrolled_window_get_placement">
52187         <doc xml:whitespace="preserve">Gets the placement of the contents with respect to the scrollbars
52188 for the scrolled window. See gtk_scrolled_window_set_placement().
52189 See also gtk_scrolled_window_set_placement() and
52190 gtk_scrolled_window_unset_placement().</doc>
52191         <return-value transfer-ownership="full">
52192           <doc xml:whitespace="preserve">the current placement value.</doc>
52193           <type name="CornerType" c:type="GtkCornerType"/>
52194         </return-value>
52195       </method>
52196       <method name="set_shadow_type"
52197               c:identifier="gtk_scrolled_window_set_shadow_type">
52198         <doc xml:whitespace="preserve">Changes the type of shadow drawn around the contents of</doc>
52199         <return-value transfer-ownership="none">
52200           <type name="none" c:type="void"/>
52201         </return-value>
52202         <parameters>
52203           <parameter name="type" transfer-ownership="none">
52204             <doc xml:whitespace="preserve">kind of shadow to draw around scrolled window contents</doc>
52205             <type name="ShadowType" c:type="GtkShadowType"/>
52206           </parameter>
52207         </parameters>
52208       </method>
52209       <method name="get_shadow_type"
52210               c:identifier="gtk_scrolled_window_get_shadow_type">
52211         <doc xml:whitespace="preserve">Gets the shadow type of the scrolled window. See 
52212 gtk_scrolled_window_set_shadow_type().</doc>
52213         <return-value transfer-ownership="full">
52214           <doc xml:whitespace="preserve">the current shadow type</doc>
52215           <type name="ShadowType" c:type="GtkShadowType"/>
52216         </return-value>
52217       </method>
52218       <method name="add_with_viewport"
52219               c:identifier="gtk_scrolled_window_add_with_viewport">
52220         <doc xml:whitespace="preserve">Used to add children without native scrolling capabilities. This
52221 is simply a convenience function; it is equivalent to adding the
52222 unscrollable child to a viewport, then adding the viewport to the
52223 scrolled window. If a child has native scrolling, use
52224 gtk_container_add() instead of this function.
52225 The viewport scrolls the child by moving its #GdkWindow, and takes
52226 the size of the child to be the size of its toplevel #GdkWindow. 
52227 This will be very wrong for most widgets that support native scrolling;
52228 for example, if you add a widget such as #GtkTreeView with a viewport,
52229 the whole widget will scroll, including the column headings. Thus, 
52230 widgets with native scrolling support should not be used with the 
52231 #GtkViewport proxy.
52232 A widget supports scrolling natively if the 
52233 set_scroll_adjustments_signal field in #GtkWidgetClass is non-zero,
52234 i.e. has been filled in with a valid signal identifier.</doc>
52235         <return-value transfer-ownership="none">
52236           <type name="none" c:type="void"/>
52237         </return-value>
52238         <parameters>
52239           <parameter name="child" transfer-ownership="none">
52240             <doc xml:whitespace="preserve">the widget you want to scroll</doc>
52241             <type name="Widget" c:type="GtkWidget*"/>
52242           </parameter>
52243         </parameters>
52244       </method>
52245       <property name="hadjustment"
52246                 writable="1"
52247                 construct="1"
52248                 transfer-ownership="none">
52249         <type name="Adjustment" c:type="GtkAdjustment"/>
52250       </property>
52251       <property name="hscrollbar-policy"
52252                 writable="1"
52253                 transfer-ownership="none">
52254         <type name="PolicyType" c:type="GtkPolicyType"/>
52255       </property>
52256       <property name="shadow-type" writable="1" transfer-ownership="none">
52257         <type name="ShadowType" c:type="GtkShadowType"/>
52258       </property>
52259       <property name="vadjustment"
52260                 writable="1"
52261                 construct="1"
52262                 transfer-ownership="none">
52263         <type name="Adjustment" c:type="GtkAdjustment"/>
52264       </property>
52265       <property name="vscrollbar-policy"
52266                 writable="1"
52267                 transfer-ownership="none">
52268         <type name="PolicyType" c:type="GtkPolicyType"/>
52269       </property>
52270       <property name="window-placement" writable="1" transfer-ownership="none">
52271         <type name="CornerType" c:type="GtkCornerType"/>
52272       </property>
52273       <property name="window-placement-set"
52274                 version="2.10"
52275                 writable="1"
52276                 transfer-ownership="none">
52277         <doc xml:whitespace="preserve">Whether "window-placement" should be used to determine the location 
52278 of the contents with respect to the scrollbars. Otherwise, the 
52279 "gtk-scrolled-window-placement" setting is used.</doc>
52280         <type name="boolean" c:type="gboolean"/>
52281       </property>
52282       <field name="container">
52283         <type name="Bin" c:type="GtkBin"/>
52284       </field>
52285       <field name="hscrollbar">
52286         <type name="Widget" c:type="GtkWidget*"/>
52287       </field>
52288       <field name="vscrollbar">
52289         <type name="Widget" c:type="GtkWidget*"/>
52290       </field>
52291       <field name="hscrollbar_policy" bits="2">
52292         <type name="uint" c:type="guint"/>
52293       </field>
52294       <field name="vscrollbar_policy" bits="2">
52295         <type name="uint" c:type="guint"/>
52296       </field>
52297       <field name="hscrollbar_visible" bits="1">
52298         <type name="uint" c:type="guint"/>
52299       </field>
52300       <field name="vscrollbar_visible" bits="1">
52301         <type name="uint" c:type="guint"/>
52302       </field>
52303       <field name="window_placement" bits="2">
52304         <type name="uint" c:type="guint"/>
52305       </field>
52306       <field name="focus_out" bits="1">
52307         <type name="uint" c:type="guint"/>
52308       </field>
52309       <field name="shadow_type">
52310         <type name="uint16" c:type="guint16"/>
52311       </field>
52312       <glib:signal name="move-focus-out">
52313         <return-value transfer-ownership="full">
52314           <type name="none" c:type="void"/>
52315         </return-value>
52316         <parameters>
52317           <parameter name="object" transfer-ownership="none">
52318             <type name="DirectionType" c:type="GtkDirectionType"/>
52319           </parameter>
52320         </parameters>
52321       </glib:signal>
52322       <glib:signal name="scroll-child">
52323         <return-value transfer-ownership="full">
52324           <type name="boolean" c:type="gboolean"/>
52325         </return-value>
52326         <parameters>
52327           <parameter name="object" transfer-ownership="none">
52328             <type name="ScrollType" c:type="GtkScrollType"/>
52329           </parameter>
52330           <parameter name="p0" transfer-ownership="none">
52331             <type name="boolean" c:type="gboolean"/>
52332           </parameter>
52333         </parameters>
52334       </glib:signal>
52335     </class>
52336     <record name="ScrolledWindowClass"
52337             c:type="GtkScrolledWindowClass"
52338             glib:is-gtype-struct-for="ScrolledWindow">
52339       <field name="parent_class">
52340         <type name="BinClass" c:type="GtkBinClass"/>
52341       </field>
52342       <field name="scrollbar_spacing">
52343         <type name="int" c:type="gint"/>
52344       </field>
52345       <field name="scroll_child">
52346         <callback name="scroll_child" c:type="scroll_child">
52347           <return-value transfer-ownership="none">
52348             <type name="boolean" c:type="gboolean"/>
52349           </return-value>
52350           <parameters>
52351             <parameter name="scrolled_window" transfer-ownership="none">
52352               <type name="ScrolledWindow" c:type="GtkScrolledWindow*"/>
52353             </parameter>
52354             <parameter name="scroll" transfer-ownership="none">
52355               <type name="ScrollType" c:type="GtkScrollType"/>
52356             </parameter>
52357             <parameter name="horizontal" transfer-ownership="none">
52358               <type name="boolean" c:type="gboolean"/>
52359             </parameter>
52360           </parameters>
52361         </callback>
52362       </field>
52363       <field name="move_focus_out">
52364         <callback name="move_focus_out" c:type="move_focus_out">
52365           <return-value transfer-ownership="none">
52366             <type name="none" c:type="void"/>
52367           </return-value>
52368           <parameters>
52369             <parameter name="scrolled_window" transfer-ownership="none">
52370               <type name="ScrolledWindow" c:type="GtkScrolledWindow*"/>
52371             </parameter>
52372             <parameter name="direction" transfer-ownership="none">
52373               <type name="DirectionType" c:type="GtkDirectionType"/>
52374             </parameter>
52375           </parameters>
52376         </callback>
52377       </field>
52378       <field name="gtk_reserved1">
52379         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
52380           <return-value transfer-ownership="none">
52381             <type name="none" c:type="void"/>
52382           </return-value>
52383         </callback>
52384       </field>
52385       <field name="gtk_reserved2">
52386         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
52387           <return-value transfer-ownership="none">
52388             <type name="none" c:type="void"/>
52389           </return-value>
52390         </callback>
52391       </field>
52392       <field name="gtk_reserved3">
52393         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
52394           <return-value transfer-ownership="none">
52395             <type name="none" c:type="void"/>
52396           </return-value>
52397         </callback>
52398       </field>
52399       <field name="gtk_reserved4">
52400         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
52401           <return-value transfer-ownership="none">
52402             <type name="none" c:type="void"/>
52403           </return-value>
52404         </callback>
52405       </field>
52406     </record>
52407     <record name="SelectionData"
52408             c:type="GtkSelectionData"
52409             glib:type-name="GtkSelectionData"
52410             glib:get-type="gtk_selection_data_get_type">
52411       <field name="selection" writable="1">
52412         <type name="Gdk.Atom" c:type="GdkAtom"/>
52413       </field>
52414       <field name="target" writable="1">
52415         <type name="Gdk.Atom" c:type="GdkAtom"/>
52416       </field>
52417       <field name="type" writable="1">
52418         <type name="Gdk.Atom" c:type="GdkAtom"/>
52419       </field>
52420       <field name="format" writable="1">
52421         <type name="int" c:type="gint"/>
52422       </field>
52423       <field name="data" writable="1">
52424         <type name="any" c:type="guchar*"/>
52425       </field>
52426       <field name="length" writable="1">
52427         <type name="int" c:type="gint"/>
52428       </field>
52429       <field name="display" writable="1">
52430         <type name="Gdk.Display" c:type="GdkDisplay*"/>
52431       </field>
52432       <method name="get_selection"
52433               c:identifier="gtk_selection_data_get_selection"
52434               version="2.16">
52435         <doc xml:whitespace="preserve">Retrieves the selection #GdkAtom of the selection data.</doc>
52436         <return-value transfer-ownership="full">
52437           <doc xml:whitespace="preserve">the selection #GdkAtom of the selection data.</doc>
52438           <type name="Gdk.Atom" c:type="GdkAtom"/>
52439         </return-value>
52440       </method>
52441       <method name="get_target"
52442               c:identifier="gtk_selection_data_get_target"
52443               version="2.14">
52444         <doc xml:whitespace="preserve">Retrieves the target of the selection.</doc>
52445         <return-value transfer-ownership="full">
52446           <doc xml:whitespace="preserve">the target of the selection.</doc>
52447           <type name="Gdk.Atom" c:type="GdkAtom"/>
52448         </return-value>
52449       </method>
52450       <method name="get_data_type"
52451               c:identifier="gtk_selection_data_get_data_type"
52452               version="2.14">
52453         <doc xml:whitespace="preserve">Retrieves the data type of the selection.</doc>
52454         <return-value transfer-ownership="full">
52455           <doc xml:whitespace="preserve">the data type of the selection.</doc>
52456           <type name="Gdk.Atom" c:type="GdkAtom"/>
52457         </return-value>
52458       </method>
52459       <method name="get_format"
52460               c:identifier="gtk_selection_data_get_format"
52461               version="2.14">
52462         <doc xml:whitespace="preserve">Retrieves the format of the selection.</doc>
52463         <return-value transfer-ownership="none">
52464           <doc xml:whitespace="preserve">the format of the selection.</doc>
52465           <type name="int" c:type="gint"/>
52466         </return-value>
52467       </method>
52468       <method name="get_data"
52469               c:identifier="gtk_selection_data_get_data"
52470               version="2.14">
52471         <doc xml:whitespace="preserve">Retrieves the raw data of the selection.</doc>
52472         <return-value transfer-ownership="none">
52473           <doc xml:whitespace="preserve">the raw data of the selection.</doc>
52474           <array c:type="guchar*">
52475             <type name="uint8"/>
52476           </array>
52477         </return-value>
52478       </method>
52479       <method name="get_length"
52480               c:identifier="gtk_selection_data_get_length"
52481               version="2.14">
52482         <doc xml:whitespace="preserve">Retrieves the length of the raw data of the selection.</doc>
52483         <return-value transfer-ownership="none">
52484           <doc xml:whitespace="preserve">the length of the data of the selection.</doc>
52485           <type name="int" c:type="gint"/>
52486         </return-value>
52487       </method>
52488       <method name="get_display"
52489               c:identifier="gtk_selection_data_get_display"
52490               version="2.14">
52491         <doc xml:whitespace="preserve">Retrieves the display of the selection.</doc>
52492         <return-value transfer-ownership="full">
52493           <doc xml:whitespace="preserve">the display of the selection.</doc>
52494           <type name="Gdk.Display" c:type="GdkDisplay*"/>
52495         </return-value>
52496       </method>
52497       <method name="set" c:identifier="gtk_selection_data_set">
52498         <doc xml:whitespace="preserve">Stores new data into a #GtkSelectionData object. Should
52499 &lt;emphasis&gt;only&lt;/emphasis&gt; be called from a selection handler callback.
52500 Zero-terminates the stored data.</doc>
52501         <return-value transfer-ownership="none">
52502           <type name="none" c:type="void"/>
52503         </return-value>
52504         <parameters>
52505           <parameter name="type" transfer-ownership="none">
52506             <doc xml:whitespace="preserve">the type of selection data</doc>
52507             <type name="Gdk.Atom" c:type="GdkAtom"/>
52508           </parameter>
52509           <parameter name="format" transfer-ownership="none">
52510             <doc xml:whitespace="preserve">format (number of bits in a unit)</doc>
52511             <type name="int" c:type="gint"/>
52512           </parameter>
52513           <parameter name="data" transfer-ownership="none">
52514             <doc xml:whitespace="preserve">pointer to the data (will be copied)</doc>
52515             <array c:type="guchar*">
52516               <type name="uint8"/>
52517             </array>
52518           </parameter>
52519           <parameter name="length" transfer-ownership="none">
52520             <doc xml:whitespace="preserve">length of the data</doc>
52521             <type name="int" c:type="gint"/>
52522           </parameter>
52523         </parameters>
52524       </method>
52525       <method name="set_text" c:identifier="gtk_selection_data_set_text">
52526         <doc xml:whitespace="preserve">Sets the contents of the selection from a UTF-8 encoded string.
52527 The string is converted to the form determined by
52528 otherwise %FALSE.</doc>
52529         <return-value transfer-ownership="none">
52530           <doc xml:whitespace="preserve">%TRUE if the selection was successfully set,</doc>
52531           <type name="boolean" c:type="gboolean"/>
52532         </return-value>
52533         <parameters>
52534           <parameter name="str" transfer-ownership="none">
52535             <doc xml:whitespace="preserve">a UTF-8 string</doc>
52536             <type name="utf8" c:type="gchar*"/>
52537           </parameter>
52538           <parameter name="len" transfer-ownership="none">
52539             <doc xml:whitespace="preserve">the length of @str, or -1 if @str is nul-terminated.</doc>
52540             <type name="int" c:type="gint"/>
52541           </parameter>
52542         </parameters>
52543       </method>
52544       <method name="get_text" c:identifier="gtk_selection_data_get_text">
52545         <doc xml:whitespace="preserve">Gets the contents of the selection data as a UTF-8 string.
52546 text type and it could be converted to UTF-8, a newly allocated
52547 string containing the converted text, otherwise %NULL.
52548 If the result is non-%NULL it must be freed with g_free().</doc>
52549         <return-value transfer-ownership="full">
52550           <doc xml:whitespace="preserve">if the selection data contained a recognized</doc>
52551           <array c:type="guchar*">
52552             <type name="uint8"/>
52553           </array>
52554         </return-value>
52555       </method>
52556       <method name="set_pixbuf"
52557               c:identifier="gtk_selection_data_set_pixbuf"
52558               version="2.6">
52559         <doc xml:whitespace="preserve">Sets the contents of the selection from a #GdkPixbuf
52560 The pixbuf is converted to the form determined by
52561 otherwise %FALSE.</doc>
52562         <return-value transfer-ownership="none">
52563           <doc xml:whitespace="preserve">%TRUE if the selection was successfully set,</doc>
52564           <type name="boolean" c:type="gboolean"/>
52565         </return-value>
52566         <parameters>
52567           <parameter name="pixbuf" transfer-ownership="none">
52568             <doc xml:whitespace="preserve">a #GdkPixbuf</doc>
52569             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
52570           </parameter>
52571         </parameters>
52572       </method>
52573       <method name="get_pixbuf"
52574               c:identifier="gtk_selection_data_get_pixbuf"
52575               version="2.6">
52576         <doc xml:whitespace="preserve">Gets the contents of the selection data as a #GdkPixbuf.
52577 image type and it could be converted to a #GdkPixbuf, a 
52578 newly allocated pixbuf is returned, otherwise %NULL.
52579 If the result is non-%NULL it must be freed with g_object_unref().</doc>
52580         <return-value transfer-ownership="full">
52581           <doc xml:whitespace="preserve">if the selection data contained a recognized</doc>
52582           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
52583         </return-value>
52584       </method>
52585       <method name="set_uris"
52586               c:identifier="gtk_selection_data_set_uris"
52587               version="2.6">
52588         <doc xml:whitespace="preserve">Sets the contents of the selection from a list of URIs.
52589 The string is converted to the form determined by
52590 otherwise %FALSE.</doc>
52591         <return-value transfer-ownership="none">
52592           <doc xml:whitespace="preserve">%TRUE if the selection was successfully set,</doc>
52593           <type name="boolean" c:type="gboolean"/>
52594         </return-value>
52595         <parameters>
52596           <parameter name="uris" transfer-ownership="none">
52597             <doc xml:whitespace="preserve">a %NULL-terminated array of strings holding URIs</doc>
52598             <array c:type="gchar**">
52599               <type name="utf8"/>
52600             </array>
52601           </parameter>
52602         </parameters>
52603       </method>
52604       <method name="get_uris"
52605               c:identifier="gtk_selection_data_get_uris"
52606               version="2.6">
52607         <doc xml:whitespace="preserve">Gets the contents of the selection data as array of URIs.
52608 the selection data contains a list of
52609 URIs, a newly allocated %NULL-terminated string array
52610 containing the URIs, otherwise %NULL. If the result is
52611 non-%NULL it must be freed with g_strfreev().</doc>
52612         <return-value transfer-ownership="full">
52613           <doc xml:whitespace="preserve">if</doc>
52614           <array c:type="gchar**">
52615             <type name="utf8"/>
52616           </array>
52617         </return-value>
52618       </method>
52619       <method name="get_targets" c:identifier="gtk_selection_data_get_targets">
52620         <doc xml:whitespace="preserve">Gets the contents of @selection_data as an array of targets.
52621 This can be used to interpret the results of getting
52622 the standard TARGETS target that is always supplied for
52623 any selection.
52624 array of targets, otherwise %FALSE.</doc>
52625         <return-value transfer-ownership="none">
52626           <doc xml:whitespace="preserve">%TRUE if @selection_data contains a valid</doc>
52627           <type name="boolean" c:type="gboolean"/>
52628         </return-value>
52629         <parameters>
52630           <parameter name="targets" transfer-ownership="none">
52631             <doc xml:whitespace="preserve">location to store an array of targets. The result stored here must be freed with g_free().</doc>
52632             <type name="Gdk.Atom" c:type="GdkAtom**"/>
52633           </parameter>
52634           <parameter name="n_atoms"
52635                      direction="out"
52636                      caller-allocates="0"
52637                      transfer-ownership="full">
52638             <doc xml:whitespace="preserve">location to store number of items in @targets.</doc>
52639             <type name="int" c:type="gint*"/>
52640           </parameter>
52641         </parameters>
52642       </method>
52643       <method name="targets_include_text"
52644               c:identifier="gtk_selection_data_targets_include_text">
52645         <doc xml:whitespace="preserve">Given a #GtkSelectionData object holding a list of targets,
52646 determines if any of the targets in @targets can be used to
52647 provide text.
52648 and a suitable target for text is included, otherwise %FALSE.</doc>
52649         <return-value transfer-ownership="none">
52650           <doc xml:whitespace="preserve">%TRUE if @selection_data holds a list of targets,</doc>
52651           <type name="boolean" c:type="gboolean"/>
52652         </return-value>
52653       </method>
52654       <method name="targets_include_rich_text"
52655               c:identifier="gtk_selection_data_targets_include_rich_text"
52656               version="2.10">
52657         <doc xml:whitespace="preserve">Given a #GtkSelectionData object holding a list of targets,
52658 determines if any of the targets in @targets can be used to
52659 provide rich text.
52660 and a suitable target for rich text is included,
52661 otherwise %FALSE.</doc>
52662         <return-value transfer-ownership="none">
52663           <doc xml:whitespace="preserve">%TRUE if @selection_data holds a list of targets,</doc>
52664           <type name="boolean" c:type="gboolean"/>
52665         </return-value>
52666         <parameters>
52667           <parameter name="buffer" transfer-ownership="none">
52668             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
52669             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
52670           </parameter>
52671         </parameters>
52672       </method>
52673       <method name="targets_include_image"
52674               c:identifier="gtk_selection_data_targets_include_image"
52675               version="2.6">
52676         <doc xml:whitespace="preserve">Given a #GtkSelectionData object holding a list of targets,
52677 determines if any of the targets in @targets can be used to
52678 provide a #GdkPixbuf.
52679 and a suitable target for images is included, otherwise %FALSE.</doc>
52680         <return-value transfer-ownership="none">
52681           <doc xml:whitespace="preserve">%TRUE if @selection_data holds a list of targets,</doc>
52682           <type name="boolean" c:type="gboolean"/>
52683         </return-value>
52684         <parameters>
52685           <parameter name="writable" transfer-ownership="none">
52686             <doc xml:whitespace="preserve">whether to accept only targets for which GTK+ knows how to convert a pixbuf into the format</doc>
52687             <type name="boolean" c:type="gboolean"/>
52688           </parameter>
52689         </parameters>
52690       </method>
52691       <method name="targets_include_uri"
52692               c:identifier="gtk_selection_data_targets_include_uri"
52693               version="2.10">
52694         <doc xml:whitespace="preserve">Given a #GtkSelectionData object holding a list of targets,
52695 determines if any of the targets in @targets can be used to
52696 provide a list or URIs.
52697 and a suitable target for URI lists is included, otherwise %FALSE.</doc>
52698         <return-value transfer-ownership="none">
52699           <doc xml:whitespace="preserve">%TRUE if @selection_data holds a list of targets,</doc>
52700           <type name="boolean" c:type="gboolean"/>
52701         </return-value>
52702       </method>
52703       <method name="copy" c:identifier="gtk_selection_data_copy">
52704         <doc xml:whitespace="preserve">Makes a copy of a #GtkSelectionData structure and its data.</doc>
52705         <return-value transfer-ownership="full">
52706           <doc xml:whitespace="preserve">a pointer to a copy of @data.</doc>
52707           <type name="SelectionData" c:type="GtkSelectionData*"/>
52708         </return-value>
52709       </method>
52710       <method name="free" c:identifier="gtk_selection_data_free">
52711         <doc xml:whitespace="preserve">Frees a #GtkSelectionData structure returned from
52712 gtk_selection_data_copy().</doc>
52713         <return-value transfer-ownership="none">
52714           <type name="none" c:type="void"/>
52715         </return-value>
52716       </method>
52717     </record>
52718     <enumeration name="SelectionMode"
52719                  glib:type-name="GtkSelectionMode"
52720                  glib:get-type="gtk_selection_mode_get_type"
52721                  c:type="GtkSelectionMode">
52722       <member name="none"
52723               value="0"
52724               c:identifier="GTK_SELECTION_NONE"
52725               glib:nick="none"/>
52726       <member name="single"
52727               value="1"
52728               c:identifier="GTK_SELECTION_SINGLE"
52729               glib:nick="single"/>
52730       <member name="browse"
52731               value="2"
52732               c:identifier="GTK_SELECTION_BROWSE"
52733               glib:nick="browse"/>
52734       <member name="multiple"
52735               value="3"
52736               c:identifier="GTK_SELECTION_MULTIPLE"
52737               glib:nick="multiple"/>
52738       <member name="extended"
52739               value="3"
52740               c:identifier="GTK_SELECTION_EXTENDED"
52741               glib:nick="extended"/>
52742     </enumeration>
52743     <enumeration name="SensitivityType"
52744                  glib:type-name="GtkSensitivityType"
52745                  glib:get-type="gtk_sensitivity_type_get_type"
52746                  c:type="GtkSensitivityType">
52747       <member name="auto"
52748               value="0"
52749               c:identifier="GTK_SENSITIVITY_AUTO"
52750               glib:nick="auto"/>
52751       <member name="on"
52752               value="1"
52753               c:identifier="GTK_SENSITIVITY_ON"
52754               glib:nick="on"/>
52755       <member name="off"
52756               value="2"
52757               c:identifier="GTK_SENSITIVITY_OFF"
52758               glib:nick="off"/>
52759     </enumeration>
52760     <class name="Separator"
52761            c:type="GtkSeparator"
52762            parent="Widget"
52763            abstract="1"
52764            glib:type-name="GtkSeparator"
52765            glib:get-type="gtk_separator_get_type"
52766            glib:type-struct="SeparatorClass">
52767       <implements name="Atk.ImplementorIface"/>
52768       <implements name="Buildable"/>
52769       <implements name="Orientable"/>
52770       <field name="widget">
52771         <type name="Widget" c:type="GtkWidget"/>
52772       </field>
52773     </class>
52774     <record name="SeparatorClass"
52775             c:type="GtkSeparatorClass"
52776             glib:is-gtype-struct-for="Separator">
52777       <field name="parent_class">
52778         <type name="WidgetClass" c:type="GtkWidgetClass"/>
52779       </field>
52780     </record>
52781     <class name="SeparatorMenuItem"
52782            c:type="GtkSeparatorMenuItem"
52783            parent="MenuItem"
52784            glib:type-name="GtkSeparatorMenuItem"
52785            glib:get-type="gtk_separator_menu_item_get_type"
52786            glib:type-struct="SeparatorMenuItemClass">
52787       <implements name="Activatable"/>
52788       <implements name="Atk.ImplementorIface"/>
52789       <implements name="Buildable"/>
52790       <constructor name="new" c:identifier="gtk_separator_menu_item_new">
52791         <return-value transfer-ownership="full">
52792           <type name="SeparatorMenuItem" c:type="GtkWidget*"/>
52793         </return-value>
52794       </constructor>
52795       <field name="menu_item">
52796         <type name="MenuItem" c:type="GtkMenuItem"/>
52797       </field>
52798     </class>
52799     <record name="SeparatorMenuItemClass"
52800             c:type="GtkSeparatorMenuItemClass"
52801             glib:is-gtype-struct-for="SeparatorMenuItem">
52802       <field name="parent_class">
52803         <type name="MenuItemClass" c:type="GtkMenuItemClass"/>
52804       </field>
52805     </record>
52806     <class name="SeparatorToolItem"
52807            c:type="GtkSeparatorToolItem"
52808            parent="ToolItem"
52809            glib:type-name="GtkSeparatorToolItem"
52810            glib:get-type="gtk_separator_tool_item_get_type"
52811            glib:type-struct="SeparatorToolItemClass">
52812       <implements name="Activatable"/>
52813       <implements name="Atk.ImplementorIface"/>
52814       <implements name="Buildable"/>
52815       <constructor name="new"
52816                    c:identifier="gtk_separator_tool_item_new"
52817                    version="2.4">
52818         <doc xml:whitespace="preserve">Create a new #GtkSeparatorToolItem</doc>
52819         <return-value transfer-ownership="full">
52820           <doc xml:whitespace="preserve">the new #GtkSeparatorToolItem</doc>
52821           <type name="SeparatorToolItem" c:type="GtkToolItem*"/>
52822         </return-value>
52823       </constructor>
52824       <method name="get_draw"
52825               c:identifier="gtk_separator_tool_item_get_draw"
52826               version="2.4">
52827         <doc xml:whitespace="preserve">Returns whether @item is drawn as a line, or just blank. 
52828 See gtk_separator_tool_item_set_draw().</doc>
52829         <return-value transfer-ownership="none">
52830           <doc xml:whitespace="preserve">%TRUE if @item is drawn as a line, or just blank.</doc>
52831           <type name="boolean" c:type="gboolean"/>
52832         </return-value>
52833       </method>
52834       <method name="set_draw"
52835               c:identifier="gtk_separator_tool_item_set_draw"
52836               version="2.4">
52837         <doc xml:whitespace="preserve">Whether @item is drawn as a vertical line, or just blank.
52838 Setting this to %FALSE along with gtk_tool_item_set_expand() is useful
52839 to create an item that forces following items to the end of the toolbar.</doc>
52840         <return-value transfer-ownership="none">
52841           <type name="none" c:type="void"/>
52842         </return-value>
52843         <parameters>
52844           <parameter name="draw" transfer-ownership="none">
52845             <doc xml:whitespace="preserve">whether @item is drawn as a vertical line</doc>
52846             <type name="boolean" c:type="gboolean"/>
52847           </parameter>
52848         </parameters>
52849       </method>
52850       <property name="draw" writable="1" transfer-ownership="none">
52851         <type name="boolean" c:type="gboolean"/>
52852       </property>
52853       <field name="parent">
52854         <type name="ToolItem" c:type="GtkToolItem"/>
52855       </field>
52856       <field name="priv">
52857         <type name="SeparatorToolItemPrivate"
52858               c:type="GtkSeparatorToolItemPrivate*"/>
52859       </field>
52860     </class>
52861     <record name="SeparatorToolItemClass"
52862             c:type="GtkSeparatorToolItemClass"
52863             glib:is-gtype-struct-for="SeparatorToolItem">
52864       <field name="parent_class">
52865         <type name="ToolItemClass" c:type="GtkToolItemClass"/>
52866       </field>
52867       <field name="gtk_reserved1">
52868         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
52869           <return-value transfer-ownership="none">
52870             <type name="none" c:type="void"/>
52871           </return-value>
52872         </callback>
52873       </field>
52874       <field name="gtk_reserved2">
52875         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
52876           <return-value transfer-ownership="none">
52877             <type name="none" c:type="void"/>
52878           </return-value>
52879         </callback>
52880       </field>
52881       <field name="gtk_reserved3">
52882         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
52883           <return-value transfer-ownership="none">
52884             <type name="none" c:type="void"/>
52885           </return-value>
52886         </callback>
52887       </field>
52888       <field name="gtk_reserved4">
52889         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
52890           <return-value transfer-ownership="none">
52891             <type name="none" c:type="void"/>
52892           </return-value>
52893         </callback>
52894       </field>
52895     </record>
52896     <record name="SeparatorToolItemPrivate"
52897             c:type="GtkSeparatorToolItemPrivate">
52898     </record>
52899     <class name="Settings"
52900            c:type="GtkSettings"
52901            parent="GObject.Object"
52902            glib:type-name="GtkSettings"
52903            glib:get-type="gtk_settings_get_type"
52904            glib:type-struct="SettingsClass">
52905       <function name="get_default" c:identifier="gtk_settings_get_default">
52906         <doc xml:whitespace="preserve">Gets the #GtkSettings object for the default GDK screen, creating
52907 it if necessary. See gtk_settings_get_for_screen().
52908 screen, then returns %NULL.</doc>
52909         <return-value transfer-ownership="none">
52910           <doc xml:whitespace="preserve">a #GtkSettings object. If there is no default</doc>
52911           <type name="Settings" c:type="GtkSettings*"/>
52912         </return-value>
52913       </function>
52914       <function name="get_for_screen"
52915                 c:identifier="gtk_settings_get_for_screen"
52916                 version="2.2">
52917         <doc xml:whitespace="preserve">Gets the #GtkSettings object for @screen, creating it if necessary.</doc>
52918         <return-value transfer-ownership="full">
52919           <doc xml:whitespace="preserve">a #GtkSettings object.</doc>
52920           <type name="Settings" c:type="GtkSettings*"/>
52921         </return-value>
52922         <parameters>
52923           <parameter name="screen" transfer-ownership="none">
52924             <type name="Gdk.Screen" c:type="GdkScreen*"/>
52925           </parameter>
52926         </parameters>
52927       </function>
52928       <function name="install_property"
52929                 c:identifier="gtk_settings_install_property">
52930         <return-value transfer-ownership="none">
52931           <type name="none" c:type="void"/>
52932         </return-value>
52933         <parameters>
52934           <parameter name="pspec" transfer-ownership="none">
52935             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
52936           </parameter>
52937         </parameters>
52938       </function>
52939       <function name="install_property_parser"
52940                 c:identifier="gtk_settings_install_property_parser">
52941         <return-value transfer-ownership="none">
52942           <type name="none" c:type="void"/>
52943         </return-value>
52944         <parameters>
52945           <parameter name="pspec" transfer-ownership="none">
52946             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
52947           </parameter>
52948           <parameter name="parser" transfer-ownership="none" scope="call">
52949             <type name="RcPropertyParser" c:type="GtkRcPropertyParser"/>
52950           </parameter>
52951         </parameters>
52952       </function>
52953       <method name="set_property_value"
52954               c:identifier="gtk_settings_set_property_value">
52955         <return-value transfer-ownership="none">
52956           <type name="none" c:type="void"/>
52957         </return-value>
52958         <parameters>
52959           <parameter name="name" transfer-ownership="none">
52960             <type name="utf8" c:type="gchar*"/>
52961           </parameter>
52962           <parameter name="svalue" transfer-ownership="none">
52963             <type name="SettingsValue" c:type="GtkSettingsValue*"/>
52964           </parameter>
52965         </parameters>
52966       </method>
52967       <method name="set_string_property"
52968               c:identifier="gtk_settings_set_string_property">
52969         <return-value transfer-ownership="none">
52970           <type name="none" c:type="void"/>
52971         </return-value>
52972         <parameters>
52973           <parameter name="name" transfer-ownership="none">
52974             <type name="utf8" c:type="gchar*"/>
52975           </parameter>
52976           <parameter name="v_string" transfer-ownership="none">
52977             <type name="utf8" c:type="gchar*"/>
52978           </parameter>
52979           <parameter name="origin" transfer-ownership="none">
52980             <type name="utf8" c:type="gchar*"/>
52981           </parameter>
52982         </parameters>
52983       </method>
52984       <method name="set_long_property"
52985               c:identifier="gtk_settings_set_long_property">
52986         <return-value transfer-ownership="none">
52987           <type name="none" c:type="void"/>
52988         </return-value>
52989         <parameters>
52990           <parameter name="name" transfer-ownership="none">
52991             <type name="utf8" c:type="gchar*"/>
52992           </parameter>
52993           <parameter name="v_long" transfer-ownership="none">
52994             <type name="long" c:type="glong"/>
52995           </parameter>
52996           <parameter name="origin" transfer-ownership="none">
52997             <type name="utf8" c:type="gchar*"/>
52998           </parameter>
52999         </parameters>
53000       </method>
53001       <method name="set_double_property"
53002               c:identifier="gtk_settings_set_double_property">
53003         <return-value transfer-ownership="none">
53004           <type name="none" c:type="void"/>
53005         </return-value>
53006         <parameters>
53007           <parameter name="name" transfer-ownership="none">
53008             <type name="utf8" c:type="gchar*"/>
53009           </parameter>
53010           <parameter name="v_double" transfer-ownership="none">
53011             <type name="double" c:type="gdouble"/>
53012           </parameter>
53013           <parameter name="origin" transfer-ownership="none">
53014             <type name="utf8" c:type="gchar*"/>
53015           </parameter>
53016         </parameters>
53017       </method>
53018       <property name="color-hash" version="2.10" transfer-ownership="none">
53019         <doc xml:whitespace="preserve">Holds a hash table representation of the #GtkSettings:gtk-color-scheme 
53020 setting, mapping color names to #GdkColor&lt;!-- --&gt;s.</doc>
53021         <type name="GLib.HashTable" c:type="GHashTable"/>
53022       </property>
53023       <property name="gtk-alternative-button-order"
53024                 writable="1"
53025                 transfer-ownership="none">
53026         <type name="boolean" c:type="gboolean"/>
53027       </property>
53028       <property name="gtk-alternative-sort-arrows"
53029                 version="2.12"
53030                 writable="1"
53031                 transfer-ownership="none">
53032         <doc xml:whitespace="preserve">Controls the direction of the sort indicators in sorted list and tree
53033 views. By default an arrow pointing down means the column is sorted
53034 in ascending order. When set to %TRUE, this order will be inverted.</doc>
53035         <type name="boolean" c:type="gboolean"/>
53036       </property>
53037       <property name="gtk-auto-mnemonics"
53038                 version="2.20"
53039                 writable="1"
53040                 transfer-ownership="none">
53041         <doc xml:whitespace="preserve">Whether mnemonics should be automatically shown and hidden when the user
53042 presses the mnemonic activator.</doc>
53043         <type name="boolean" c:type="gboolean"/>
53044       </property>
53045       <property name="gtk-color-scheme"
53046                 version="2.10"
53047                 writable="1"
53048                 transfer-ownership="none">
53049         <doc xml:whitespace="preserve">A palette of named colors for use in themes. The format of the string is
53050 &lt;programlisting&gt;
53051 ...
53052 &lt;/programlisting&gt;
53053 Color names must be acceptable as identifiers in the 
53054 &lt;link linkend="gtk-Resource-Files"&gt;gtkrc&lt;/link&gt; syntax, and
53055 color specifications must be in the format accepted by
53056 gdk_color_parse().
53057 Note that due to the way the color tables from different sources are
53058 merged, color specifications will be converted to hexadecimal form
53059 when getting this property.
53060 Starting with GTK+ 2.12, the entries can alternatively be separated
53061 by ';' instead of newlines:
53062 &lt;programlisting&gt;
53063 &lt;/programlisting&gt;</doc>
53064         <type name="utf8" c:type="gchararray"/>
53065       </property>
53066       <property name="gtk-cursor-blink" writable="1" transfer-ownership="none">
53067         <doc xml:whitespace="preserve">Whether the cursor should blink. 
53068 Also see the #GtkSettings:gtk-cursor-blink-timeout setting, 
53069 which allows more flexible control over cursor blinking.</doc>
53070         <type name="boolean" c:type="gboolean"/>
53071       </property>
53072       <property name="gtk-cursor-blink-time"
53073                 writable="1"
53074                 transfer-ownership="none">
53075         <type name="int" c:type="gint"/>
53076       </property>
53077       <property name="gtk-cursor-blink-timeout"
53078                 version="2.12"
53079                 writable="1"
53080                 transfer-ownership="none">
53081         <doc xml:whitespace="preserve">Time after which the cursor stops blinking, in seconds.
53082 The timer is reset after each user interaction.
53083 Setting this to zero has the same effect as setting
53084 #GtkSettings:gtk-cursor-blink to %FALSE.</doc>
53085         <type name="int" c:type="gint"/>
53086       </property>
53087       <property name="gtk-cursor-theme-name"
53088                 writable="1"
53089                 transfer-ownership="none">
53090         <type name="utf8" c:type="gchararray"/>
53091       </property>
53092       <property name="gtk-cursor-theme-size"
53093                 writable="1"
53094                 transfer-ownership="none">
53095         <type name="int" c:type="gint"/>
53096       </property>
53097       <property name="gtk-dnd-drag-threshold"
53098                 writable="1"
53099                 transfer-ownership="none">
53100         <type name="int" c:type="gint"/>
53101       </property>
53102       <property name="gtk-double-click-distance"
53103                 writable="1"
53104                 transfer-ownership="none">
53105         <type name="int" c:type="gint"/>
53106       </property>
53107       <property name="gtk-double-click-time"
53108                 writable="1"
53109                 transfer-ownership="none">
53110         <type name="int" c:type="gint"/>
53111       </property>
53112       <property name="gtk-enable-accels"
53113                 version="2.12"
53114                 writable="1"
53115                 transfer-ownership="none">
53116         <doc xml:whitespace="preserve">Whether menu items should have visible accelerators which can be
53117 activated.</doc>
53118         <type name="boolean" c:type="gboolean"/>
53119       </property>
53120       <property name="gtk-enable-animations"
53121                 writable="1"
53122                 transfer-ownership="none">
53123         <type name="boolean" c:type="gboolean"/>
53124       </property>
53125       <property name="gtk-enable-event-sounds"
53126                 version="2.14"
53127                 writable="1"
53128                 transfer-ownership="none">
53129         <doc xml:whitespace="preserve">Whether to play any event sounds at all.
53130 See the &lt;ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec"&gt;Sound Theme spec&lt;/ulink&gt; 
53131 for more information on event sounds and sound themes.
53132 GTK+ itself does not support event sounds, you have to use a loadable 
53133 module like the one that comes with libcanberra.</doc>
53134         <type name="boolean" c:type="gboolean"/>
53135       </property>
53136       <property name="gtk-enable-input-feedback-sounds"
53137                 version="2.14"
53138                 writable="1"
53139                 transfer-ownership="none">
53140         <doc xml:whitespace="preserve">Whether to play event sounds as feedback to user input.
53141 See the &lt;ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec"&gt;Sound Theme spec&lt;/ulink&gt; 
53142 for more information on event sounds and sound themes.
53143 GTK+ itself does not support event sounds, you have to use a loadable 
53144 module like the one that comes with libcanberra.</doc>
53145         <type name="boolean" c:type="gboolean"/>
53146       </property>
53147       <property name="gtk-enable-mnemonics"
53148                 version="2.12"
53149                 writable="1"
53150                 transfer-ownership="none">
53151         <doc xml:whitespace="preserve">Whether labels and menu items should have visible mnemonics which
53152 can be activated.</doc>
53153         <type name="boolean" c:type="gboolean"/>
53154       </property>
53155       <property name="gtk-enable-tooltips"
53156                 version="2.14"
53157                 writable="1"
53158                 transfer-ownership="none">
53159         <doc xml:whitespace="preserve">Whether tooltips should be shown on widgets.</doc>
53160         <type name="boolean" c:type="gboolean"/>
53161       </property>
53162       <property name="gtk-error-bell"
53163                 version="2.12"
53164                 writable="1"
53165                 transfer-ownership="none">
53166         <doc xml:whitespace="preserve">When %TRUE, keyboard navigation and other input-related errors
53167 will cause a beep. Since the error bell is implemented using
53168 gdk_window_beep(), the windowing system may offer ways to
53169 configure the error bell in many ways, such as flashing the
53170 window or similar visual effects.</doc>
53171         <type name="boolean" c:type="gboolean"/>
53172       </property>
53173       <property name="gtk-fallback-icon-theme"
53174                 writable="1"
53175                 transfer-ownership="none">
53176         <type name="utf8" c:type="gchararray"/>
53177       </property>
53178       <property name="gtk-file-chooser-backend"
53179                 writable="1"
53180                 transfer-ownership="none">
53181         <type name="utf8" c:type="gchararray"/>
53182       </property>
53183       <property name="gtk-font-name" writable="1" transfer-ownership="none">
53184         <type name="utf8" c:type="gchararray"/>
53185       </property>
53186       <property name="gtk-fontconfig-timestamp"
53187                 writable="1"
53188                 transfer-ownership="none">
53189         <type name="uint" c:type="guint"/>
53190       </property>
53191       <property name="gtk-icon-sizes" writable="1" transfer-ownership="none">
53192         <doc xml:whitespace="preserve">A list of icon sizes. The list is separated by colons, and
53193 item has the form:
53194 &lt;replaceable&gt;size-name&lt;/replaceable&gt; = &lt;replaceable&gt;width&lt;/replaceable&gt; , &lt;replaceable&gt;height&lt;/replaceable&gt;
53195 E.g. "gtk-menu=16,16:gtk-button=20,20:gtk-dialog=48,48". 
53196 gtk-button, gtk-small-toolbar, gtk-large-toolbar, gtk-dnd, 
53197 gtk-dialog. Applications can register their own named icon 
53198 sizes with gtk_icon_size_register().</doc>
53199         <type name="utf8" c:type="gchararray"/>
53200       </property>
53201       <property name="gtk-icon-theme-name"
53202                 writable="1"
53203                 transfer-ownership="none">
53204         <type name="utf8" c:type="gchararray"/>
53205       </property>
53206       <property name="gtk-im-module" writable="1" transfer-ownership="none">
53207         <doc xml:whitespace="preserve">Which IM (input method) module should be used by default. This is the 
53208 input method that will be used if the user has not explicitly chosen 
53209 another input method from the IM context menu.  
53210 See #GtkIMContext and see the #GtkSettings:gtk-show-input-method-menu property.</doc>
53211         <type name="utf8" c:type="gchararray"/>
53212       </property>
53213       <property name="gtk-key-theme-name"
53214                 writable="1"
53215                 transfer-ownership="none">
53216         <type name="utf8" c:type="gchararray"/>
53217       </property>
53218       <property name="gtk-keynav-cursor-only"
53219                 version="2.12"
53220                 writable="1"
53221                 transfer-ownership="none">
53222         <doc xml:whitespace="preserve">When %TRUE, keyboard navigation should be able to reach all widgets
53223 by using the cursor keys only. Tab, Shift etc. keys can't be expected
53224 to be present on the used input device.</doc>
53225         <type name="boolean" c:type="gboolean"/>
53226       </property>
53227       <property name="gtk-keynav-wrap-around"
53228                 version="2.12"
53229                 writable="1"
53230                 transfer-ownership="none">
53231         <doc xml:whitespace="preserve">When %TRUE, some widgets will wrap around when doing keyboard
53232 navigation, such as menus, menubars and notebooks.</doc>
53233         <type name="boolean" c:type="gboolean"/>
53234       </property>
53235       <property name="gtk-menu-bar-accel"
53236                 writable="1"
53237                 transfer-ownership="none">
53238         <type name="utf8" c:type="gchararray"/>
53239       </property>
53240       <property name="gtk-modules" writable="1" transfer-ownership="none">
53241         <type name="utf8" c:type="gchararray"/>
53242       </property>
53243       <property name="gtk-print-backends"
53244                 version="2.10"
53245                 writable="1"
53246                 transfer-ownership="none">
53247         <doc xml:whitespace="preserve">A comma-separated list of print backends to use in the print
53248 dialog. Available print backends depend on the GTK+ installation,
53249 and may include "file", "cups", "lpr" or "papi".</doc>
53250         <type name="utf8" c:type="gchararray"/>
53251       </property>
53252       <property name="gtk-print-preview-command"
53253                 version="2.10"
53254                 writable="1"
53255                 transfer-ownership="none">
53256         <doc xml:whitespace="preserve">A command to run for displaying the print preview. The command
53257 should contain a %f placeholder, which will get replaced by
53258 the path to the pdf file. The command may also contain a %s
53259 placeholder, which will get replaced by the path to a file
53260 containing the print settings in the format produced by 
53261 gtk_print_settings_to_file().
53262 The preview application is responsible for removing the pdf file
53263 and the print settings file when it is done.</doc>
53264         <type name="utf8" c:type="gchararray"/>
53265       </property>
53266       <property name="gtk-recent-files-limit"
53267                 version="2.12"
53268                 writable="1"
53269                 transfer-ownership="none">
53270         <doc xml:whitespace="preserve">The number of recently used files that should be displayed by default by
53271 #GtkRecentChooser implementations and by the #GtkFileChooser. A value of
53272 -1 means every recently used file stored.</doc>
53273         <type name="int" c:type="gint"/>
53274       </property>
53275       <property name="gtk-recent-files-max-age"
53276                 version="2.14"
53277                 writable="1"
53278                 transfer-ownership="none">
53279         <doc xml:whitespace="preserve">The maximum age, in days, of the items inside the recently used
53280 resources list. Items older than this setting will be excised
53281 from the list. If set to 0, the list will always be empty; if
53282 set to -1, no item will be removed.</doc>
53283         <type name="int" c:type="gint"/>
53284       </property>
53285       <property name="gtk-show-input-method-menu"
53286                 writable="1"
53287                 transfer-ownership="none">
53288         <type name="boolean" c:type="gboolean"/>
53289       </property>
53290       <property name="gtk-show-unicode-menu"
53291                 writable="1"
53292                 transfer-ownership="none">
53293         <type name="boolean" c:type="gboolean"/>
53294       </property>
53295       <property name="gtk-sound-theme-name"
53296                 version="2.14"
53297                 writable="1"
53298                 transfer-ownership="none">
53299         <doc xml:whitespace="preserve">The XDG sound theme to use for event sounds.
53300 See the &lt;ulink url="http://www.freedesktop.org/wiki/Specifications/sound-theme-spec"&gt;Sound Theme spec&lt;/ulink&gt; 
53301 for more information on event sounds and sound themes.
53302 GTK+ itself does not support event sounds, you have to use a loadable 
53303 module like the one that comes with libcanberra.</doc>
53304         <type name="utf8" c:type="gchararray"/>
53305       </property>
53306       <property name="gtk-split-cursor" writable="1" transfer-ownership="none">
53307         <type name="boolean" c:type="gboolean"/>
53308       </property>
53309       <property name="gtk-theme-name" writable="1" transfer-ownership="none">
53310         <type name="utf8" c:type="gchararray"/>
53311       </property>
53312       <property name="gtk-timeout-expand"
53313                 writable="1"
53314                 transfer-ownership="none">
53315         <type name="int" c:type="gint"/>
53316       </property>
53317       <property name="gtk-timeout-initial"
53318                 writable="1"
53319                 transfer-ownership="none">
53320         <type name="int" c:type="gint"/>
53321       </property>
53322       <property name="gtk-timeout-repeat"
53323                 writable="1"
53324                 transfer-ownership="none">
53325         <type name="int" c:type="gint"/>
53326       </property>
53327       <property name="gtk-toolbar-icon-size"
53328                 writable="1"
53329                 transfer-ownership="none">
53330         <type name="IconSize" c:type="GtkIconSize"/>
53331       </property>
53332       <property name="gtk-toolbar-style"
53333                 writable="1"
53334                 transfer-ownership="none">
53335         <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
53336       </property>
53337       <property name="gtk-tooltip-browse-mode-timeout"
53338                 version="2.12"
53339                 writable="1"
53340                 transfer-ownership="none">
53341         <doc xml:whitespace="preserve">Amount of time, in milliseconds, after which the browse mode
53342 will be disabled.
53343 See #GtkSettings:gtk-tooltip-browse-timeout for more information
53344 about browse mode.</doc>
53345         <type name="int" c:type="gint"/>
53346       </property>
53347       <property name="gtk-tooltip-browse-timeout"
53348                 version="2.12"
53349                 writable="1"
53350                 transfer-ownership="none">
53351         <doc xml:whitespace="preserve">Controls the time after which tooltips will appear when
53352 browse mode is enabled, in milliseconds.
53353 Browse mode is enabled when the mouse pointer moves off an object
53354 where a tooltip was currently being displayed. If the mouse pointer
53355 hits another object before the browse mode timeout expires (see
53356 #GtkSettings:gtk-tooltip-browse-mode-timeout), it will take the 
53357 amount of milliseconds specified by this setting to popup the tooltip
53358 for the new object.</doc>
53359         <type name="int" c:type="gint"/>
53360       </property>
53361       <property name="gtk-tooltip-timeout"
53362                 version="2.12"
53363                 writable="1"
53364                 transfer-ownership="none">
53365         <doc xml:whitespace="preserve">Time, in milliseconds, after which a tooltip could appear if the
53366 cursor is hovering on top of a widget.</doc>
53367         <type name="int" c:type="gint"/>
53368       </property>
53369       <property name="gtk-touchscreen-mode"
53370                 version="2.10"
53371                 writable="1"
53372                 transfer-ownership="none">
53373         <doc xml:whitespace="preserve">When %TRUE, there are no motion notify events delivered on this screen,
53374 and widgets can't use the pointer hovering them for any essential
53375 functionality.</doc>
53376         <type name="boolean" c:type="gboolean"/>
53377       </property>
53378       <property name="gtk-xft-antialias"
53379                 writable="1"
53380                 transfer-ownership="none">
53381         <type name="int" c:type="gint"/>
53382       </property>
53383       <property name="gtk-xft-dpi" writable="1" transfer-ownership="none">
53384         <type name="int" c:type="gint"/>
53385       </property>
53386       <property name="gtk-xft-hinting" writable="1" transfer-ownership="none">
53387         <type name="int" c:type="gint"/>
53388       </property>
53389       <property name="gtk-xft-hintstyle"
53390                 writable="1"
53391                 transfer-ownership="none">
53392         <type name="utf8" c:type="gchararray"/>
53393       </property>
53394       <property name="gtk-xft-rgba" writable="1" transfer-ownership="none">
53395         <type name="utf8" c:type="gchararray"/>
53396       </property>
53397       <field name="parent_instance">
53398         <type name="GObject.Object" c:type="GObject"/>
53399       </field>
53400       <field name="queued_settings">
53401         <type name="GLib.Data" c:type="GData*"/>
53402       </field>
53403       <field name="property_values">
53404         <type name="SettingsPropertyValue" c:type="GtkSettingsPropertyValue*"/>
53405       </field>
53406       <field name="rc_context">
53407         <type name="RcContext" c:type="GtkRcContext*"/>
53408       </field>
53409       <field name="screen">
53410         <type name="Gdk.Screen" c:type="GdkScreen*"/>
53411       </field>
53412     </class>
53413     <record name="SettingsClass"
53414             c:type="GtkSettingsClass"
53415             glib:is-gtype-struct-for="Settings">
53416       <field name="parent_class">
53417         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
53418       </field>
53419     </record>
53420     <record name="SettingsPropertyValue" c:type="GtkSettingsPropertyValue">
53421     </record>
53422     <record name="SettingsValue" c:type="GtkSettingsValue">
53423       <field name="origin" writable="1">
53424         <type name="utf8" c:type="gchar*"/>
53425       </field>
53426       <field name="value" writable="1">
53427         <type name="GObject.Value" c:type="GValue"/>
53428       </field>
53429     </record>
53430     <enumeration name="ShadowType"
53431                  glib:type-name="GtkShadowType"
53432                  glib:get-type="gtk_shadow_type_get_type"
53433                  c:type="GtkShadowType">
53434       <member name="none"
53435               value="0"
53436               c:identifier="GTK_SHADOW_NONE"
53437               glib:nick="none"/>
53438       <member name="in" value="1" c:identifier="GTK_SHADOW_IN" glib:nick="in"/>
53439       <member name="out"
53440               value="2"
53441               c:identifier="GTK_SHADOW_OUT"
53442               glib:nick="out"/>
53443       <member name="etched_in"
53444               value="3"
53445               c:identifier="GTK_SHADOW_ETCHED_IN"
53446               glib:nick="etched-in"/>
53447       <member name="etched_out"
53448               value="4"
53449               c:identifier="GTK_SHADOW_ETCHED_OUT"
53450               glib:nick="etched-out"/>
53451     </enumeration>
53452     <enumeration name="SideType"
53453                  glib:type-name="GtkSideType"
53454                  glib:get-type="gtk_side_type_get_type"
53455                  c:type="GtkSideType">
53456       <member name="top"
53457               value="0"
53458               c:identifier="GTK_SIDE_TOP"
53459               glib:nick="top"/>
53460       <member name="bottom"
53461               value="1"
53462               c:identifier="GTK_SIDE_BOTTOM"
53463               glib:nick="bottom"/>
53464       <member name="left"
53465               value="2"
53466               c:identifier="GTK_SIDE_LEFT"
53467               glib:nick="left"/>
53468       <member name="right"
53469               value="3"
53470               c:identifier="GTK_SIDE_RIGHT"
53471               glib:nick="right"/>
53472     </enumeration>
53473     <callback name="SignalFunc" c:type="GtkSignalFunc">
53474       <return-value transfer-ownership="none">
53475         <type name="none" c:type="void"/>
53476       </return-value>
53477     </callback>
53478     <bitfield name="SignalRunType"
53479               glib:type-name="GtkSignalRunType"
53480               glib:get-type="gtk_signal_run_type_get_type"
53481               c:type="GtkSignalRunType">
53482       <member name="first"
53483               value="1"
53484               c:identifier="GTK_RUN_FIRST"
53485               glib:nick="first"/>
53486       <member name="last"
53487               value="2"
53488               c:identifier="GTK_RUN_LAST"
53489               glib:nick="last"/>
53490       <member name="both"
53491               value="3"
53492               c:identifier="GTK_RUN_BOTH"
53493               glib:nick="both"/>
53494       <member name="no_recurse"
53495               value="8"
53496               c:identifier="GTK_RUN_NO_RECURSE"
53497               glib:nick="no-recurse"/>
53498       <member name="action"
53499               value="32"
53500               c:identifier="GTK_RUN_ACTION"
53501               glib:nick="action"/>
53502       <member name="no_hooks"
53503               value="64"
53504               c:identifier="GTK_RUN_NO_HOOKS"
53505               glib:nick="no-hooks"/>
53506     </bitfield>
53507     <class name="SizeGroup"
53508            c:type="GtkSizeGroup"
53509            parent="GObject.Object"
53510            glib:type-name="GtkSizeGroup"
53511            glib:get-type="gtk_size_group_get_type"
53512            glib:type-struct="SizeGroupClass">
53513       <implements name="Buildable"/>
53514       <constructor name="new" c:identifier="gtk_size_group_new">
53515         <doc xml:whitespace="preserve">Create a new #GtkSizeGroup.</doc>
53516         <return-value transfer-ownership="full">
53517           <doc xml:whitespace="preserve">a newly created #GtkSizeGroup</doc>
53518           <type name="SizeGroup" c:type="GtkSizeGroup*"/>
53519         </return-value>
53520         <parameters>
53521           <parameter name="mode" transfer-ownership="none">
53522             <doc xml:whitespace="preserve">the mode for the new size group.</doc>
53523             <type name="SizeGroupMode" c:type="GtkSizeGroupMode"/>
53524           </parameter>
53525         </parameters>
53526       </constructor>
53527       <method name="set_mode" c:identifier="gtk_size_group_set_mode">
53528         <doc xml:whitespace="preserve">Sets the #GtkSizeGroupMode of the size group. The mode of the size
53529 group determines whether the widgets in the size group should
53530 all have the same horizontal requisition (%GTK_SIZE_GROUP_MODE_HORIZONTAL)
53531 all have the same vertical requisition (%GTK_SIZE_GROUP_MODE_VERTICAL),
53532 or should all have the same requisition in both directions
53533 (%GTK_SIZE_GROUP_MODE_BOTH).</doc>
53534         <return-value transfer-ownership="none">
53535           <type name="none" c:type="void"/>
53536         </return-value>
53537         <parameters>
53538           <parameter name="mode" transfer-ownership="none">
53539             <doc xml:whitespace="preserve">the mode to set for the size group.</doc>
53540             <type name="SizeGroupMode" c:type="GtkSizeGroupMode"/>
53541           </parameter>
53542         </parameters>
53543       </method>
53544       <method name="get_mode" c:identifier="gtk_size_group_get_mode">
53545         <doc xml:whitespace="preserve">Gets the current mode of the size group. See gtk_size_group_set_mode().</doc>
53546         <return-value transfer-ownership="full">
53547           <doc xml:whitespace="preserve">the current mode of the size group.</doc>
53548           <type name="SizeGroupMode" c:type="GtkSizeGroupMode"/>
53549         </return-value>
53550       </method>
53551       <method name="set_ignore_hidden"
53552               c:identifier="gtk_size_group_set_ignore_hidden"
53553               version="2.8">
53554         <doc xml:whitespace="preserve">Sets whether unmapped widgets should be ignored when
53555 calculating the size.</doc>
53556         <return-value transfer-ownership="none">
53557           <type name="none" c:type="void"/>
53558         </return-value>
53559         <parameters>
53560           <parameter name="ignore_hidden" transfer-ownership="none">
53561             <doc xml:whitespace="preserve">whether unmapped widgets should be ignored when calculating the size</doc>
53562             <type name="boolean" c:type="gboolean"/>
53563           </parameter>
53564         </parameters>
53565       </method>
53566       <method name="get_ignore_hidden"
53567               c:identifier="gtk_size_group_get_ignore_hidden"
53568               version="2.8">
53569         <doc xml:whitespace="preserve">Returns if invisible widgets are ignored when calculating the size.</doc>
53570         <return-value transfer-ownership="none">
53571           <doc xml:whitespace="preserve">%TRUE if invisible widgets are ignored.</doc>
53572           <type name="boolean" c:type="gboolean"/>
53573         </return-value>
53574       </method>
53575       <method name="add_widget" c:identifier="gtk_size_group_add_widget">
53576         <doc xml:whitespace="preserve">Adds a widget to a #GtkSizeGroup. In the future, the requisition
53577 of the widget will be determined as the maximum of its requisition
53578 and the requisition of the other widgets in the size group.
53579 Whether this applies horizontally, vertically, or in both directions
53580 depends on the mode of the size group. See gtk_size_group_set_mode().
53581 When the widget is destroyed or no longer referenced elsewhere, it will 
53582 be removed from the size group.</doc>
53583         <return-value transfer-ownership="none">
53584           <type name="none" c:type="void"/>
53585         </return-value>
53586         <parameters>
53587           <parameter name="widget" transfer-ownership="none">
53588             <doc xml:whitespace="preserve">the #GtkWidget to add</doc>
53589             <type name="Widget" c:type="GtkWidget*"/>
53590           </parameter>
53591         </parameters>
53592       </method>
53593       <method name="remove_widget" c:identifier="gtk_size_group_remove_widget">
53594         <doc xml:whitespace="preserve">Removes a widget from a #GtkSizeGroup.</doc>
53595         <return-value transfer-ownership="none">
53596           <type name="none" c:type="void"/>
53597         </return-value>
53598         <parameters>
53599           <parameter name="widget" transfer-ownership="none">
53600             <doc xml:whitespace="preserve">the #GtkWidget to remove</doc>
53601             <type name="Widget" c:type="GtkWidget*"/>
53602           </parameter>
53603         </parameters>
53604       </method>
53605       <method name="get_widgets"
53606               c:identifier="gtk_size_group_get_widgets"
53607               version="2.10">
53608         <doc xml:whitespace="preserve">Returns the list of widgets associated with @size_group.
53609 widgets. The list is owned by GTK+ and should not be modified.</doc>
53610         <return-value transfer-ownership="none">
53611           <doc xml:whitespace="preserve">a #GSList of</doc>
53612           <type name="GLib.SList" c:type="GSList*">
53613             <type name="Widget"/>
53614           </type>
53615         </return-value>
53616       </method>
53617       <property name="ignore-hidden"
53618                 version="2.8"
53619                 writable="1"
53620                 transfer-ownership="none">
53621         <doc xml:whitespace="preserve">If %TRUE, unmapped widgets are ignored when determining 
53622 the size of the group.</doc>
53623         <type name="boolean" c:type="gboolean"/>
53624       </property>
53625       <property name="mode" writable="1" transfer-ownership="none">
53626         <type name="SizeGroupMode" c:type="GtkSizeGroupMode"/>
53627       </property>
53628       <field name="parent_instance">
53629         <type name="GObject.Object" c:type="GObject"/>
53630       </field>
53631       <field name="widgets">
53632         <type name="GLib.SList" c:type="GSList*">
53633           <type name="any" c:type="gpointer"/>
53634         </type>
53635       </field>
53636       <field name="mode">
53637         <type name="uint8" c:type="guint8"/>
53638       </field>
53639       <field name="have_width" bits="1">
53640         <type name="uint" c:type="guint"/>
53641       </field>
53642       <field name="have_height" bits="1">
53643         <type name="uint" c:type="guint"/>
53644       </field>
53645       <field name="ignore_hidden" bits="1">
53646         <type name="uint" c:type="guint"/>
53647       </field>
53648       <field name="requisition">
53649         <type name="Requisition" c:type="GtkRequisition"/>
53650       </field>
53651     </class>
53652     <record name="SizeGroupClass"
53653             c:type="GtkSizeGroupClass"
53654             glib:is-gtype-struct-for="SizeGroup">
53655       <field name="parent_class">
53656         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
53657       </field>
53658       <field name="gtk_reserved1">
53659         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
53660           <return-value transfer-ownership="none">
53661             <type name="none" c:type="void"/>
53662           </return-value>
53663         </callback>
53664       </field>
53665       <field name="gtk_reserved2">
53666         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
53667           <return-value transfer-ownership="none">
53668             <type name="none" c:type="void"/>
53669           </return-value>
53670         </callback>
53671       </field>
53672       <field name="gtk_reserved3">
53673         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
53674           <return-value transfer-ownership="none">
53675             <type name="none" c:type="void"/>
53676           </return-value>
53677         </callback>
53678       </field>
53679       <field name="gtk_reserved4">
53680         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
53681           <return-value transfer-ownership="none">
53682             <type name="none" c:type="void"/>
53683           </return-value>
53684         </callback>
53685       </field>
53686     </record>
53687     <enumeration name="SizeGroupMode"
53688                  glib:type-name="GtkSizeGroupMode"
53689                  glib:get-type="gtk_size_group_mode_get_type"
53690                  c:type="GtkSizeGroupMode">
53691       <doc xml:whitespace="preserve">The mode of the size group determines the directions in which the size
53692 group affects the requested sizes of its component widgets.</doc>
53693       <member name="none"
53694               value="0"
53695               c:identifier="GTK_SIZE_GROUP_NONE"
53696               glib:nick="none"/>
53697       <member name="horizontal"
53698               value="1"
53699               c:identifier="GTK_SIZE_GROUP_HORIZONTAL"
53700               glib:nick="horizontal"/>
53701       <member name="vertical"
53702               value="2"
53703               c:identifier="GTK_SIZE_GROUP_VERTICAL"
53704               glib:nick="vertical"/>
53705       <member name="both"
53706               value="3"
53707               c:identifier="GTK_SIZE_GROUP_BOTH"
53708               glib:nick="both"/>
53709     </enumeration>
53710     <class name="Socket"
53711            c:type="GtkSocket"
53712            parent="Container"
53713            glib:type-name="GtkSocket"
53714            glib:get-type="gtk_socket_get_type"
53715            glib:type-struct="SocketClass">
53716       <implements name="Atk.ImplementorIface"/>
53717       <implements name="Buildable"/>
53718       <constructor name="new" c:identifier="gtk_socket_new">
53719         <doc xml:whitespace="preserve">Create a new empty #GtkSocket.</doc>
53720         <return-value transfer-ownership="full">
53721           <doc xml:whitespace="preserve">the new #GtkSocket.</doc>
53722           <type name="Socket" c:type="GtkWidget*"/>
53723         </return-value>
53724       </constructor>
53725       <method name="add_id" c:identifier="gtk_socket_add_id">
53726         <doc xml:whitespace="preserve">Adds an XEMBED client, such as a #GtkPlug, to the #GtkSocket.  The
53727 client may be in the same process or in a different process. 
53728 To embed a #GtkPlug in a #GtkSocket, you can either create the
53729 #GtkPlug with &lt;literal&gt;gtk_plug_new (0)&lt;/literal&gt;, call 
53730 gtk_plug_get_id() to get the window ID of the plug, and then pass that to the
53731 gtk_socket_add_id(), or you can call gtk_socket_get_id() to get the
53732 window ID for the socket, and call gtk_plug_new() passing in that
53733 ID.
53734 The #GtkSocket must have already be added into a toplevel window
53735 before you can make this call.</doc>
53736         <return-value transfer-ownership="none">
53737           <type name="none" c:type="void"/>
53738         </return-value>
53739         <parameters>
53740           <parameter name="window_id" transfer-ownership="none">
53741             <doc xml:whitespace="preserve">the window ID of a client participating in the XEMBED protocol.</doc>
53742             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
53743           </parameter>
53744         </parameters>
53745       </method>
53746       <method name="get_id" c:identifier="gtk_socket_get_id">
53747         <doc xml:whitespace="preserve">Gets the window ID of a #GtkSocket widget, which can then
53748 be used to create a client embedded inside the socket, for
53749 instance with gtk_plug_new(). 
53750 The #GtkSocket must have already be added into a toplevel window 
53751 before you can make this call.</doc>
53752         <return-value transfer-ownership="full">
53753           <doc xml:whitespace="preserve">the window ID for the socket</doc>
53754           <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
53755         </return-value>
53756       </method>
53757       <method name="get_plug_window"
53758               c:identifier="gtk_socket_get_plug_window"
53759               version=" 2.14">
53760         <doc xml:whitespace="preserve">Retrieves the window of the plug. Use this to check if the plug has
53761 been created inside of the socket.</doc>
53762         <return-value transfer-ownership="full">
53763           <doc xml:whitespace="preserve">the window of the plug if available, or %NULL</doc>
53764           <type name="Gdk.Window" c:type="GdkWindow*"/>
53765         </return-value>
53766       </method>
53767       <method name="steal" c:identifier="gtk_socket_steal">
53768         <doc xml:whitespace="preserve">Reparents a pre-existing toplevel window into a #GtkSocket. This is
53769 meant to embed clients that do not know about embedding into a
53770 #GtkSocket, however doing so is inherently unreliable, and using
53771 this function is not recommended.
53772 The #GtkSocket must have already be added into a toplevel window
53773 before you can make this call.</doc>
53774         <return-value transfer-ownership="none">
53775           <type name="none" c:type="void"/>
53776         </return-value>
53777         <parameters>
53778           <parameter name="wid" transfer-ownership="none">
53779             <doc xml:whitespace="preserve">the window ID of an existing toplevel window.</doc>
53780             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
53781           </parameter>
53782         </parameters>
53783       </method>
53784       <field name="container">
53785         <type name="Container" c:type="GtkContainer"/>
53786       </field>
53787       <field name="request_width">
53788         <type name="uint16" c:type="guint16"/>
53789       </field>
53790       <field name="request_height">
53791         <type name="uint16" c:type="guint16"/>
53792       </field>
53793       <field name="current_width">
53794         <type name="uint16" c:type="guint16"/>
53795       </field>
53796       <field name="current_height">
53797         <type name="uint16" c:type="guint16"/>
53798       </field>
53799       <field name="plug_window">
53800         <type name="Gdk.Window" c:type="GdkWindow*"/>
53801       </field>
53802       <field name="plug_widget">
53803         <type name="Widget" c:type="GtkWidget*"/>
53804       </field>
53805       <field name="xembed_version">
53806         <type name="short" c:type="gshort"/>
53807       </field>
53808       <field name="same_app" bits="1">
53809         <type name="uint" c:type="guint"/>
53810       </field>
53811       <field name="focus_in" bits="1">
53812         <type name="uint" c:type="guint"/>
53813       </field>
53814       <field name="have_size" bits="1">
53815         <type name="uint" c:type="guint"/>
53816       </field>
53817       <field name="need_map" bits="1">
53818         <type name="uint" c:type="guint"/>
53819       </field>
53820       <field name="is_mapped" bits="1">
53821         <type name="uint" c:type="guint"/>
53822       </field>
53823       <field name="active" bits="1">
53824         <type name="uint" c:type="guint"/>
53825       </field>
53826       <field name="accel_group">
53827         <type name="AccelGroup" c:type="GtkAccelGroup*"/>
53828       </field>
53829       <field name="toplevel">
53830         <type name="Widget" c:type="GtkWidget*"/>
53831       </field>
53832       <glib:signal name="plug-added">
53833         <doc xml:whitespace="preserve">This signal is emitted when a client is successfully
53834 added to the socket.</doc>
53835         <return-value transfer-ownership="full">
53836           <type name="none" c:type="void"/>
53837         </return-value>
53838       </glib:signal>
53839       <glib:signal name="plug-removed">
53840         <doc xml:whitespace="preserve">This signal is emitted when a client is removed from the socket. 
53841 The default action is to destroy the #GtkSocket widget, so if you 
53842 want to reuse it you must add a signal handler that returns %TRUE.</doc>
53843         <return-value transfer-ownership="full">
53844           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked.</doc>
53845           <type name="boolean" c:type="gboolean"/>
53846         </return-value>
53847       </glib:signal>
53848     </class>
53849     <record name="SocketClass"
53850             c:type="GtkSocketClass"
53851             glib:is-gtype-struct-for="Socket">
53852       <field name="parent_class">
53853         <type name="ContainerClass" c:type="GtkContainerClass"/>
53854       </field>
53855       <field name="plug_added">
53856         <callback name="plug_added" c:type="plug_added">
53857           <return-value transfer-ownership="none">
53858             <type name="none" c:type="void"/>
53859           </return-value>
53860           <parameters>
53861             <parameter name="socket_" transfer-ownership="none">
53862               <type name="Socket" c:type="GtkSocket*"/>
53863             </parameter>
53864           </parameters>
53865         </callback>
53866       </field>
53867       <field name="plug_removed">
53868         <callback name="plug_removed" c:type="plug_removed">
53869           <return-value transfer-ownership="none">
53870             <type name="boolean" c:type="gboolean"/>
53871           </return-value>
53872           <parameters>
53873             <parameter name="socket_" transfer-ownership="none">
53874               <type name="Socket" c:type="GtkSocket*"/>
53875             </parameter>
53876           </parameters>
53877         </callback>
53878       </field>
53879       <field name="gtk_reserved1">
53880         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
53881           <return-value transfer-ownership="none">
53882             <type name="none" c:type="void"/>
53883           </return-value>
53884         </callback>
53885       </field>
53886       <field name="gtk_reserved2">
53887         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
53888           <return-value transfer-ownership="none">
53889             <type name="none" c:type="void"/>
53890           </return-value>
53891         </callback>
53892       </field>
53893       <field name="gtk_reserved3">
53894         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
53895           <return-value transfer-ownership="none">
53896             <type name="none" c:type="void"/>
53897           </return-value>
53898         </callback>
53899       </field>
53900       <field name="gtk_reserved4">
53901         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
53902           <return-value transfer-ownership="none">
53903             <type name="none" c:type="void"/>
53904           </return-value>
53905         </callback>
53906       </field>
53907     </record>
53908     <enumeration name="SortType"
53909                  glib:type-name="GtkSortType"
53910                  glib:get-type="gtk_sort_type_get_type"
53911                  c:type="GtkSortType">
53912       <member name="ascending"
53913               value="0"
53914               c:identifier="GTK_SORT_ASCENDING"
53915               glib:nick="ascending"/>
53916       <member name="descending"
53917               value="1"
53918               c:identifier="GTK_SORT_DESCENDING"
53919               glib:nick="descending"/>
53920     </enumeration>
53921     <class name="SpinButton"
53922            c:type="GtkSpinButton"
53923            parent="Entry"
53924            glib:type-name="GtkSpinButton"
53925            glib:get-type="gtk_spin_button_get_type"
53926            glib:type-struct="SpinButtonClass">
53927       <implements name="Atk.ImplementorIface"/>
53928       <implements name="Buildable"/>
53929       <implements name="CellEditable"/>
53930       <implements name="Editable"/>
53931       <constructor name="new" c:identifier="gtk_spin_button_new">
53932         <return-value transfer-ownership="full">
53933           <type name="SpinButton" c:type="GtkWidget*"/>
53934         </return-value>
53935         <parameters>
53936           <parameter name="adjustment" transfer-ownership="none">
53937             <type name="Adjustment" c:type="GtkAdjustment*"/>
53938           </parameter>
53939           <parameter name="climb_rate" transfer-ownership="none">
53940             <type name="double" c:type="gdouble"/>
53941           </parameter>
53942           <parameter name="digits" transfer-ownership="none">
53943             <type name="uint" c:type="guint"/>
53944           </parameter>
53945         </parameters>
53946       </constructor>
53947       <constructor name="new_with_range"
53948                    c:identifier="gtk_spin_button_new_with_range">
53949         <doc xml:whitespace="preserve">This is a convenience constructor that allows creation of a numeric 
53950 #GtkSpinButton without manually creating an adjustment. The value is 
53951 initially set to the minimum value and a page increment of 10 * @step
53952 is the default. The precision of the spin button is equivalent to the 
53953 precision of @step. 
53954 Note that the way in which the precision is derived works best if @step 
53955 is a power of ten. If the resulting precision is not suitable for your 
53956 needs, use gtk_spin_button_set_digits() to correct it.</doc>
53957         <return-value transfer-ownership="full">
53958           <doc xml:whitespace="preserve">The new spin button as a #GtkWidget.</doc>
53959           <type name="SpinButton" c:type="GtkWidget*"/>
53960         </return-value>
53961         <parameters>
53962           <parameter name="min" transfer-ownership="none">
53963             <doc xml:whitespace="preserve">Minimum allowable value</doc>
53964             <type name="double" c:type="gdouble"/>
53965           </parameter>
53966           <parameter name="max" transfer-ownership="none">
53967             <doc xml:whitespace="preserve">Maximum allowable value</doc>
53968             <type name="double" c:type="gdouble"/>
53969           </parameter>
53970           <parameter name="step" transfer-ownership="none">
53971             <doc xml:whitespace="preserve">Increment added or subtracted by spinning the widget</doc>
53972             <type name="double" c:type="gdouble"/>
53973           </parameter>
53974         </parameters>
53975       </constructor>
53976       <method name="configure" c:identifier="gtk_spin_button_configure">
53977         <doc xml:whitespace="preserve">Changes the properties of an existing spin button. The adjustment, climb rate,
53978 and number of decimal places are all changed accordingly, after this function call.</doc>
53979         <return-value transfer-ownership="none">
53980           <type name="none" c:type="void"/>
53981         </return-value>
53982         <parameters>
53983           <parameter name="adjustment"
53984                      transfer-ownership="none"
53985                      allow-none="1">
53986             <doc xml:whitespace="preserve">a #GtkAdjustment.</doc>
53987             <type name="Adjustment" c:type="GtkAdjustment*"/>
53988           </parameter>
53989           <parameter name="climb_rate" transfer-ownership="none">
53990             <doc xml:whitespace="preserve">the new climb rate.</doc>
53991             <type name="double" c:type="gdouble"/>
53992           </parameter>
53993           <parameter name="digits" transfer-ownership="none">
53994             <doc xml:whitespace="preserve">the number of decimal places to display in the spin button.</doc>
53995             <type name="uint" c:type="guint"/>
53996           </parameter>
53997         </parameters>
53998       </method>
53999       <method name="set_adjustment"
54000               c:identifier="gtk_spin_button_set_adjustment">
54001         <doc xml:whitespace="preserve">Replaces the #GtkAdjustment associated with @spin_button.</doc>
54002         <return-value transfer-ownership="none">
54003           <type name="none" c:type="void"/>
54004         </return-value>
54005         <parameters>
54006           <parameter name="adjustment" transfer-ownership="none">
54007             <doc xml:whitespace="preserve">a #GtkAdjustment to replace the existing adjustment</doc>
54008             <type name="Adjustment" c:type="GtkAdjustment*"/>
54009           </parameter>
54010         </parameters>
54011       </method>
54012       <method name="get_adjustment"
54013               c:identifier="gtk_spin_button_get_adjustment">
54014         <doc xml:whitespace="preserve">Get the adjustment associated with a #GtkSpinButton</doc>
54015         <return-value transfer-ownership="full">
54016           <doc xml:whitespace="preserve">the #GtkAdjustment of @spin_button</doc>
54017           <type name="Adjustment" c:type="GtkAdjustment*"/>
54018         </return-value>
54019       </method>
54020       <method name="set_digits" c:identifier="gtk_spin_button_set_digits">
54021         <doc xml:whitespace="preserve">Set the precision to be displayed by @spin_button. Up to 20 digit precision
54022 is allowed.</doc>
54023         <return-value transfer-ownership="none">
54024           <type name="none" c:type="void"/>
54025         </return-value>
54026         <parameters>
54027           <parameter name="digits" transfer-ownership="none">
54028             <doc xml:whitespace="preserve">the number of digits after the decimal point to be displayed for the spin button's value</doc>
54029             <type name="uint" c:type="guint"/>
54030           </parameter>
54031         </parameters>
54032       </method>
54033       <method name="get_digits" c:identifier="gtk_spin_button_get_digits">
54034         <doc xml:whitespace="preserve">Fetches the precision of @spin_button. See gtk_spin_button_set_digits().</doc>
54035         <return-value transfer-ownership="none">
54036           <doc xml:whitespace="preserve">the current precision</doc>
54037           <type name="uint" c:type="guint"/>
54038         </return-value>
54039       </method>
54040       <method name="set_increments"
54041               c:identifier="gtk_spin_button_set_increments">
54042         <doc xml:whitespace="preserve">Sets the step and page increments for spin_button.  This affects how 
54043 quickly the value changes when the spin button's arrows are activated.</doc>
54044         <return-value transfer-ownership="none">
54045           <type name="none" c:type="void"/>
54046         </return-value>
54047         <parameters>
54048           <parameter name="step" transfer-ownership="none">
54049             <doc xml:whitespace="preserve">increment applied for a button 1 press.</doc>
54050             <type name="double" c:type="gdouble"/>
54051           </parameter>
54052           <parameter name="page" transfer-ownership="none">
54053             <doc xml:whitespace="preserve">increment applied for a button 2 press.</doc>
54054             <type name="double" c:type="gdouble"/>
54055           </parameter>
54056         </parameters>
54057       </method>
54058       <method name="get_increments"
54059               c:identifier="gtk_spin_button_get_increments">
54060         <doc xml:whitespace="preserve">Gets the current step and page the increments used by @spin_button. See
54061 gtk_spin_button_set_increments().</doc>
54062         <return-value transfer-ownership="none">
54063           <type name="none" c:type="void"/>
54064         </return-value>
54065         <parameters>
54066           <parameter name="step"
54067                      direction="out"
54068                      caller-allocates="0"
54069                      transfer-ownership="full"
54070                      allow-none="1">
54071             <doc xml:whitespace="preserve">location to store step increment, or %NULL</doc>
54072             <type name="double" c:type="gdouble*"/>
54073           </parameter>
54074           <parameter name="page"
54075                      direction="out"
54076                      caller-allocates="0"
54077                      transfer-ownership="full"
54078                      allow-none="1">
54079             <doc xml:whitespace="preserve">location to store page increment, or %NULL</doc>
54080             <type name="double" c:type="gdouble*"/>
54081           </parameter>
54082         </parameters>
54083       </method>
54084       <method name="set_range" c:identifier="gtk_spin_button_set_range">
54085         <doc xml:whitespace="preserve">Sets the minimum and maximum allowable values for @spin_button</doc>
54086         <return-value transfer-ownership="none">
54087           <type name="none" c:type="void"/>
54088         </return-value>
54089         <parameters>
54090           <parameter name="min" transfer-ownership="none">
54091             <doc xml:whitespace="preserve">minimum allowable value</doc>
54092             <type name="double" c:type="gdouble"/>
54093           </parameter>
54094           <parameter name="max" transfer-ownership="none">
54095             <doc xml:whitespace="preserve">maximum allowable value</doc>
54096             <type name="double" c:type="gdouble"/>
54097           </parameter>
54098         </parameters>
54099       </method>
54100       <method name="get_range" c:identifier="gtk_spin_button_get_range">
54101         <doc xml:whitespace="preserve">Gets the range allowed for @spin_button. See
54102 gtk_spin_button_set_range().</doc>
54103         <return-value transfer-ownership="none">
54104           <type name="none" c:type="void"/>
54105         </return-value>
54106         <parameters>
54107           <parameter name="min"
54108                      direction="out"
54109                      caller-allocates="0"
54110                      transfer-ownership="full"
54111                      allow-none="1">
54112             <doc xml:whitespace="preserve">location to store minimum allowed value, or %NULL</doc>
54113             <type name="double" c:type="gdouble*"/>
54114           </parameter>
54115           <parameter name="max"
54116                      direction="out"
54117                      caller-allocates="0"
54118                      transfer-ownership="full"
54119                      allow-none="1">
54120             <doc xml:whitespace="preserve">location to store maximum allowed value, or %NULL</doc>
54121             <type name="double" c:type="gdouble*"/>
54122           </parameter>
54123         </parameters>
54124       </method>
54125       <method name="get_value" c:identifier="gtk_spin_button_get_value">
54126         <doc xml:whitespace="preserve">Get the value in the @spin_button.</doc>
54127         <return-value transfer-ownership="none">
54128           <doc xml:whitespace="preserve">the value of @spin_button</doc>
54129           <type name="double" c:type="gdouble"/>
54130         </return-value>
54131       </method>
54132       <method name="get_value_as_int"
54133               c:identifier="gtk_spin_button_get_value_as_int">
54134         <doc xml:whitespace="preserve">Get the value @spin_button represented as an integer.</doc>
54135         <return-value transfer-ownership="none">
54136           <doc xml:whitespace="preserve">the value of @spin_button</doc>
54137           <type name="int" c:type="gint"/>
54138         </return-value>
54139       </method>
54140       <method name="set_value" c:identifier="gtk_spin_button_set_value">
54141         <doc xml:whitespace="preserve">Set the value of @spin_button.</doc>
54142         <return-value transfer-ownership="none">
54143           <type name="none" c:type="void"/>
54144         </return-value>
54145         <parameters>
54146           <parameter name="value" transfer-ownership="none">
54147             <doc xml:whitespace="preserve">the new value</doc>
54148             <type name="double" c:type="gdouble"/>
54149           </parameter>
54150         </parameters>
54151       </method>
54152       <method name="set_update_policy"
54153               c:identifier="gtk_spin_button_set_update_policy">
54154         <doc xml:whitespace="preserve">Sets the update behavior of a spin button. This determines whether the
54155 spin button is always updated or only when a valid value is set.</doc>
54156         <return-value transfer-ownership="none">
54157           <type name="none" c:type="void"/>
54158         </return-value>
54159         <parameters>
54160           <parameter name="policy" transfer-ownership="none">
54161             <doc xml:whitespace="preserve">a #GtkSpinButtonUpdatePolicy value</doc>
54162             <type name="SpinButtonUpdatePolicy"
54163                   c:type="GtkSpinButtonUpdatePolicy"/>
54164           </parameter>
54165         </parameters>
54166       </method>
54167       <method name="get_update_policy"
54168               c:identifier="gtk_spin_button_get_update_policy">
54169         <doc xml:whitespace="preserve">Gets the update behavior of a spin button. See
54170 gtk_spin_button_set_update_policy().</doc>
54171         <return-value transfer-ownership="full">
54172           <doc xml:whitespace="preserve">the current update policy</doc>
54173           <type name="SpinButtonUpdatePolicy"
54174                 c:type="GtkSpinButtonUpdatePolicy"/>
54175         </return-value>
54176       </method>
54177       <method name="set_numeric" c:identifier="gtk_spin_button_set_numeric">
54178         <doc xml:whitespace="preserve">Sets the flag that determines if non-numeric text can be typed into
54179 the spin button.</doc>
54180         <return-value transfer-ownership="none">
54181           <type name="none" c:type="void"/>
54182         </return-value>
54183         <parameters>
54184           <parameter name="numeric" transfer-ownership="none">
54185             <doc xml:whitespace="preserve">flag indicating if only numeric entry is allowed.</doc>
54186             <type name="boolean" c:type="gboolean"/>
54187           </parameter>
54188         </parameters>
54189       </method>
54190       <method name="get_numeric" c:identifier="gtk_spin_button_get_numeric">
54191         <doc xml:whitespace="preserve">Returns whether non-numeric text can be typed into the spin button.
54192 See gtk_spin_button_set_numeric().</doc>
54193         <return-value transfer-ownership="none">
54194           <doc xml:whitespace="preserve">%TRUE if only numeric text can be entered</doc>
54195           <type name="boolean" c:type="gboolean"/>
54196         </return-value>
54197       </method>
54198       <method name="spin" c:identifier="gtk_spin_button_spin">
54199         <doc xml:whitespace="preserve">Increment or decrement a spin button's value in a specified direction
54200 by a specified amount.</doc>
54201         <return-value transfer-ownership="none">
54202           <type name="none" c:type="void"/>
54203         </return-value>
54204         <parameters>
54205           <parameter name="direction" transfer-ownership="none">
54206             <doc xml:whitespace="preserve">a #GtkSpinType indicating the direction to spin.</doc>
54207             <type name="SpinType" c:type="GtkSpinType"/>
54208           </parameter>
54209           <parameter name="increment" transfer-ownership="none">
54210             <doc xml:whitespace="preserve">step increment to apply in the specified direction.</doc>
54211             <type name="double" c:type="gdouble"/>
54212           </parameter>
54213         </parameters>
54214       </method>
54215       <method name="set_wrap" c:identifier="gtk_spin_button_set_wrap">
54216         <doc xml:whitespace="preserve">Sets the flag that determines if a spin button value wraps around to the
54217 opposite limit when the upper or lower limit of the range is exceeded.</doc>
54218         <return-value transfer-ownership="none">
54219           <type name="none" c:type="void"/>
54220         </return-value>
54221         <parameters>
54222           <parameter name="wrap" transfer-ownership="none">
54223             <doc xml:whitespace="preserve">a flag indicating if wrapping behavior is performed.</doc>
54224             <type name="boolean" c:type="gboolean"/>
54225           </parameter>
54226         </parameters>
54227       </method>
54228       <method name="get_wrap" c:identifier="gtk_spin_button_get_wrap">
54229         <doc xml:whitespace="preserve">Returns whether the spin button's value wraps around to the
54230 opposite limit when the upper or lower limit of the range is
54231 exceeded. See gtk_spin_button_set_wrap().</doc>
54232         <return-value transfer-ownership="none">
54233           <doc xml:whitespace="preserve">%TRUE if the spin button wraps around</doc>
54234           <type name="boolean" c:type="gboolean"/>
54235         </return-value>
54236       </method>
54237       <method name="set_snap_to_ticks"
54238               c:identifier="gtk_spin_button_set_snap_to_ticks">
54239         <doc xml:whitespace="preserve">Sets the policy as to whether values are corrected to the nearest step 
54240 increment when a spin button is activated after providing an invalid value.</doc>
54241         <return-value transfer-ownership="none">
54242           <type name="none" c:type="void"/>
54243         </return-value>
54244         <parameters>
54245           <parameter name="snap_to_ticks" transfer-ownership="none">
54246             <doc xml:whitespace="preserve">a flag indicating if invalid values should be corrected.</doc>
54247             <type name="boolean" c:type="gboolean"/>
54248           </parameter>
54249         </parameters>
54250       </method>
54251       <method name="get_snap_to_ticks"
54252               c:identifier="gtk_spin_button_get_snap_to_ticks">
54253         <doc xml:whitespace="preserve">Returns whether the values are corrected to the nearest step. See
54254 gtk_spin_button_set_snap_to_ticks().</doc>
54255         <return-value transfer-ownership="none">
54256           <doc xml:whitespace="preserve">%TRUE if values are snapped to the nearest step.</doc>
54257           <type name="boolean" c:type="gboolean"/>
54258         </return-value>
54259       </method>
54260       <method name="update" c:identifier="gtk_spin_button_update">
54261         <doc xml:whitespace="preserve">Manually force an update of the spin button.</doc>
54262         <return-value transfer-ownership="none">
54263           <type name="none" c:type="void"/>
54264         </return-value>
54265       </method>
54266       <property name="adjustment" writable="1" transfer-ownership="none">
54267         <type name="Adjustment" c:type="GtkAdjustment"/>
54268       </property>
54269       <property name="climb-rate" writable="1" transfer-ownership="none">
54270         <type name="double" c:type="gdouble"/>
54271       </property>
54272       <property name="digits" writable="1" transfer-ownership="none">
54273         <type name="uint" c:type="guint"/>
54274       </property>
54275       <property name="numeric" writable="1" transfer-ownership="none">
54276         <type name="boolean" c:type="gboolean"/>
54277       </property>
54278       <property name="snap-to-ticks" writable="1" transfer-ownership="none">
54279         <type name="boolean" c:type="gboolean"/>
54280       </property>
54281       <property name="update-policy" writable="1" transfer-ownership="none">
54282         <type name="SpinButtonUpdatePolicy"
54283               c:type="GtkSpinButtonUpdatePolicy"/>
54284       </property>
54285       <property name="value" writable="1" transfer-ownership="none">
54286         <type name="double" c:type="gdouble"/>
54287       </property>
54288       <property name="wrap" writable="1" transfer-ownership="none">
54289         <type name="boolean" c:type="gboolean"/>
54290       </property>
54291       <field name="entry">
54292         <type name="Entry" c:type="GtkEntry"/>
54293       </field>
54294       <field name="adjustment">
54295         <type name="Adjustment" c:type="GtkAdjustment*"/>
54296       </field>
54297       <field name="panel">
54298         <type name="Gdk.Window" c:type="GdkWindow*"/>
54299       </field>
54300       <field name="timer">
54301         <type name="uint32" c:type="guint32"/>
54302       </field>
54303       <field name="climb_rate">
54304         <type name="double" c:type="gdouble"/>
54305       </field>
54306       <field name="timer_step">
54307         <type name="double" c:type="gdouble"/>
54308       </field>
54309       <field name="update_policy">
54310         <type name="SpinButtonUpdatePolicy"
54311               c:type="GtkSpinButtonUpdatePolicy"/>
54312       </field>
54313       <field name="in_child" bits="2">
54314         <type name="uint" c:type="guint"/>
54315       </field>
54316       <field name="click_child" bits="2">
54317         <type name="uint" c:type="guint"/>
54318       </field>
54319       <field name="button" bits="2">
54320         <type name="uint" c:type="guint"/>
54321       </field>
54322       <field name="need_timer" bits="1">
54323         <type name="uint" c:type="guint"/>
54324       </field>
54325       <field name="timer_calls" bits="3">
54326         <type name="uint" c:type="guint"/>
54327       </field>
54328       <field name="digits" bits="10">
54329         <type name="uint" c:type="guint"/>
54330       </field>
54331       <field name="numeric" bits="1">
54332         <type name="uint" c:type="guint"/>
54333       </field>
54334       <field name="wrap" bits="1">
54335         <type name="uint" c:type="guint"/>
54336       </field>
54337       <field name="snap_to_ticks" bits="1">
54338         <type name="uint" c:type="guint"/>
54339       </field>
54340       <glib:signal name="change-value">
54341         <return-value transfer-ownership="full">
54342           <type name="none" c:type="void"/>
54343         </return-value>
54344         <parameters>
54345           <parameter name="object" transfer-ownership="none">
54346             <type name="ScrollType" c:type="GtkScrollType"/>
54347           </parameter>
54348         </parameters>
54349       </glib:signal>
54350       <glib:signal name="input">
54351         <return-value transfer-ownership="full">
54352           <type name="int" c:type="gint"/>
54353         </return-value>
54354         <parameters>
54355           <parameter name="object" transfer-ownership="none">
54356             <type name="any" c:type="gpointer"/>
54357           </parameter>
54358         </parameters>
54359       </glib:signal>
54360       <glib:signal name="output">
54361         <doc xml:whitespace="preserve">The ::output signal can be used to change to formatting
54362 of the value that is displayed in the spin buttons entry.
54363 |[
54364 /&amp;ast; show leading zeros &amp;ast;/
54365 static gboolean
54366 on_output (GtkSpinButton *spin,
54367 gpointer       data)
54368 {
54369 GtkAdjustment *adj;
54370 gchar *text;
54371 int value;
54372 adj = gtk_spin_button_get_adjustment (spin);
54373 value = (int)gtk_adjustment_get_value (adj);
54374 text = g_strdup_printf ("%02d", value);
54375 gtk_entry_set_text (GTK_ENTRY (spin), text);
54376 g_free (text);
54377 return TRUE;
54378 }
54379 ]|</doc>
54380         <return-value transfer-ownership="full">
54381           <doc xml:whitespace="preserve">%TRUE if the value has been displayed.</doc>
54382           <type name="boolean" c:type="gboolean"/>
54383         </return-value>
54384       </glib:signal>
54385       <glib:signal name="value-changed">
54386         <return-value transfer-ownership="full">
54387           <type name="none" c:type="void"/>
54388         </return-value>
54389       </glib:signal>
54390       <glib:signal name="wrapped" version="2.10">
54391         <doc xml:whitespace="preserve">The wrapped signal is emitted right after the spinbutton wraps
54392 from its maximum to minimum value or vice-versa.</doc>
54393         <return-value transfer-ownership="full">
54394           <type name="none" c:type="void"/>
54395         </return-value>
54396       </glib:signal>
54397     </class>
54398     <record name="SpinButtonClass"
54399             c:type="GtkSpinButtonClass"
54400             glib:is-gtype-struct-for="SpinButton">
54401       <field name="parent_class">
54402         <type name="EntryClass" c:type="GtkEntryClass"/>
54403       </field>
54404       <field name="input">
54405         <callback name="input" c:type="input">
54406           <return-value transfer-ownership="none">
54407             <type name="int" c:type="gint"/>
54408           </return-value>
54409           <parameters>
54410             <parameter name="spin_button" transfer-ownership="none">
54411               <type name="SpinButton" c:type="GtkSpinButton*"/>
54412             </parameter>
54413             <parameter name="new_value"
54414                        direction="out"
54415                        caller-allocates="0"
54416                        transfer-ownership="full">
54417               <type name="double" c:type="gdouble*"/>
54418             </parameter>
54419           </parameters>
54420         </callback>
54421       </field>
54422       <field name="output">
54423         <callback name="output" c:type="output">
54424           <return-value transfer-ownership="none">
54425             <type name="int" c:type="gint"/>
54426           </return-value>
54427           <parameters>
54428             <parameter name="spin_button" transfer-ownership="none">
54429               <type name="SpinButton" c:type="GtkSpinButton*"/>
54430             </parameter>
54431           </parameters>
54432         </callback>
54433       </field>
54434       <field name="value_changed">
54435         <callback name="value_changed" c:type="value_changed">
54436           <return-value transfer-ownership="none">
54437             <type name="none" c:type="void"/>
54438           </return-value>
54439           <parameters>
54440             <parameter name="spin_button" transfer-ownership="none">
54441               <type name="SpinButton" c:type="GtkSpinButton*"/>
54442             </parameter>
54443           </parameters>
54444         </callback>
54445       </field>
54446       <field name="change_value">
54447         <callback name="change_value" c:type="change_value">
54448           <return-value transfer-ownership="none">
54449             <type name="none" c:type="void"/>
54450           </return-value>
54451           <parameters>
54452             <parameter name="spin_button" transfer-ownership="none">
54453               <type name="SpinButton" c:type="GtkSpinButton*"/>
54454             </parameter>
54455             <parameter name="scroll" transfer-ownership="none">
54456               <type name="ScrollType" c:type="GtkScrollType"/>
54457             </parameter>
54458           </parameters>
54459         </callback>
54460       </field>
54461       <field name="wrapped">
54462         <callback name="wrapped" c:type="wrapped">
54463           <return-value transfer-ownership="none">
54464             <type name="none" c:type="void"/>
54465           </return-value>
54466           <parameters>
54467             <parameter name="spin_button" transfer-ownership="none">
54468               <type name="SpinButton" c:type="GtkSpinButton*"/>
54469             </parameter>
54470           </parameters>
54471         </callback>
54472       </field>
54473       <field name="gtk_reserved1">
54474         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
54475           <return-value transfer-ownership="none">
54476             <type name="none" c:type="void"/>
54477           </return-value>
54478         </callback>
54479       </field>
54480       <field name="gtk_reserved2">
54481         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
54482           <return-value transfer-ownership="none">
54483             <type name="none" c:type="void"/>
54484           </return-value>
54485         </callback>
54486       </field>
54487       <field name="gtk_reserved3">
54488         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
54489           <return-value transfer-ownership="none">
54490             <type name="none" c:type="void"/>
54491           </return-value>
54492         </callback>
54493       </field>
54494     </record>
54495     <enumeration name="SpinButtonUpdatePolicy"
54496                  glib:type-name="GtkSpinButtonUpdatePolicy"
54497                  glib:get-type="gtk_spin_button_update_policy_get_type"
54498                  c:type="GtkSpinButtonUpdatePolicy">
54499       <member name="always"
54500               value="0"
54501               c:identifier="GTK_UPDATE_ALWAYS"
54502               glib:nick="always"/>
54503       <member name="if_valid"
54504               value="1"
54505               c:identifier="GTK_UPDATE_IF_VALID"
54506               glib:nick="if-valid"/>
54507     </enumeration>
54508     <enumeration name="SpinType"
54509                  glib:type-name="GtkSpinType"
54510                  glib:get-type="gtk_spin_type_get_type"
54511                  c:type="GtkSpinType">
54512       <member name="step_forward"
54513               value="0"
54514               c:identifier="GTK_SPIN_STEP_FORWARD"
54515               glib:nick="step-forward"/>
54516       <member name="step_backward"
54517               value="1"
54518               c:identifier="GTK_SPIN_STEP_BACKWARD"
54519               glib:nick="step-backward"/>
54520       <member name="page_forward"
54521               value="2"
54522               c:identifier="GTK_SPIN_PAGE_FORWARD"
54523               glib:nick="page-forward"/>
54524       <member name="page_backward"
54525               value="3"
54526               c:identifier="GTK_SPIN_PAGE_BACKWARD"
54527               glib:nick="page-backward"/>
54528       <member name="home"
54529               value="4"
54530               c:identifier="GTK_SPIN_HOME"
54531               glib:nick="home"/>
54532       <member name="end"
54533               value="5"
54534               c:identifier="GTK_SPIN_END"
54535               glib:nick="end"/>
54536       <member name="user_defined"
54537               value="6"
54538               c:identifier="GTK_SPIN_USER_DEFINED"
54539               glib:nick="user-defined"/>
54540     </enumeration>
54541     <class name="Spinner"
54542            c:type="GtkSpinner"
54543            parent="DrawingArea"
54544            glib:type-name="GtkSpinner"
54545            glib:get-type="gtk_spinner_get_type"
54546            glib:type-struct="SpinnerClass">
54547       <implements name="Atk.ImplementorIface"/>
54548       <implements name="Buildable"/>
54549       <constructor name="new" c:identifier="gtk_spinner_new" version="2.20">
54550         <doc xml:whitespace="preserve">Returns a new spinner widget. Not yet started.</doc>
54551         <return-value transfer-ownership="full">
54552           <doc xml:whitespace="preserve">a new #GtkSpinner</doc>
54553           <type name="Spinner" c:type="GtkWidget*"/>
54554         </return-value>
54555       </constructor>
54556       <method name="start" c:identifier="gtk_spinner_start" version="2.20">
54557         <doc xml:whitespace="preserve">Starts the animation of the spinner.</doc>
54558         <return-value transfer-ownership="none">
54559           <type name="none" c:type="void"/>
54560         </return-value>
54561       </method>
54562       <method name="stop" c:identifier="gtk_spinner_stop" version="2.20">
54563         <doc xml:whitespace="preserve">Stops the animation of the spinner.</doc>
54564         <return-value transfer-ownership="none">
54565           <type name="none" c:type="void"/>
54566         </return-value>
54567       </method>
54568       <property name="active" writable="1" transfer-ownership="none">
54569         <type name="boolean" c:type="gboolean"/>
54570       </property>
54571       <field name="parent">
54572         <type name="DrawingArea" c:type="GtkDrawingArea"/>
54573       </field>
54574       <field name="priv">
54575         <type name="SpinnerPrivate" c:type="GtkSpinnerPrivate*"/>
54576       </field>
54577     </class>
54578     <record name="SpinnerClass"
54579             c:type="GtkSpinnerClass"
54580             glib:is-gtype-struct-for="Spinner">
54581       <field name="parent_class">
54582         <type name="DrawingAreaClass" c:type="GtkDrawingAreaClass"/>
54583       </field>
54584     </record>
54585     <record name="SpinnerPrivate" c:type="GtkSpinnerPrivate">
54586     </record>
54587     <enumeration name="StateType"
54588                  glib:type-name="GtkStateType"
54589                  glib:get-type="gtk_state_type_get_type"
54590                  c:type="GtkStateType">
54591       <member name="normal"
54592               value="0"
54593               c:identifier="GTK_STATE_NORMAL"
54594               glib:nick="normal"/>
54595       <member name="active"
54596               value="1"
54597               c:identifier="GTK_STATE_ACTIVE"
54598               glib:nick="active"/>
54599       <member name="prelight"
54600               value="2"
54601               c:identifier="GTK_STATE_PRELIGHT"
54602               glib:nick="prelight"/>
54603       <member name="selected"
54604               value="3"
54605               c:identifier="GTK_STATE_SELECTED"
54606               glib:nick="selected"/>
54607       <member name="insensitive"
54608               value="4"
54609               c:identifier="GTK_STATE_INSENSITIVE"
54610               glib:nick="insensitive"/>
54611     </enumeration>
54612     <class name="StatusIcon"
54613            c:type="GtkStatusIcon"
54614            parent="GObject.Object"
54615            glib:type-name="GtkStatusIcon"
54616            glib:get-type="gtk_status_icon_get_type"
54617            glib:type-struct="StatusIconClass">
54618       <constructor name="new"
54619                    c:identifier="gtk_status_icon_new"
54620                    version="2.10">
54621         <doc xml:whitespace="preserve">Creates an empty status icon object.</doc>
54622         <return-value transfer-ownership="full">
54623           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
54624           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
54625         </return-value>
54626       </constructor>
54627       <constructor name="new_from_pixbuf"
54628                    c:identifier="gtk_status_icon_new_from_pixbuf"
54629                    version="2.10">
54630         <doc xml:whitespace="preserve">Creates a status icon displaying @pixbuf. 
54631 The image will be scaled down to fit in the available 
54632 space in the notification area, if necessary.</doc>
54633         <return-value transfer-ownership="full">
54634           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
54635           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
54636         </return-value>
54637         <parameters>
54638           <parameter name="pixbuf" transfer-ownership="none">
54639             <doc xml:whitespace="preserve">a #GdkPixbuf</doc>
54640             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
54641           </parameter>
54642         </parameters>
54643       </constructor>
54644       <constructor name="new_from_file"
54645                    c:identifier="gtk_status_icon_new_from_file"
54646                    version="2.10">
54647         <doc xml:whitespace="preserve">Creates a status icon displaying the file @filename. 
54648 The image will be scaled down to fit in the available 
54649 space in the notification area, if necessary.</doc>
54650         <return-value transfer-ownership="full">
54651           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
54652           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
54653         </return-value>
54654         <parameters>
54655           <parameter name="filename" transfer-ownership="none">
54656             <doc xml:whitespace="preserve">a filename</doc>
54657             <type name="utf8" c:type="gchar*"/>
54658           </parameter>
54659         </parameters>
54660       </constructor>
54661       <constructor name="new_from_stock"
54662                    c:identifier="gtk_status_icon_new_from_stock"
54663                    version="2.10">
54664         <doc xml:whitespace="preserve">Creates a status icon displaying a stock icon. Sample stock icon
54665 names are #GTK_STOCK_OPEN, #GTK_STOCK_QUIT. You can register your 
54666 own stock icon names, see gtk_icon_factory_add_default() and 
54667 gtk_icon_factory_add().</doc>
54668         <return-value transfer-ownership="full">
54669           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
54670           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
54671         </return-value>
54672         <parameters>
54673           <parameter name="stock_id" transfer-ownership="none">
54674             <doc xml:whitespace="preserve">a stock icon id</doc>
54675             <type name="utf8" c:type="gchar*"/>
54676           </parameter>
54677         </parameters>
54678       </constructor>
54679       <constructor name="new_from_icon_name"
54680                    c:identifier="gtk_status_icon_new_from_icon_name"
54681                    version="2.10">
54682         <doc xml:whitespace="preserve">Creates a status icon displaying an icon from the current icon theme.
54683 If the current icon theme is changed, the icon will be updated 
54684 appropriately.</doc>
54685         <return-value transfer-ownership="full">
54686           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
54687           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
54688         </return-value>
54689         <parameters>
54690           <parameter name="icon_name" transfer-ownership="none">
54691             <doc xml:whitespace="preserve">an icon name</doc>
54692             <type name="utf8" c:type="gchar*"/>
54693           </parameter>
54694         </parameters>
54695       </constructor>
54696       <constructor name="new_from_gicon"
54697                    c:identifier="gtk_status_icon_new_from_gicon"
54698                    version="2.14">
54699         <doc xml:whitespace="preserve">Creates a status icon displaying a #GIcon. If the icon is a
54700 themed icon, it will be updated when the theme changes.</doc>
54701         <return-value transfer-ownership="full">
54702           <doc xml:whitespace="preserve">a new #GtkStatusIcon</doc>
54703           <type name="StatusIcon" c:type="GtkStatusIcon*"/>
54704         </return-value>
54705         <parameters>
54706           <parameter name="icon" transfer-ownership="none">
54707             <doc xml:whitespace="preserve">a #GIcon</doc>
54708             <type name="Gio.Icon" c:type="GIcon*"/>
54709           </parameter>
54710         </parameters>
54711       </constructor>
54712       <function name="position_menu"
54713                 c:identifier="gtk_status_icon_position_menu"
54714                 version="2.10">
54715         <doc xml:whitespace="preserve">Menu positioning function to use with gtk_menu_popup()
54716 to position @menu aligned to the status icon @user_data.</doc>
54717         <return-value transfer-ownership="none">
54718           <type name="none" c:type="void"/>
54719         </return-value>
54720         <parameters>
54721           <parameter name="menu" transfer-ownership="none">
54722             <doc xml:whitespace="preserve">the #GtkMenu</doc>
54723             <type name="Menu" c:type="GtkMenu*"/>
54724           </parameter>
54725           <parameter name="x"
54726                      direction="out"
54727                      caller-allocates="0"
54728                      transfer-ownership="full">
54729             <doc xml:whitespace="preserve">return location for the x position</doc>
54730             <type name="int" c:type="gint*"/>
54731           </parameter>
54732           <parameter name="y"
54733                      direction="out"
54734                      caller-allocates="0"
54735                      transfer-ownership="full">
54736             <doc xml:whitespace="preserve">return location for the y position</doc>
54737             <type name="int" c:type="gint*"/>
54738           </parameter>
54739           <parameter name="push_in"
54740                      direction="out"
54741                      caller-allocates="0"
54742                      transfer-ownership="full">
54743             <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>
54744             <type name="boolean" c:type="gboolean*"/>
54745           </parameter>
54746           <parameter name="user_data" transfer-ownership="none">
54747             <doc xml:whitespace="preserve">the status icon to position the menu on</doc>
54748             <type name="any" c:type="gpointer"/>
54749           </parameter>
54750         </parameters>
54751       </function>
54752       <method name="set_from_pixbuf"
54753               c:identifier="gtk_status_icon_set_from_pixbuf"
54754               version="2.10">
54755         <doc xml:whitespace="preserve">Makes @status_icon display @pixbuf.
54756 See gtk_status_icon_new_from_pixbuf() for details.</doc>
54757         <return-value transfer-ownership="none">
54758           <type name="none" c:type="void"/>
54759         </return-value>
54760         <parameters>
54761           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
54762             <doc xml:whitespace="preserve">a #GdkPixbuf or %NULL</doc>
54763             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
54764           </parameter>
54765         </parameters>
54766       </method>
54767       <method name="set_from_file"
54768               c:identifier="gtk_status_icon_set_from_file"
54769               version="2.10 ">
54770         <doc xml:whitespace="preserve">Makes @status_icon display the file @filename.
54771 See gtk_status_icon_new_from_file() for details.</doc>
54772         <return-value transfer-ownership="none">
54773           <type name="none" c:type="void"/>
54774         </return-value>
54775         <parameters>
54776           <parameter name="filename" transfer-ownership="none">
54777             <doc xml:whitespace="preserve">a filename</doc>
54778             <type name="utf8" c:type="gchar*"/>
54779           </parameter>
54780         </parameters>
54781       </method>
54782       <method name="set_from_stock"
54783               c:identifier="gtk_status_icon_set_from_stock"
54784               version="2.10 ">
54785         <doc xml:whitespace="preserve">Makes @status_icon display the stock icon with the id @stock_id.
54786 See gtk_status_icon_new_from_stock() for details.</doc>
54787         <return-value transfer-ownership="none">
54788           <type name="none" c:type="void"/>
54789         </return-value>
54790         <parameters>
54791           <parameter name="stock_id" transfer-ownership="none">
54792             <doc xml:whitespace="preserve">a stock icon id</doc>
54793             <type name="utf8" c:type="gchar*"/>
54794           </parameter>
54795         </parameters>
54796       </method>
54797       <method name="set_from_icon_name"
54798               c:identifier="gtk_status_icon_set_from_icon_name"
54799               version="2.10 ">
54800         <doc xml:whitespace="preserve">Makes @status_icon display the icon named @icon_name from the 
54801 current icon theme.
54802 See gtk_status_icon_new_from_icon_name() for details.</doc>
54803         <return-value transfer-ownership="none">
54804           <type name="none" c:type="void"/>
54805         </return-value>
54806         <parameters>
54807           <parameter name="icon_name" transfer-ownership="none">
54808             <doc xml:whitespace="preserve">an icon name</doc>
54809             <type name="utf8" c:type="gchar*"/>
54810           </parameter>
54811         </parameters>
54812       </method>
54813       <method name="set_from_gicon"
54814               c:identifier="gtk_status_icon_set_from_gicon"
54815               version="2.14">
54816         <doc xml:whitespace="preserve">Makes @status_icon display the #GIcon.
54817 See gtk_status_icon_new_from_gicon() for details.</doc>
54818         <return-value transfer-ownership="none">
54819           <type name="none" c:type="void"/>
54820         </return-value>
54821         <parameters>
54822           <parameter name="icon" transfer-ownership="none">
54823             <doc xml:whitespace="preserve">a GIcon</doc>
54824             <type name="Gio.Icon" c:type="GIcon*"/>
54825           </parameter>
54826         </parameters>
54827       </method>
54828       <method name="get_storage_type"
54829               c:identifier="gtk_status_icon_get_storage_type"
54830               version="2.10">
54831         <doc xml:whitespace="preserve">Gets the type of representation being used by the #GtkStatusIcon
54832 to store image data. If the #GtkStatusIcon has no image data,
54833 the return value will be %GTK_IMAGE_EMPTY.</doc>
54834         <return-value transfer-ownership="full">
54835           <doc xml:whitespace="preserve">the image representation being used</doc>
54836           <type name="ImageType" c:type="GtkImageType"/>
54837         </return-value>
54838       </method>
54839       <method name="get_pixbuf"
54840               c:identifier="gtk_status_icon_get_pixbuf"
54841               version="2.10">
54842         <doc xml:whitespace="preserve">Gets the #GdkPixbuf being displayed by the #GtkStatusIcon.
54843 The storage type of the status icon must be %GTK_IMAGE_EMPTY or
54844 %GTK_IMAGE_PIXBUF (see gtk_status_icon_get_storage_type()).
54845 The caller of this function does not own a reference to the
54846 returned pixbuf.</doc>
54847         <return-value transfer-ownership="full">
54848           <doc xml:whitespace="preserve">the displayed pixbuf, or %NULL if the image is empty.</doc>
54849           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
54850         </return-value>
54851       </method>
54852       <method name="get_stock"
54853               c:identifier="gtk_status_icon_get_stock"
54854               version="2.10">
54855         <doc xml:whitespace="preserve">Gets the id of the stock icon being displayed by the #GtkStatusIcon.
54856 The storage type of the status icon must be %GTK_IMAGE_EMPTY or
54857 %GTK_IMAGE_STOCK (see gtk_status_icon_get_storage_type()).
54858 The returned string is owned by the #GtkStatusIcon and should not
54859 be freed or modified.
54860 or %NULL if the image is empty.</doc>
54861         <return-value transfer-ownership="none">
54862           <doc xml:whitespace="preserve">stock id of the displayed stock icon,</doc>
54863           <type name="utf8" c:type="gchar*"/>
54864         </return-value>
54865       </method>
54866       <method name="get_icon_name"
54867               c:identifier="gtk_status_icon_get_icon_name"
54868               version="2.10">
54869         <doc xml:whitespace="preserve">Gets the name of the icon being displayed by the #GtkStatusIcon.
54870 The storage type of the status icon must be %GTK_IMAGE_EMPTY or
54871 %GTK_IMAGE_ICON_NAME (see gtk_status_icon_get_storage_type()).
54872 The returned string is owned by the #GtkStatusIcon and should not
54873 be freed or modified.</doc>
54874         <return-value transfer-ownership="none">
54875           <doc xml:whitespace="preserve">name of the displayed icon, or %NULL if the image is empty.</doc>
54876           <type name="utf8" c:type="gchar*"/>
54877         </return-value>
54878       </method>
54879       <method name="get_gicon"
54880               c:identifier="gtk_status_icon_get_gicon"
54881               version="2.14">
54882         <doc xml:whitespace="preserve">Retrieves the #GIcon being displayed by the #GtkStatusIcon.
54883 The storage type of the status icon must be %GTK_IMAGE_EMPTY or
54884 %GTK_IMAGE_GICON (see gtk_status_icon_get_storage_type()).
54885 The caller of this function does not own a reference to the
54886 returned #GIcon.
54887 If this function fails, @icon is left unchanged;</doc>
54888         <return-value transfer-ownership="full">
54889           <doc xml:whitespace="preserve">the displayed icon, or %NULL if the image is empty</doc>
54890           <type name="Gio.Icon" c:type="GIcon*"/>
54891         </return-value>
54892       </method>
54893       <method name="get_size"
54894               c:identifier="gtk_status_icon_get_size"
54895               version="2.10">
54896         <doc xml:whitespace="preserve">Gets the size in pixels that is available for the image. 
54897 Stock icons and named icons adapt their size automatically
54898 if the size of the notification area changes. For other
54899 storage types, the size-changed signal can be used to
54900 react to size changes.
54901 Note that the returned size is only meaningful while the 
54902 status icon is embedded (see gtk_status_icon_is_embedded()).</doc>
54903         <return-value transfer-ownership="none">
54904           <doc xml:whitespace="preserve">the size that is available for the image</doc>
54905           <type name="int" c:type="gint"/>
54906         </return-value>
54907       </method>
54908       <method name="set_screen"
54909               c:identifier="gtk_status_icon_set_screen"
54910               version="2.12">
54911         <doc xml:whitespace="preserve">Sets the #GdkScreen where @status_icon is displayed; if
54912 the icon is already mapped, it will be unmapped, and
54913 then remapped on the new screen.</doc>
54914         <return-value transfer-ownership="none">
54915           <type name="none" c:type="void"/>
54916         </return-value>
54917         <parameters>
54918           <parameter name="screen" transfer-ownership="none">
54919             <doc xml:whitespace="preserve">a #GdkScreen</doc>
54920             <type name="Gdk.Screen" c:type="GdkScreen*"/>
54921           </parameter>
54922         </parameters>
54923       </method>
54924       <method name="get_screen" c:identifier="gtk_status_icon_get_screen">
54925         <return-value transfer-ownership="full">
54926           <type name="Gdk.Screen" c:type="GdkScreen*"/>
54927         </return-value>
54928       </method>
54929       <method name="set_tooltip"
54930               c:identifier="gtk_status_icon_set_tooltip"
54931               version="2.10"
54932               deprecated="Use gtk_status_icon_set_tooltip_text() instead."
54933               deprecated-version="2.16">
54934         <doc xml:whitespace="preserve">Sets the tooltip of the status icon.</doc>
54935         <return-value transfer-ownership="none">
54936           <type name="none" c:type="void"/>
54937         </return-value>
54938         <parameters>
54939           <parameter name="tooltip_text"
54940                      transfer-ownership="none"
54941                      allow-none="1">
54942             <doc xml:whitespace="preserve">the tooltip text, or %NULL</doc>
54943             <type name="utf8" c:type="gchar*"/>
54944           </parameter>
54945         </parameters>
54946       </method>
54947       <method name="set_has_tooltip"
54948               c:identifier="gtk_status_icon_set_has_tooltip"
54949               version="2.16">
54950         <doc xml:whitespace="preserve">Sets the has-tooltip property on @status_icon to @has_tooltip.
54951 See #GtkStatusIcon:has-tooltip for more information.</doc>
54952         <return-value transfer-ownership="none">
54953           <type name="none" c:type="void"/>
54954         </return-value>
54955         <parameters>
54956           <parameter name="has_tooltip" transfer-ownership="none">
54957             <doc xml:whitespace="preserve">whether or not @status_icon has a tooltip</doc>
54958             <type name="boolean" c:type="gboolean"/>
54959           </parameter>
54960         </parameters>
54961       </method>
54962       <method name="set_tooltip_text"
54963               c:identifier="gtk_status_icon_set_tooltip_text"
54964               version="2.16">
54965         <doc xml:whitespace="preserve">Sets @text as the contents of the tooltip.
54966 This function will take care of setting #GtkStatusIcon:has-tooltip to
54967 %TRUE and of the default handler for the #GtkStatusIcon::query-tooltip
54968 signal.
54969 See also the #GtkStatusIcon:tooltip-text property and
54970 gtk_tooltip_set_text().</doc>
54971         <return-value transfer-ownership="none">
54972           <type name="none" c:type="void"/>
54973         </return-value>
54974         <parameters>
54975           <parameter name="text" transfer-ownership="none">
54976             <doc xml:whitespace="preserve">the contents of the tooltip for @status_icon</doc>
54977             <type name="utf8" c:type="gchar*"/>
54978           </parameter>
54979         </parameters>
54980       </method>
54981       <method name="set_tooltip_markup"
54982               c:identifier="gtk_status_icon_set_tooltip_markup"
54983               version="2.16">
54984         <doc xml:whitespace="preserve">Sets @markup as the contents of the tooltip, which is marked up with
54985 the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
54986 This function will take care of setting #GtkStatusIcon:has-tooltip to %TRUE
54987 and of the default handler for the #GtkStatusIcon::query-tooltip signal.
54988 See also the #GtkStatusIcon:tooltip-markup property and
54989 gtk_tooltip_set_markup().</doc>
54990         <return-value transfer-ownership="none">
54991           <type name="none" c:type="void"/>
54992         </return-value>
54993         <parameters>
54994           <parameter name="markup" transfer-ownership="none" allow-none="1">
54995             <doc xml:whitespace="preserve">the contents of the tooltip for @status_icon, or %NULL</doc>
54996             <type name="utf8" c:type="gchar*"/>
54997           </parameter>
54998         </parameters>
54999       </method>
55000       <method name="set_title"
55001               c:identifier="gtk_status_icon_set_title"
55002               version="2.18">
55003         <doc xml:whitespace="preserve">Sets the title of this tray icon.
55004 This should be a short, human-readable, localized string 
55005 describing the tray icon. It may be used by tools like screen
55006 readers to render the tray icon.</doc>
55007         <return-value transfer-ownership="none">
55008           <type name="none" c:type="void"/>
55009         </return-value>
55010         <parameters>
55011           <parameter name="title" transfer-ownership="none">
55012             <doc xml:whitespace="preserve">the title</doc>
55013             <type name="utf8" c:type="gchar*"/>
55014           </parameter>
55015         </parameters>
55016       </method>
55017       <method name="get_title"
55018               c:identifier="gtk_status_icon_get_title"
55019               version="2.18">
55020         <doc xml:whitespace="preserve">Gets the title of this tray icon. See gtk_status_icon_set_title().</doc>
55021         <return-value transfer-ownership="none">
55022           <doc xml:whitespace="preserve">the title of the status icon</doc>
55023           <type name="utf8" c:type="gchar*"/>
55024         </return-value>
55025       </method>
55026       <method name="set_name"
55027               c:identifier="gtk_status_icon_set_name"
55028               version="2.20">
55029         <doc xml:whitespace="preserve">Sets the name of this tray icon.
55030 This should be a string identifying this icon. It is may be
55031 used for sorting the icons in the tray and will not be shown to
55032 the user.</doc>
55033         <return-value transfer-ownership="none">
55034           <type name="none" c:type="void"/>
55035         </return-value>
55036         <parameters>
55037           <parameter name="name" transfer-ownership="none">
55038             <doc xml:whitespace="preserve">the name</doc>
55039             <type name="utf8" c:type="gchar*"/>
55040           </parameter>
55041         </parameters>
55042       </method>
55043       <method name="set_visible"
55044               c:identifier="gtk_status_icon_set_visible"
55045               version="2.10">
55046         <doc xml:whitespace="preserve">Shows or hides a status icon.</doc>
55047         <return-value transfer-ownership="none">
55048           <type name="none" c:type="void"/>
55049         </return-value>
55050         <parameters>
55051           <parameter name="visible" transfer-ownership="none">
55052             <doc xml:whitespace="preserve">%TRUE to show the status icon, %FALSE to hide it</doc>
55053             <type name="boolean" c:type="gboolean"/>
55054           </parameter>
55055         </parameters>
55056       </method>
55057       <method name="get_visible"
55058               c:identifier="gtk_status_icon_get_visible"
55059               version="2.10">
55060         <doc xml:whitespace="preserve">Returns whether the status icon is visible or not. 
55061 Note that being visible does not guarantee that 
55062 the user can actually see the icon, see also 
55063 gtk_status_icon_is_embedded().</doc>
55064         <return-value transfer-ownership="none">
55065           <doc xml:whitespace="preserve">%TRUE if the status icon is visible</doc>
55066           <type name="boolean" c:type="gboolean"/>
55067         </return-value>
55068       </method>
55069       <method name="set_blinking"
55070               c:identifier="gtk_status_icon_set_blinking"
55071               version="2.10">
55072         <doc xml:whitespace="preserve">Makes the status icon start or stop blinking. 
55073 Note that blinking user interface elements may be problematic
55074 for some users, and thus may be turned off, in which case
55075 this setting has no effect.</doc>
55076         <return-value transfer-ownership="none">
55077           <type name="none" c:type="void"/>
55078         </return-value>
55079         <parameters>
55080           <parameter name="blinking" transfer-ownership="none">
55081             <doc xml:whitespace="preserve">%TRUE to turn blinking on, %FALSE to turn it off</doc>
55082             <type name="boolean" c:type="gboolean"/>
55083           </parameter>
55084         </parameters>
55085       </method>
55086       <method name="get_blinking"
55087               c:identifier="gtk_status_icon_get_blinking"
55088               version="2.10">
55089         <doc xml:whitespace="preserve">Returns whether the icon is blinking, see 
55090 gtk_status_icon_set_blinking().</doc>
55091         <return-value transfer-ownership="none">
55092           <doc xml:whitespace="preserve">%TRUE if the icon is blinking</doc>
55093           <type name="boolean" c:type="gboolean"/>
55094         </return-value>
55095       </method>
55096       <method name="is_embedded"
55097               c:identifier="gtk_status_icon_is_embedded"
55098               version="2.10">
55099         <doc xml:whitespace="preserve">Returns whether the status icon is embedded in a notification
55100 area. 
55101 a notification area.</doc>
55102         <return-value transfer-ownership="none">
55103           <doc xml:whitespace="preserve">%TRUE if the status icon is embedded in</doc>
55104           <type name="boolean" c:type="gboolean"/>
55105         </return-value>
55106       </method>
55107       <method name="get_geometry"
55108               c:identifier="gtk_status_icon_get_geometry"
55109               version="2.10">
55110         <doc xml:whitespace="preserve">Obtains information about the location of the status icon
55111 on screen. This information can be used to e.g. position 
55112 popups like notification bubbles. 
55113 See gtk_status_icon_position_menu() for a more convenient 
55114 alternative for positioning menus.
55115 Note that some platforms do not allow GTK+ to provide 
55116 this information, and even on platforms that do allow it,
55117 the information is not reliable unless the status icon
55118 is embedded in a notification area, see
55119 gtk_status_icon_is_embedded().
55120 been filled in</doc>
55121         <return-value transfer-ownership="none">
55122           <doc xml:whitespace="preserve">%TRUE if the location information has</doc>
55123           <type name="boolean" c:type="gboolean"/>
55124         </return-value>
55125         <parameters>
55126           <parameter name="screen"
55127                      direction="out"
55128                      caller-allocates="0"
55129                      transfer-ownership="none"
55130                      allow-none="1">
55131             <doc xml:whitespace="preserve">return location for the screen, or %NULL if the information is not needed</doc>
55132             <type name="Gdk.Screen" c:type="GdkScreen**"/>
55133           </parameter>
55134           <parameter name="area"
55135                      direction="out"
55136                      caller-allocates="1"
55137                      transfer-ownership="none"
55138                      allow-none="1">
55139             <doc xml:whitespace="preserve">return location for the area occupied by the status icon, or %NULL</doc>
55140             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
55141           </parameter>
55142           <parameter name="orientation"
55143                      direction="out"
55144                      caller-allocates="1"
55145                      transfer-ownership="none"
55146                      allow-none="1">
55147             <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>
55148             <type name="Orientation" c:type="GtkOrientation*"/>
55149           </parameter>
55150         </parameters>
55151       </method>
55152       <method name="get_has_tooltip"
55153               c:identifier="gtk_status_icon_get_has_tooltip"
55154               version="2.16">
55155         <doc xml:whitespace="preserve">Returns the current value of the has-tooltip property.
55156 See #GtkStatusIcon:has-tooltip for more information.</doc>
55157         <return-value transfer-ownership="none">
55158           <doc xml:whitespace="preserve">current value of has-tooltip on @status_icon.</doc>
55159           <type name="boolean" c:type="gboolean"/>
55160         </return-value>
55161       </method>
55162       <method name="get_tooltip_text"
55163               c:identifier="gtk_status_icon_get_tooltip_text"
55164               version="2.16">
55165         <doc xml:whitespace="preserve">Gets the contents of the tooltip for @status_icon.
55166 returned string with g_free() when done.</doc>
55167         <return-value transfer-ownership="full">
55168           <doc xml:whitespace="preserve">the tooltip text, or %NULL. You should free the</doc>
55169           <type name="utf8" c:type="gchar*"/>
55170         </return-value>
55171       </method>
55172       <method name="get_tooltip_markup"
55173               c:identifier="gtk_status_icon_get_tooltip_markup"
55174               version="2.16">
55175         <doc xml:whitespace="preserve">Gets the contents of the tooltip for @status_icon.
55176 returned string with g_free() when done.</doc>
55177         <return-value transfer-ownership="full">
55178           <doc xml:whitespace="preserve">the tooltip text, or %NULL. You should free the</doc>
55179           <type name="utf8" c:type="gchar*"/>
55180         </return-value>
55181       </method>
55182       <method name="get_x11_window_id"
55183               c:identifier="gtk_status_icon_get_x11_window_id"
55184               version="2.14">
55185         <doc xml:whitespace="preserve">This function is only useful on the X11/freedesktop.org platform.
55186 It returns a window ID for the widget in the underlying
55187 status icon implementation.  This is useful for the Galago 
55188 notification service, which can send a window ID in the protocol 
55189 in order for the server to position notification windows 
55190 pointing to a status icon reliably.
55191 This function is not intended for other use cases which are
55192 more likely to be met by one of the non-X11 specific methods, such
55193 as gtk_status_icon_position_menu().
55194 underlying X11 Window</doc>
55195         <return-value transfer-ownership="none">
55196           <doc xml:whitespace="preserve">An 32 bit unsigned integer identifier for the</doc>
55197           <type name="uint32" c:type="guint32"/>
55198         </return-value>
55199       </method>
55200       <property name="blinking" writable="1" transfer-ownership="none">
55201         <type name="boolean" c:type="gboolean"/>
55202       </property>
55203       <property name="embedded" version="2.12" transfer-ownership="none">
55204         <doc xml:whitespace="preserve">%TRUE if the statusicon is embedded in a notification area.</doc>
55205         <type name="boolean" c:type="gboolean"/>
55206       </property>
55207       <property name="file"
55208                 readable="0"
55209                 writable="1"
55210                 transfer-ownership="none">
55211         <type name="utf8" c:type="gchararray"/>
55212       </property>
55213       <property name="gicon"
55214                 version="2.14"
55215                 writable="1"
55216                 transfer-ownership="none">
55217         <doc xml:whitespace="preserve">The #GIcon displayed in the #GtkStatusIcon. For themed icons,
55218 the image will be updated automatically if the theme changes.</doc>
55219         <type name="Gio.Icon" c:type="GIcon"/>
55220       </property>
55221       <property name="has-tooltip"
55222                 version="2.16"
55223                 writable="1"
55224                 transfer-ownership="none">
55225         <doc xml:whitespace="preserve">Enables or disables the emission of #GtkStatusIcon::query-tooltip on
55226 tooltip, in this case the status icon will be queried using
55227 #GtkStatusIcon::query-tooltip to determine whether it will provide a
55228 tooltip or not.
55229 Note that setting this property to %TRUE for the first time will change
55230 the event masks of the windows of this status icon to include leave-notify
55231 and motion-notify events. This will not be undone when the property is set
55232 to %FALSE again.
55233 Whether this property is respected is platform dependent.
55234 For plain text tooltips, use #GtkStatusIcon:tooltip-text in preference.</doc>
55235         <type name="boolean" c:type="gboolean"/>
55236       </property>
55237       <property name="icon-name" writable="1" transfer-ownership="none">
55238         <type name="utf8" c:type="gchararray"/>
55239       </property>
55240       <property name="orientation" version="2.12" transfer-ownership="none">
55241         <doc xml:whitespace="preserve">The orientation of the tray in which the statusicon 
55242 is embedded.</doc>
55243         <type name="Orientation" c:type="GtkOrientation"/>
55244       </property>
55245       <property name="pixbuf" writable="1" transfer-ownership="none">
55246         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf"/>
55247       </property>
55248       <property name="screen" writable="1" transfer-ownership="none">
55249         <type name="Gdk.Screen" c:type="GdkScreen"/>
55250       </property>
55251       <property name="size" transfer-ownership="none">
55252         <type name="int" c:type="gint"/>
55253       </property>
55254       <property name="stock" writable="1" transfer-ownership="none">
55255         <type name="utf8" c:type="gchararray"/>
55256       </property>
55257       <property name="storage-type" transfer-ownership="none">
55258         <type name="ImageType" c:type="GtkImageType"/>
55259       </property>
55260       <property name="title"
55261                 version="2.18"
55262                 writable="1"
55263                 transfer-ownership="none">
55264         <doc xml:whitespace="preserve">The title of this tray icon. This should be a short, human-readable,
55265 localized string describing the tray icon. It may be used by tools
55266 like screen readers to render the tray icon.</doc>
55267         <type name="utf8" c:type="gchararray"/>
55268       </property>
55269       <property name="tooltip-markup"
55270                 version="2.16"
55271                 writable="1"
55272                 transfer-ownership="none">
55273         <doc xml:whitespace="preserve">Sets the text of tooltip to be the given string, which is marked up
55274 with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup 
55275 language&lt;/link&gt;. Also see gtk_tooltip_set_markup().
55276 This is a convenience property which will take care of getting the
55277 tooltip shown if the given string is not %NULL.
55278 #GtkStatusIcon:has-tooltip will automatically be set to %TRUE and
55279 the default handler for the #GtkStatusIcon::query-tooltip signal
55280 will take care of displaying the tooltip.
55281 On some platforms, embedded markup will be ignored.</doc>
55282         <type name="utf8" c:type="gchararray"/>
55283       </property>
55284       <property name="tooltip-text"
55285                 version="2.16"
55286                 writable="1"
55287                 transfer-ownership="none">
55288         <doc xml:whitespace="preserve">Sets the text of tooltip to be the given string.
55289 Also see gtk_tooltip_set_text().
55290 This is a convenience property which will take care of getting the
55291 tooltip shown if the given string is not %NULL.
55292 #GtkStatusIcon:has-tooltip will automatically be set to %TRUE and
55293 the default handler for the #GtkStatusIcon::query-tooltip signal
55294 will take care of displaying the tooltip.
55295 Note that some platforms have limitations on the length of tooltips
55296 that they allow on status icons, e.g. Windows only shows the first
55297 64 characters.</doc>
55298         <type name="utf8" c:type="gchararray"/>
55299       </property>
55300       <property name="visible" writable="1" transfer-ownership="none">
55301         <type name="boolean" c:type="gboolean"/>
55302       </property>
55303       <field name="parent_instance">
55304         <type name="GObject.Object" c:type="GObject"/>
55305       </field>
55306       <field name="priv">
55307         <type name="StatusIconPrivate" c:type="GtkStatusIconPrivate*"/>
55308       </field>
55309       <glib:signal name="activate" version="2.10">
55310         <doc xml:whitespace="preserve">Gets emitted when the user activates the status icon. 
55311 If and how status icons can activated is platform-dependent.
55312 Unlike most G_SIGNAL_ACTION signals, this signal is meant to 
55313 be used by applications and should be wrapped by language bindings.</doc>
55314         <return-value transfer-ownership="full">
55315           <type name="none" c:type="void"/>
55316         </return-value>
55317       </glib:signal>
55318       <glib:signal name="button-press-event" version="2.14">
55319         <doc xml:whitespace="preserve">The ::button-press-event signal will be emitted when a button
55320 (typically from a mouse) is pressed.
55321 Whether this event is emitted is platform-dependent.  Use the ::activate
55322 and ::popup-menu signals in preference.
55323 for the event. %FALSE to propagate the event further.</doc>
55324         <return-value transfer-ownership="full">
55325           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked</doc>
55326           <type name="boolean" c:type="gboolean"/>
55327         </return-value>
55328         <parameters>
55329           <parameter name="event" transfer-ownership="none">
55330             <doc xml:whitespace="preserve">the #GdkEventButton which triggered this signal</doc>
55331             <type name="Gdk.Event" c:type="GdkEvent"/>
55332           </parameter>
55333         </parameters>
55334       </glib:signal>
55335       <glib:signal name="button-release-event" version="2.14">
55336         <doc xml:whitespace="preserve">The ::button-release-event signal will be emitted when a button
55337 (typically from a mouse) is released.
55338 Whether this event is emitted is platform-dependent.  Use the ::activate
55339 and ::popup-menu signals in preference.
55340 for the event. %FALSE to propagate the event further.</doc>
55341         <return-value transfer-ownership="full">
55342           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked</doc>
55343           <type name="boolean" c:type="gboolean"/>
55344         </return-value>
55345         <parameters>
55346           <parameter name="event" transfer-ownership="none">
55347             <doc xml:whitespace="preserve">the #GdkEventButton which triggered this signal</doc>
55348             <type name="Gdk.Event" c:type="GdkEvent"/>
55349           </parameter>
55350         </parameters>
55351       </glib:signal>
55352       <glib:signal name="popup-menu" version="2.10">
55353         <doc xml:whitespace="preserve">Gets emitted when the user brings up the context menu
55354 of the status icon. Whether status icons can have context 
55355 menus and how these are activated is platform-dependent.
55356 The @button and @activate_time parameters should be 
55357 passed as the last to arguments to gtk_menu_popup().
55358 Unlike most G_SIGNAL_ACTION signals, this signal is meant to 
55359 be used by applications and should be wrapped by language bindings.</doc>
55360         <return-value transfer-ownership="full">
55361           <type name="none" c:type="void"/>
55362         </return-value>
55363         <parameters>
55364           <parameter name="button" transfer-ownership="none">
55365             <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>
55366             <type name="uint" c:type="guint"/>
55367           </parameter>
55368           <parameter name="activate_time" transfer-ownership="none">
55369             <doc xml:whitespace="preserve">the timestamp of the event that triggered the signal emission</doc>
55370             <type name="uint" c:type="guint"/>
55371           </parameter>
55372         </parameters>
55373       </glib:signal>
55374       <glib:signal name="query-tooltip" version="2.16">
55375         <doc xml:whitespace="preserve">Emitted when the #GtkSettings:gtk-tooltip-timeout has expired with the
55376 cursor hovering above @status_icon; or emitted when @status_icon got
55377 focus in keyboard mode.
55378 Using the given coordinates, the signal handler should determine
55379 whether a tooltip should be shown for @status_icon. If this is
55380 the case %TRUE should be returned, %FALSE otherwise. Note that if
55381 should not be used.
55382 The signal handler is free to manipulate @tooltip with the therefore
55383 destined function calls.
55384 Whether this signal is emitted is platform-dependent.
55385 For plain text tooltips, use #GtkStatusIcon:tooltip-text in preference.</doc>
55386         <return-value transfer-ownership="full">
55387           <doc xml:whitespace="preserve">%TRUE if @tooltip should be shown right now, %FALSE otherwise.</doc>
55388           <type name="boolean" c:type="gboolean"/>
55389         </return-value>
55390         <parameters>
55391           <parameter name="x" transfer-ownership="none">
55392             <doc xml:whitespace="preserve">the x coordinate of the cursor position where the request has been emitted, relative to @status_icon</doc>
55393             <type name="int" c:type="gint"/>
55394           </parameter>
55395           <parameter name="y" transfer-ownership="none">
55396             <doc xml:whitespace="preserve">the y coordinate of the cursor position where the request has been emitted, relative to @status_icon</doc>
55397             <type name="int" c:type="gint"/>
55398           </parameter>
55399           <parameter name="keyboard_mode" transfer-ownership="none">
55400             <doc xml:whitespace="preserve">%TRUE if the tooltip was trigged using the keyboard</doc>
55401             <type name="boolean" c:type="gboolean"/>
55402           </parameter>
55403           <parameter name="tooltip" transfer-ownership="none">
55404             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
55405             <type name="Tooltip" c:type="GtkTooltip"/>
55406           </parameter>
55407         </parameters>
55408       </glib:signal>
55409       <glib:signal name="scroll-event">
55410         <doc xml:whitespace="preserve">The ::scroll-event signal is emitted when a button in the 4 to 7
55411 range is pressed. Wheel mice are usually configured to generate 
55412 button press events for buttons 4 and 5 when the wheel is turned.
55413 Whether this event is emitted is platform-dependent.
55414 %FALSE to propagate the event further.</doc>
55415         <return-value transfer-ownership="full">
55416           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
55417           <type name="boolean" c:type="gboolean"/>
55418         </return-value>
55419         <parameters>
55420           <parameter name="event" transfer-ownership="none">
55421             <doc xml:whitespace="preserve">the #GdkEventScroll which triggered this signal</doc>
55422             <type name="Gdk.Event" c:type="GdkEvent"/>
55423           </parameter>
55424         </parameters>
55425       </glib:signal>
55426       <glib:signal name="size-changed" version="2.10">
55427         <doc xml:whitespace="preserve">Gets emitted when the size available for the image
55428 changes, e.g. because the notification area got resized.
55429 size. Otherwise, GTK+ will scale the icon as necessary.</doc>
55430         <return-value transfer-ownership="full">
55431           <doc xml:whitespace="preserve">%TRUE if the icon was updated for the new</doc>
55432           <type name="boolean" c:type="gboolean"/>
55433         </return-value>
55434         <parameters>
55435           <parameter name="size" transfer-ownership="none">
55436             <doc xml:whitespace="preserve">the new size</doc>
55437             <type name="int" c:type="gint"/>
55438           </parameter>
55439         </parameters>
55440       </glib:signal>
55441     </class>
55442     <record name="StatusIconClass"
55443             c:type="GtkStatusIconClass"
55444             glib:is-gtype-struct-for="StatusIcon">
55445       <field name="parent_class">
55446         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
55447       </field>
55448       <field name="activate">
55449         <callback name="activate" c:type="activate">
55450           <return-value transfer-ownership="none">
55451             <type name="none" c:type="void"/>
55452           </return-value>
55453           <parameters>
55454             <parameter name="status_icon" transfer-ownership="none">
55455               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
55456             </parameter>
55457           </parameters>
55458         </callback>
55459       </field>
55460       <field name="popup_menu">
55461         <callback name="popup_menu" c:type="popup_menu">
55462           <return-value transfer-ownership="none">
55463             <type name="none" c:type="void"/>
55464           </return-value>
55465           <parameters>
55466             <parameter name="status_icon" transfer-ownership="none">
55467               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
55468             </parameter>
55469             <parameter name="button" transfer-ownership="none">
55470               <type name="uint" c:type="guint"/>
55471             </parameter>
55472             <parameter name="activate_time" transfer-ownership="none">
55473               <type name="uint32" c:type="guint32"/>
55474             </parameter>
55475           </parameters>
55476         </callback>
55477       </field>
55478       <field name="size_changed">
55479         <callback name="size_changed" c:type="size_changed">
55480           <return-value transfer-ownership="none">
55481             <type name="boolean" c:type="gboolean"/>
55482           </return-value>
55483           <parameters>
55484             <parameter name="status_icon" transfer-ownership="none">
55485               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
55486             </parameter>
55487             <parameter name="size" transfer-ownership="none">
55488               <type name="int" c:type="gint"/>
55489             </parameter>
55490           </parameters>
55491         </callback>
55492       </field>
55493       <field name="button_press_event">
55494         <callback name="button_press_event" c:type="button_press_event">
55495           <return-value transfer-ownership="none">
55496             <type name="boolean" c:type="gboolean"/>
55497           </return-value>
55498           <parameters>
55499             <parameter name="status_icon" transfer-ownership="none">
55500               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
55501             </parameter>
55502             <parameter name="event" transfer-ownership="none">
55503               <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
55504             </parameter>
55505           </parameters>
55506         </callback>
55507       </field>
55508       <field name="button_release_event">
55509         <callback name="button_release_event" c:type="button_release_event">
55510           <return-value transfer-ownership="none">
55511             <type name="boolean" c:type="gboolean"/>
55512           </return-value>
55513           <parameters>
55514             <parameter name="status_icon" transfer-ownership="none">
55515               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
55516             </parameter>
55517             <parameter name="event" transfer-ownership="none">
55518               <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
55519             </parameter>
55520           </parameters>
55521         </callback>
55522       </field>
55523       <field name="scroll_event">
55524         <callback name="scroll_event" c:type="scroll_event">
55525           <return-value transfer-ownership="none">
55526             <type name="boolean" c:type="gboolean"/>
55527           </return-value>
55528           <parameters>
55529             <parameter name="status_icon" transfer-ownership="none">
55530               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
55531             </parameter>
55532             <parameter name="event" transfer-ownership="none">
55533               <type name="Gdk.EventScroll" c:type="GdkEventScroll*"/>
55534             </parameter>
55535           </parameters>
55536         </callback>
55537       </field>
55538       <field name="query_tooltip">
55539         <callback name="query_tooltip" c:type="query_tooltip">
55540           <return-value transfer-ownership="none">
55541             <type name="boolean" c:type="gboolean"/>
55542           </return-value>
55543           <parameters>
55544             <parameter name="status_icon" transfer-ownership="none">
55545               <type name="StatusIcon" c:type="GtkStatusIcon*"/>
55546             </parameter>
55547             <parameter name="x" transfer-ownership="none">
55548               <type name="int" c:type="gint"/>
55549             </parameter>
55550             <parameter name="y" transfer-ownership="none">
55551               <type name="int" c:type="gint"/>
55552             </parameter>
55553             <parameter name="keyboard_mode" transfer-ownership="none">
55554               <type name="boolean" c:type="gboolean"/>
55555             </parameter>
55556             <parameter name="tooltip" transfer-ownership="none">
55557               <type name="Tooltip" c:type="GtkTooltip*"/>
55558             </parameter>
55559           </parameters>
55560         </callback>
55561       </field>
55562       <field name="__gtk_reserved1">
55563         <type name="any" c:type="void*"/>
55564       </field>
55565       <field name="__gtk_reserved2">
55566         <type name="any" c:type="void*"/>
55567       </field>
55568     </record>
55569     <record name="StatusIconPrivate" c:type="GtkStatusIconPrivate">
55570     </record>
55571     <class name="Statusbar"
55572            c:type="GtkStatusbar"
55573            parent="HBox"
55574            glib:type-name="GtkStatusbar"
55575            glib:get-type="gtk_statusbar_get_type"
55576            glib:type-struct="StatusbarClass">
55577       <implements name="Atk.ImplementorIface"/>
55578       <implements name="Buildable"/>
55579       <implements name="Orientable"/>
55580       <constructor name="new" c:identifier="gtk_statusbar_new">
55581         <doc xml:whitespace="preserve">Creates a new #GtkStatusbar ready for messages.</doc>
55582         <return-value transfer-ownership="full">
55583           <doc xml:whitespace="preserve">the new #GtkStatusbar</doc>
55584           <type name="Statusbar" c:type="GtkWidget*"/>
55585         </return-value>
55586       </constructor>
55587       <method name="get_context_id"
55588               c:identifier="gtk_statusbar_get_context_id">
55589         <doc xml:whitespace="preserve">Returns a new context identifier, given a description 
55590 of the actual context. Note that the description is 
55591 &lt;emphasis&gt;not&lt;/emphasis&gt; shown in the UI.</doc>
55592         <return-value transfer-ownership="none">
55593           <doc xml:whitespace="preserve">an integer id</doc>
55594           <type name="uint" c:type="guint"/>
55595         </return-value>
55596         <parameters>
55597           <parameter name="context_description" transfer-ownership="none">
55598             <doc xml:whitespace="preserve">textual description of what context the new message is being used in</doc>
55599             <type name="utf8" c:type="gchar*"/>
55600           </parameter>
55601         </parameters>
55602       </method>
55603       <method name="push" c:identifier="gtk_statusbar_push">
55604         <doc xml:whitespace="preserve">Pushes a new message onto a statusbar's stack.
55605 gtk_statusbar_remove().</doc>
55606         <return-value transfer-ownership="none">
55607           <doc xml:whitespace="preserve">a message id that can be used with</doc>
55608           <type name="uint" c:type="guint"/>
55609         </return-value>
55610         <parameters>
55611           <parameter name="context_id" transfer-ownership="none">
55612             <doc xml:whitespace="preserve">the message's context id, as returned by gtk_statusbar_get_context_id()</doc>
55613             <type name="uint" c:type="guint"/>
55614           </parameter>
55615           <parameter name="text" transfer-ownership="none">
55616             <doc xml:whitespace="preserve">the message to add to the statusbar</doc>
55617             <type name="utf8" c:type="gchar*"/>
55618           </parameter>
55619         </parameters>
55620       </method>
55621       <method name="pop" c:identifier="gtk_statusbar_pop">
55622         <doc xml:whitespace="preserve">Removes the first message in the #GtkStatusBar's stack
55623 with the given context id. 
55624 Note that this may not change the displayed message, if 
55625 the message at the top of the stack has a different 
55626 context id.</doc>
55627         <return-value transfer-ownership="none">
55628           <type name="none" c:type="void"/>
55629         </return-value>
55630         <parameters>
55631           <parameter name="context_id" transfer-ownership="none">
55632             <doc xml:whitespace="preserve">a context identifier</doc>
55633             <type name="uint" c:type="guint"/>
55634           </parameter>
55635         </parameters>
55636       </method>
55637       <method name="remove" c:identifier="gtk_statusbar_remove">
55638         <doc xml:whitespace="preserve">Forces the removal of a message from a statusbar's stack. 
55639 The exact @context_id and @message_id must be specified.</doc>
55640         <return-value transfer-ownership="none">
55641           <type name="none" c:type="void"/>
55642         </return-value>
55643         <parameters>
55644           <parameter name="context_id" transfer-ownership="none">
55645             <doc xml:whitespace="preserve">a context identifier</doc>
55646             <type name="uint" c:type="guint"/>
55647           </parameter>
55648           <parameter name="message_id" transfer-ownership="none">
55649             <doc xml:whitespace="preserve">a message identifier, as returned by gtk_statusbar_push()</doc>
55650             <type name="uint" c:type="guint"/>
55651           </parameter>
55652         </parameters>
55653       </method>
55654       <method name="set_has_resize_grip"
55655               c:identifier="gtk_statusbar_set_has_resize_grip">
55656         <doc xml:whitespace="preserve">Sets whether the statusbar has a resize grip. 
55657 %TRUE by default.</doc>
55658         <return-value transfer-ownership="none">
55659           <type name="none" c:type="void"/>
55660         </return-value>
55661         <parameters>
55662           <parameter name="setting" transfer-ownership="none">
55663             <doc xml:whitespace="preserve">%TRUE to have a resize grip</doc>
55664             <type name="boolean" c:type="gboolean"/>
55665           </parameter>
55666         </parameters>
55667       </method>
55668       <method name="get_has_resize_grip"
55669               c:identifier="gtk_statusbar_get_has_resize_grip">
55670         <doc xml:whitespace="preserve">Returns whether the statusbar has a resize grip.</doc>
55671         <return-value transfer-ownership="none">
55672           <doc xml:whitespace="preserve">%TRUE if the statusbar has a resize grip.</doc>
55673           <type name="boolean" c:type="gboolean"/>
55674         </return-value>
55675       </method>
55676       <method name="get_message_area"
55677               c:identifier="gtk_statusbar_get_message_area"
55678               version="2.20">
55679         <doc xml:whitespace="preserve">Retrieves the box containing the label widget.</doc>
55680         <return-value transfer-ownership="full">
55681           <doc xml:whitespace="preserve">a #GtkBox</doc>
55682           <type name="Widget" c:type="GtkWidget*"/>
55683         </return-value>
55684       </method>
55685       <property name="has-resize-grip"
55686                 version="2.4"
55687                 writable="1"
55688                 transfer-ownership="none">
55689         <doc xml:whitespace="preserve">Whether the statusbar has a grip for resizing the toplevel window.</doc>
55690         <type name="boolean" c:type="gboolean"/>
55691       </property>
55692       <field name="parent_widget">
55693         <type name="HBox" c:type="GtkHBox"/>
55694       </field>
55695       <field name="frame">
55696         <type name="Widget" c:type="GtkWidget*"/>
55697       </field>
55698       <field name="label">
55699         <type name="Widget" c:type="GtkWidget*"/>
55700       </field>
55701       <field name="messages">
55702         <type name="GLib.SList" c:type="GSList*">
55703           <type name="any" c:type="gpointer"/>
55704         </type>
55705       </field>
55706       <field name="keys">
55707         <type name="GLib.SList" c:type="GSList*">
55708           <type name="any" c:type="gpointer"/>
55709         </type>
55710       </field>
55711       <field name="seq_context_id">
55712         <type name="uint" c:type="guint"/>
55713       </field>
55714       <field name="seq_message_id">
55715         <type name="uint" c:type="guint"/>
55716       </field>
55717       <field name="grip_window">
55718         <type name="Gdk.Window" c:type="GdkWindow*"/>
55719       </field>
55720       <field name="has_resize_grip" bits="1">
55721         <type name="uint" c:type="guint"/>
55722       </field>
55723       <glib:signal name="text-popped">
55724         <doc xml:whitespace="preserve">Is emitted whenever a new message is popped off a statusbar's stack.</doc>
55725         <return-value transfer-ownership="full">
55726           <type name="none" c:type="void"/>
55727         </return-value>
55728         <parameters>
55729           <parameter name="context_id" transfer-ownership="none">
55730             <doc xml:whitespace="preserve">the context id of the relevant message/statusbar.</doc>
55731             <type name="uint" c:type="guint"/>
55732           </parameter>
55733           <parameter name="text" transfer-ownership="none">
55734             <doc xml:whitespace="preserve">the message that was just popped.</doc>
55735             <type name="utf8" c:type="gchararray"/>
55736           </parameter>
55737         </parameters>
55738       </glib:signal>
55739       <glib:signal name="text-pushed">
55740         <return-value transfer-ownership="full">
55741           <type name="none" c:type="void"/>
55742         </return-value>
55743         <parameters>
55744           <parameter name="object" transfer-ownership="none">
55745             <type name="uint" c:type="guint"/>
55746           </parameter>
55747           <parameter name="p0" transfer-ownership="none">
55748             <type name="utf8" c:type="gchararray"/>
55749           </parameter>
55750         </parameters>
55751       </glib:signal>
55752     </class>
55753     <record name="StatusbarClass"
55754             c:type="GtkStatusbarClass"
55755             glib:is-gtype-struct-for="Statusbar">
55756       <field name="parent_class">
55757         <type name="HBoxClass" c:type="GtkHBoxClass"/>
55758       </field>
55759       <field name="reserved">
55760         <type name="any" c:type="gpointer"/>
55761       </field>
55762       <field name="text_pushed">
55763         <callback name="text_pushed" c:type="text_pushed">
55764           <return-value transfer-ownership="none">
55765             <type name="none" c:type="void"/>
55766           </return-value>
55767           <parameters>
55768             <parameter name="statusbar" transfer-ownership="none">
55769               <type name="Statusbar" c:type="GtkStatusbar*"/>
55770             </parameter>
55771             <parameter name="context_id" transfer-ownership="none">
55772               <type name="uint" c:type="guint"/>
55773             </parameter>
55774             <parameter name="text" transfer-ownership="none">
55775               <type name="utf8" c:type="gchar*"/>
55776             </parameter>
55777           </parameters>
55778         </callback>
55779       </field>
55780       <field name="text_popped">
55781         <callback name="text_popped" c:type="text_popped">
55782           <return-value transfer-ownership="none">
55783             <type name="none" c:type="void"/>
55784           </return-value>
55785           <parameters>
55786             <parameter name="statusbar" transfer-ownership="none">
55787               <type name="Statusbar" c:type="GtkStatusbar*"/>
55788             </parameter>
55789             <parameter name="context_id" transfer-ownership="none">
55790               <type name="uint" c:type="guint"/>
55791             </parameter>
55792             <parameter name="text" transfer-ownership="none">
55793               <type name="utf8" c:type="gchar*"/>
55794             </parameter>
55795           </parameters>
55796         </callback>
55797       </field>
55798       <field name="gtk_reserved1">
55799         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
55800           <return-value transfer-ownership="none">
55801             <type name="none" c:type="void"/>
55802           </return-value>
55803         </callback>
55804       </field>
55805       <field name="gtk_reserved2">
55806         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
55807           <return-value transfer-ownership="none">
55808             <type name="none" c:type="void"/>
55809           </return-value>
55810         </callback>
55811       </field>
55812       <field name="gtk_reserved3">
55813         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
55814           <return-value transfer-ownership="none">
55815             <type name="none" c:type="void"/>
55816           </return-value>
55817         </callback>
55818       </field>
55819       <field name="gtk_reserved4">
55820         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
55821           <return-value transfer-ownership="none">
55822             <type name="none" c:type="void"/>
55823           </return-value>
55824         </callback>
55825       </field>
55826     </record>
55827     <record name="StockItem" c:type="GtkStockItem">
55828       <field name="stock_id" writable="1">
55829         <type name="utf8" c:type="gchar*"/>
55830       </field>
55831       <field name="label" writable="1">
55832         <type name="utf8" c:type="gchar*"/>
55833       </field>
55834       <field name="modifier" writable="1">
55835         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
55836       </field>
55837       <field name="keyval" writable="1">
55838         <type name="uint" c:type="guint"/>
55839       </field>
55840       <field name="translation_domain" writable="1">
55841         <type name="utf8" c:type="gchar*"/>
55842       </field>
55843       <method name="copy" c:identifier="gtk_stock_item_copy">
55844         <doc xml:whitespace="preserve">Copies a stock item, mostly useful for language bindings and not in applications.</doc>
55845         <return-value transfer-ownership="full">
55846           <doc xml:whitespace="preserve">a new #GtkStockItem</doc>
55847           <type name="StockItem" c:type="GtkStockItem*"/>
55848         </return-value>
55849       </method>
55850       <method name="free" c:identifier="gtk_stock_item_free">
55851         <doc xml:whitespace="preserve">Frees a stock item allocated on the heap, such as one returned by
55852 gtk_stock_item_copy(). Also frees the fields inside the stock item,
55853 if they are not %NULL.</doc>
55854         <return-value transfer-ownership="none">
55855           <type name="none" c:type="void"/>
55856         </return-value>
55857       </method>
55858     </record>
55859     <class name="Style"
55860            c:type="GtkStyle"
55861            parent="GObject.Object"
55862            glib:type-name="GtkStyle"
55863            glib:get-type="gtk_style_get_type"
55864            glib:type-struct="StyleClass">
55865       <constructor name="new" c:identifier="gtk_style_new">
55866         <doc xml:whitespace="preserve">Creates a new #GtkStyle.</doc>
55867         <return-value transfer-ownership="full">
55868           <doc xml:whitespace="preserve">a new #GtkStyle.</doc>
55869           <type name="Style" c:type="GtkStyle*"/>
55870         </return-value>
55871       </constructor>
55872       <virtual-method name="copy">
55873         <return-value transfer-ownership="none">
55874           <type name="none" c:type="void"/>
55875         </return-value>
55876         <parameters>
55877           <parameter name="src" transfer-ownership="none">
55878             <type name="Style" c:type="GtkStyle*"/>
55879           </parameter>
55880         </parameters>
55881       </virtual-method>
55882       <virtual-method name="clone">
55883         <return-value transfer-ownership="full">
55884           <type name="Style" c:type="GtkStyle*"/>
55885         </return-value>
55886       </virtual-method>
55887       <virtual-method name="init_from_rc">
55888         <return-value transfer-ownership="none">
55889           <type name="none" c:type="void"/>
55890         </return-value>
55891         <parameters>
55892           <parameter name="rc_style" transfer-ownership="none">
55893             <type name="RcStyle" c:type="GtkRcStyle*"/>
55894           </parameter>
55895         </parameters>
55896       </virtual-method>
55897       <virtual-method name="set_background" invoker="set_background">
55898         <doc xml:whitespace="preserve">Sets the background of @window to the background color or pixmap
55899 specified by @style for the given state.</doc>
55900         <return-value transfer-ownership="none">
55901           <type name="none" c:type="void"/>
55902         </return-value>
55903         <parameters>
55904           <parameter name="window" transfer-ownership="none">
55905             <doc xml:whitespace="preserve">a #GdkWindow</doc>
55906             <type name="Gdk.Window" c:type="GdkWindow*"/>
55907           </parameter>
55908           <parameter name="state_type" transfer-ownership="none">
55909             <doc xml:whitespace="preserve">a state</doc>
55910             <type name="StateType" c:type="GtkStateType"/>
55911           </parameter>
55912         </parameters>
55913       </virtual-method>
55914       <virtual-method name="render_icon" invoker="render_icon">
55915         <doc xml:whitespace="preserve">Renders the icon specified by @source at the given @size
55916 according to the given parameters and returns the result in a
55917 pixbuf.</doc>
55918         <return-value transfer-ownership="full">
55919           <doc xml:whitespace="preserve">a newly-created #GdkPixbuf containing the rendered icon</doc>
55920           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
55921         </return-value>
55922         <parameters>
55923           <parameter name="source" transfer-ownership="none">
55924             <doc xml:whitespace="preserve">the #GtkIconSource specifying the icon to render</doc>
55925             <type name="IconSource" c:type="GtkIconSource*"/>
55926           </parameter>
55927           <parameter name="direction" transfer-ownership="none">
55928             <doc xml:whitespace="preserve">a text direction</doc>
55929             <type name="TextDirection" c:type="GtkTextDirection"/>
55930           </parameter>
55931           <parameter name="state" transfer-ownership="none">
55932             <doc xml:whitespace="preserve">a state</doc>
55933             <type name="StateType" c:type="GtkStateType"/>
55934           </parameter>
55935           <parameter name="size" transfer-ownership="none">
55936             <doc xml:whitespace="preserve">(type int) 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>
55937             <type name="IconSize" c:type="GtkIconSize"/>
55938           </parameter>
55939           <parameter name="widget" transfer-ownership="none" allow-none="1">
55940             <doc xml:whitespace="preserve">the widget</doc>
55941             <type name="Widget" c:type="GtkWidget*"/>
55942           </parameter>
55943           <parameter name="detail" transfer-ownership="none" allow-none="1">
55944             <doc xml:whitespace="preserve">a style detail</doc>
55945             <type name="utf8" c:type="gchar*"/>
55946           </parameter>
55947         </parameters>
55948       </virtual-method>
55949       <virtual-method name="draw_hline">
55950         <return-value transfer-ownership="none">
55951           <type name="none" c:type="void"/>
55952         </return-value>
55953         <parameters>
55954           <parameter name="window" transfer-ownership="none">
55955             <type name="Gdk.Window" c:type="GdkWindow*"/>
55956           </parameter>
55957           <parameter name="state_type" transfer-ownership="none">
55958             <type name="StateType" c:type="GtkStateType"/>
55959           </parameter>
55960           <parameter name="area" transfer-ownership="none">
55961             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
55962           </parameter>
55963           <parameter name="widget" transfer-ownership="none">
55964             <type name="Widget" c:type="GtkWidget*"/>
55965           </parameter>
55966           <parameter name="detail" transfer-ownership="none">
55967             <type name="utf8" c:type="gchar*"/>
55968           </parameter>
55969           <parameter name="x1" transfer-ownership="none">
55970             <type name="int" c:type="gint"/>
55971           </parameter>
55972           <parameter name="x2" transfer-ownership="none">
55973             <type name="int" c:type="gint"/>
55974           </parameter>
55975           <parameter name="y" transfer-ownership="none">
55976             <type name="int" c:type="gint"/>
55977           </parameter>
55978         </parameters>
55979       </virtual-method>
55980       <virtual-method name="draw_vline">
55981         <return-value transfer-ownership="none">
55982           <type name="none" c:type="void"/>
55983         </return-value>
55984         <parameters>
55985           <parameter name="window" transfer-ownership="none">
55986             <type name="Gdk.Window" c:type="GdkWindow*"/>
55987           </parameter>
55988           <parameter name="state_type" transfer-ownership="none">
55989             <type name="StateType" c:type="GtkStateType"/>
55990           </parameter>
55991           <parameter name="area" transfer-ownership="none">
55992             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
55993           </parameter>
55994           <parameter name="widget" transfer-ownership="none">
55995             <type name="Widget" c:type="GtkWidget*"/>
55996           </parameter>
55997           <parameter name="detail" transfer-ownership="none">
55998             <type name="utf8" c:type="gchar*"/>
55999           </parameter>
56000           <parameter name="y1_" transfer-ownership="none">
56001             <type name="int" c:type="gint"/>
56002           </parameter>
56003           <parameter name="y2_" transfer-ownership="none">
56004             <type name="int" c:type="gint"/>
56005           </parameter>
56006           <parameter name="x" transfer-ownership="none">
56007             <type name="int" c:type="gint"/>
56008           </parameter>
56009         </parameters>
56010       </virtual-method>
56011       <virtual-method name="draw_shadow">
56012         <return-value transfer-ownership="none">
56013           <type name="none" c:type="void"/>
56014         </return-value>
56015         <parameters>
56016           <parameter name="window" transfer-ownership="none">
56017             <type name="Gdk.Window" c:type="GdkWindow*"/>
56018           </parameter>
56019           <parameter name="state_type" transfer-ownership="none">
56020             <type name="StateType" c:type="GtkStateType"/>
56021           </parameter>
56022           <parameter name="shadow_type" transfer-ownership="none">
56023             <type name="ShadowType" c:type="GtkShadowType"/>
56024           </parameter>
56025           <parameter name="area" transfer-ownership="none">
56026             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56027           </parameter>
56028           <parameter name="widget" transfer-ownership="none">
56029             <type name="Widget" c:type="GtkWidget*"/>
56030           </parameter>
56031           <parameter name="detail" transfer-ownership="none">
56032             <type name="utf8" c:type="gchar*"/>
56033           </parameter>
56034           <parameter name="x" transfer-ownership="none">
56035             <type name="int" c:type="gint"/>
56036           </parameter>
56037           <parameter name="y" transfer-ownership="none">
56038             <type name="int" c:type="gint"/>
56039           </parameter>
56040           <parameter name="width" transfer-ownership="none">
56041             <type name="int" c:type="gint"/>
56042           </parameter>
56043           <parameter name="height" transfer-ownership="none">
56044             <type name="int" c:type="gint"/>
56045           </parameter>
56046         </parameters>
56047       </virtual-method>
56048       <virtual-method name="draw_polygon">
56049         <return-value transfer-ownership="none">
56050           <type name="none" c:type="void"/>
56051         </return-value>
56052         <parameters>
56053           <parameter name="window" transfer-ownership="none">
56054             <type name="Gdk.Window" c:type="GdkWindow*"/>
56055           </parameter>
56056           <parameter name="state_type" transfer-ownership="none">
56057             <type name="StateType" c:type="GtkStateType"/>
56058           </parameter>
56059           <parameter name="shadow_type" transfer-ownership="none">
56060             <type name="ShadowType" c:type="GtkShadowType"/>
56061           </parameter>
56062           <parameter name="area" transfer-ownership="none">
56063             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56064           </parameter>
56065           <parameter name="widget" transfer-ownership="none">
56066             <type name="Widget" c:type="GtkWidget*"/>
56067           </parameter>
56068           <parameter name="detail" transfer-ownership="none">
56069             <type name="utf8" c:type="gchar*"/>
56070           </parameter>
56071           <parameter name="point" transfer-ownership="none">
56072             <type name="Gdk.Point" c:type="GdkPoint*"/>
56073           </parameter>
56074           <parameter name="npoints" transfer-ownership="none">
56075             <type name="int" c:type="gint"/>
56076           </parameter>
56077           <parameter name="fill" transfer-ownership="none">
56078             <type name="boolean" c:type="gboolean"/>
56079           </parameter>
56080         </parameters>
56081       </virtual-method>
56082       <virtual-method name="draw_arrow">
56083         <return-value transfer-ownership="none">
56084           <type name="none" c:type="void"/>
56085         </return-value>
56086         <parameters>
56087           <parameter name="window" transfer-ownership="none">
56088             <type name="Gdk.Window" c:type="GdkWindow*"/>
56089           </parameter>
56090           <parameter name="state_type" transfer-ownership="none">
56091             <type name="StateType" c:type="GtkStateType"/>
56092           </parameter>
56093           <parameter name="shadow_type" transfer-ownership="none">
56094             <type name="ShadowType" c:type="GtkShadowType"/>
56095           </parameter>
56096           <parameter name="area" transfer-ownership="none">
56097             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56098           </parameter>
56099           <parameter name="widget" transfer-ownership="none">
56100             <type name="Widget" c:type="GtkWidget*"/>
56101           </parameter>
56102           <parameter name="detail" transfer-ownership="none">
56103             <type name="utf8" c:type="gchar*"/>
56104           </parameter>
56105           <parameter name="arrow_type" transfer-ownership="none">
56106             <type name="ArrowType" c:type="GtkArrowType"/>
56107           </parameter>
56108           <parameter name="fill" transfer-ownership="none">
56109             <type name="boolean" c:type="gboolean"/>
56110           </parameter>
56111           <parameter name="x" transfer-ownership="none">
56112             <type name="int" c:type="gint"/>
56113           </parameter>
56114           <parameter name="y" transfer-ownership="none">
56115             <type name="int" c:type="gint"/>
56116           </parameter>
56117           <parameter name="width" transfer-ownership="none">
56118             <type name="int" c:type="gint"/>
56119           </parameter>
56120           <parameter name="height" transfer-ownership="none">
56121             <type name="int" c:type="gint"/>
56122           </parameter>
56123         </parameters>
56124       </virtual-method>
56125       <virtual-method name="draw_diamond">
56126         <return-value transfer-ownership="none">
56127           <type name="none" c:type="void"/>
56128         </return-value>
56129         <parameters>
56130           <parameter name="window" transfer-ownership="none">
56131             <type name="Gdk.Window" c:type="GdkWindow*"/>
56132           </parameter>
56133           <parameter name="state_type" transfer-ownership="none">
56134             <type name="StateType" c:type="GtkStateType"/>
56135           </parameter>
56136           <parameter name="shadow_type" transfer-ownership="none">
56137             <type name="ShadowType" c:type="GtkShadowType"/>
56138           </parameter>
56139           <parameter name="area" transfer-ownership="none">
56140             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56141           </parameter>
56142           <parameter name="widget" transfer-ownership="none">
56143             <type name="Widget" c:type="GtkWidget*"/>
56144           </parameter>
56145           <parameter name="detail" transfer-ownership="none">
56146             <type name="utf8" c:type="gchar*"/>
56147           </parameter>
56148           <parameter name="x" transfer-ownership="none">
56149             <type name="int" c:type="gint"/>
56150           </parameter>
56151           <parameter name="y" transfer-ownership="none">
56152             <type name="int" c:type="gint"/>
56153           </parameter>
56154           <parameter name="width" transfer-ownership="none">
56155             <type name="int" c:type="gint"/>
56156           </parameter>
56157           <parameter name="height" transfer-ownership="none">
56158             <type name="int" c:type="gint"/>
56159           </parameter>
56160         </parameters>
56161       </virtual-method>
56162       <virtual-method name="draw_string">
56163         <return-value transfer-ownership="none">
56164           <type name="none" c:type="void"/>
56165         </return-value>
56166         <parameters>
56167           <parameter name="window" transfer-ownership="none">
56168             <type name="Gdk.Window" c:type="GdkWindow*"/>
56169           </parameter>
56170           <parameter name="state_type" transfer-ownership="none">
56171             <type name="StateType" c:type="GtkStateType"/>
56172           </parameter>
56173           <parameter name="area" transfer-ownership="none">
56174             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56175           </parameter>
56176           <parameter name="widget" transfer-ownership="none">
56177             <type name="Widget" c:type="GtkWidget*"/>
56178           </parameter>
56179           <parameter name="detail" transfer-ownership="none">
56180             <type name="utf8" c:type="gchar*"/>
56181           </parameter>
56182           <parameter name="x" transfer-ownership="none">
56183             <type name="int" c:type="gint"/>
56184           </parameter>
56185           <parameter name="y" transfer-ownership="none">
56186             <type name="int" c:type="gint"/>
56187           </parameter>
56188           <parameter name="string" transfer-ownership="none">
56189             <type name="utf8" c:type="gchar*"/>
56190           </parameter>
56191         </parameters>
56192       </virtual-method>
56193       <virtual-method name="draw_box">
56194         <return-value transfer-ownership="none">
56195           <type name="none" c:type="void"/>
56196         </return-value>
56197         <parameters>
56198           <parameter name="window" transfer-ownership="none">
56199             <type name="Gdk.Window" c:type="GdkWindow*"/>
56200           </parameter>
56201           <parameter name="state_type" transfer-ownership="none">
56202             <type name="StateType" c:type="GtkStateType"/>
56203           </parameter>
56204           <parameter name="shadow_type" transfer-ownership="none">
56205             <type name="ShadowType" c:type="GtkShadowType"/>
56206           </parameter>
56207           <parameter name="area" transfer-ownership="none">
56208             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56209           </parameter>
56210           <parameter name="widget" transfer-ownership="none">
56211             <type name="Widget" c:type="GtkWidget*"/>
56212           </parameter>
56213           <parameter name="detail" transfer-ownership="none">
56214             <type name="utf8" c:type="gchar*"/>
56215           </parameter>
56216           <parameter name="x" transfer-ownership="none">
56217             <type name="int" c:type="gint"/>
56218           </parameter>
56219           <parameter name="y" transfer-ownership="none">
56220             <type name="int" c:type="gint"/>
56221           </parameter>
56222           <parameter name="width" transfer-ownership="none">
56223             <type name="int" c:type="gint"/>
56224           </parameter>
56225           <parameter name="height" transfer-ownership="none">
56226             <type name="int" c:type="gint"/>
56227           </parameter>
56228         </parameters>
56229       </virtual-method>
56230       <virtual-method name="draw_flat_box">
56231         <return-value transfer-ownership="none">
56232           <type name="none" c:type="void"/>
56233         </return-value>
56234         <parameters>
56235           <parameter name="window" transfer-ownership="none">
56236             <type name="Gdk.Window" c:type="GdkWindow*"/>
56237           </parameter>
56238           <parameter name="state_type" transfer-ownership="none">
56239             <type name="StateType" c:type="GtkStateType"/>
56240           </parameter>
56241           <parameter name="shadow_type" transfer-ownership="none">
56242             <type name="ShadowType" c:type="GtkShadowType"/>
56243           </parameter>
56244           <parameter name="area" transfer-ownership="none">
56245             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56246           </parameter>
56247           <parameter name="widget" transfer-ownership="none">
56248             <type name="Widget" c:type="GtkWidget*"/>
56249           </parameter>
56250           <parameter name="detail" transfer-ownership="none">
56251             <type name="utf8" c:type="gchar*"/>
56252           </parameter>
56253           <parameter name="x" transfer-ownership="none">
56254             <type name="int" c:type="gint"/>
56255           </parameter>
56256           <parameter name="y" transfer-ownership="none">
56257             <type name="int" c:type="gint"/>
56258           </parameter>
56259           <parameter name="width" transfer-ownership="none">
56260             <type name="int" c:type="gint"/>
56261           </parameter>
56262           <parameter name="height" transfer-ownership="none">
56263             <type name="int" c:type="gint"/>
56264           </parameter>
56265         </parameters>
56266       </virtual-method>
56267       <virtual-method name="draw_check">
56268         <return-value transfer-ownership="none">
56269           <type name="none" c:type="void"/>
56270         </return-value>
56271         <parameters>
56272           <parameter name="window" transfer-ownership="none">
56273             <type name="Gdk.Window" c:type="GdkWindow*"/>
56274           </parameter>
56275           <parameter name="state_type" transfer-ownership="none">
56276             <type name="StateType" c:type="GtkStateType"/>
56277           </parameter>
56278           <parameter name="shadow_type" transfer-ownership="none">
56279             <type name="ShadowType" c:type="GtkShadowType"/>
56280           </parameter>
56281           <parameter name="area" transfer-ownership="none">
56282             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56283           </parameter>
56284           <parameter name="widget" transfer-ownership="none">
56285             <type name="Widget" c:type="GtkWidget*"/>
56286           </parameter>
56287           <parameter name="detail" transfer-ownership="none">
56288             <type name="utf8" c:type="gchar*"/>
56289           </parameter>
56290           <parameter name="x" transfer-ownership="none">
56291             <type name="int" c:type="gint"/>
56292           </parameter>
56293           <parameter name="y" transfer-ownership="none">
56294             <type name="int" c:type="gint"/>
56295           </parameter>
56296           <parameter name="width" transfer-ownership="none">
56297             <type name="int" c:type="gint"/>
56298           </parameter>
56299           <parameter name="height" transfer-ownership="none">
56300             <type name="int" c:type="gint"/>
56301           </parameter>
56302         </parameters>
56303       </virtual-method>
56304       <virtual-method name="draw_option">
56305         <return-value transfer-ownership="none">
56306           <type name="none" c:type="void"/>
56307         </return-value>
56308         <parameters>
56309           <parameter name="window" transfer-ownership="none">
56310             <type name="Gdk.Window" c:type="GdkWindow*"/>
56311           </parameter>
56312           <parameter name="state_type" transfer-ownership="none">
56313             <type name="StateType" c:type="GtkStateType"/>
56314           </parameter>
56315           <parameter name="shadow_type" transfer-ownership="none">
56316             <type name="ShadowType" c:type="GtkShadowType"/>
56317           </parameter>
56318           <parameter name="area" transfer-ownership="none">
56319             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56320           </parameter>
56321           <parameter name="widget" transfer-ownership="none">
56322             <type name="Widget" c:type="GtkWidget*"/>
56323           </parameter>
56324           <parameter name="detail" transfer-ownership="none">
56325             <type name="utf8" c:type="gchar*"/>
56326           </parameter>
56327           <parameter name="x" transfer-ownership="none">
56328             <type name="int" c:type="gint"/>
56329           </parameter>
56330           <parameter name="y" transfer-ownership="none">
56331             <type name="int" c:type="gint"/>
56332           </parameter>
56333           <parameter name="width" transfer-ownership="none">
56334             <type name="int" c:type="gint"/>
56335           </parameter>
56336           <parameter name="height" transfer-ownership="none">
56337             <type name="int" c:type="gint"/>
56338           </parameter>
56339         </parameters>
56340       </virtual-method>
56341       <virtual-method name="draw_tab">
56342         <return-value transfer-ownership="none">
56343           <type name="none" c:type="void"/>
56344         </return-value>
56345         <parameters>
56346           <parameter name="window" transfer-ownership="none">
56347             <type name="Gdk.Window" c:type="GdkWindow*"/>
56348           </parameter>
56349           <parameter name="state_type" transfer-ownership="none">
56350             <type name="StateType" c:type="GtkStateType"/>
56351           </parameter>
56352           <parameter name="shadow_type" transfer-ownership="none">
56353             <type name="ShadowType" c:type="GtkShadowType"/>
56354           </parameter>
56355           <parameter name="area" transfer-ownership="none">
56356             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56357           </parameter>
56358           <parameter name="widget" transfer-ownership="none">
56359             <type name="Widget" c:type="GtkWidget*"/>
56360           </parameter>
56361           <parameter name="detail" transfer-ownership="none">
56362             <type name="utf8" c:type="gchar*"/>
56363           </parameter>
56364           <parameter name="x" transfer-ownership="none">
56365             <type name="int" c:type="gint"/>
56366           </parameter>
56367           <parameter name="y" transfer-ownership="none">
56368             <type name="int" c:type="gint"/>
56369           </parameter>
56370           <parameter name="width" transfer-ownership="none">
56371             <type name="int" c:type="gint"/>
56372           </parameter>
56373           <parameter name="height" transfer-ownership="none">
56374             <type name="int" c:type="gint"/>
56375           </parameter>
56376         </parameters>
56377       </virtual-method>
56378       <virtual-method name="draw_shadow_gap">
56379         <return-value transfer-ownership="none">
56380           <type name="none" c:type="void"/>
56381         </return-value>
56382         <parameters>
56383           <parameter name="window" transfer-ownership="none">
56384             <type name="Gdk.Window" c:type="GdkWindow*"/>
56385           </parameter>
56386           <parameter name="state_type" transfer-ownership="none">
56387             <type name="StateType" c:type="GtkStateType"/>
56388           </parameter>
56389           <parameter name="shadow_type" transfer-ownership="none">
56390             <type name="ShadowType" c:type="GtkShadowType"/>
56391           </parameter>
56392           <parameter name="area" transfer-ownership="none">
56393             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56394           </parameter>
56395           <parameter name="widget" transfer-ownership="none">
56396             <type name="Widget" c:type="GtkWidget*"/>
56397           </parameter>
56398           <parameter name="detail" transfer-ownership="none">
56399             <type name="utf8" c:type="gchar*"/>
56400           </parameter>
56401           <parameter name="x" transfer-ownership="none">
56402             <type name="int" c:type="gint"/>
56403           </parameter>
56404           <parameter name="y" transfer-ownership="none">
56405             <type name="int" c:type="gint"/>
56406           </parameter>
56407           <parameter name="width" transfer-ownership="none">
56408             <type name="int" c:type="gint"/>
56409           </parameter>
56410           <parameter name="height" transfer-ownership="none">
56411             <type name="int" c:type="gint"/>
56412           </parameter>
56413           <parameter name="gap_side" transfer-ownership="none">
56414             <type name="PositionType" c:type="GtkPositionType"/>
56415           </parameter>
56416           <parameter name="gap_x" transfer-ownership="none">
56417             <type name="int" c:type="gint"/>
56418           </parameter>
56419           <parameter name="gap_width" transfer-ownership="none">
56420             <type name="int" c:type="gint"/>
56421           </parameter>
56422         </parameters>
56423       </virtual-method>
56424       <virtual-method name="draw_box_gap">
56425         <return-value transfer-ownership="none">
56426           <type name="none" c:type="void"/>
56427         </return-value>
56428         <parameters>
56429           <parameter name="window" transfer-ownership="none">
56430             <type name="Gdk.Window" c:type="GdkWindow*"/>
56431           </parameter>
56432           <parameter name="state_type" transfer-ownership="none">
56433             <type name="StateType" c:type="GtkStateType"/>
56434           </parameter>
56435           <parameter name="shadow_type" transfer-ownership="none">
56436             <type name="ShadowType" c:type="GtkShadowType"/>
56437           </parameter>
56438           <parameter name="area" transfer-ownership="none">
56439             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56440           </parameter>
56441           <parameter name="widget" transfer-ownership="none">
56442             <type name="Widget" c:type="GtkWidget*"/>
56443           </parameter>
56444           <parameter name="detail" transfer-ownership="none">
56445             <type name="utf8" c:type="gchar*"/>
56446           </parameter>
56447           <parameter name="x" transfer-ownership="none">
56448             <type name="int" c:type="gint"/>
56449           </parameter>
56450           <parameter name="y" transfer-ownership="none">
56451             <type name="int" c:type="gint"/>
56452           </parameter>
56453           <parameter name="width" transfer-ownership="none">
56454             <type name="int" c:type="gint"/>
56455           </parameter>
56456           <parameter name="height" transfer-ownership="none">
56457             <type name="int" c:type="gint"/>
56458           </parameter>
56459           <parameter name="gap_side" transfer-ownership="none">
56460             <type name="PositionType" c:type="GtkPositionType"/>
56461           </parameter>
56462           <parameter name="gap_x" transfer-ownership="none">
56463             <type name="int" c:type="gint"/>
56464           </parameter>
56465           <parameter name="gap_width" transfer-ownership="none">
56466             <type name="int" c:type="gint"/>
56467           </parameter>
56468         </parameters>
56469       </virtual-method>
56470       <virtual-method name="draw_extension">
56471         <return-value transfer-ownership="none">
56472           <type name="none" c:type="void"/>
56473         </return-value>
56474         <parameters>
56475           <parameter name="window" transfer-ownership="none">
56476             <type name="Gdk.Window" c:type="GdkWindow*"/>
56477           </parameter>
56478           <parameter name="state_type" transfer-ownership="none">
56479             <type name="StateType" c:type="GtkStateType"/>
56480           </parameter>
56481           <parameter name="shadow_type" transfer-ownership="none">
56482             <type name="ShadowType" c:type="GtkShadowType"/>
56483           </parameter>
56484           <parameter name="area" transfer-ownership="none">
56485             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56486           </parameter>
56487           <parameter name="widget" transfer-ownership="none">
56488             <type name="Widget" c:type="GtkWidget*"/>
56489           </parameter>
56490           <parameter name="detail" transfer-ownership="none">
56491             <type name="utf8" c:type="gchar*"/>
56492           </parameter>
56493           <parameter name="x" transfer-ownership="none">
56494             <type name="int" c:type="gint"/>
56495           </parameter>
56496           <parameter name="y" transfer-ownership="none">
56497             <type name="int" c:type="gint"/>
56498           </parameter>
56499           <parameter name="width" transfer-ownership="none">
56500             <type name="int" c:type="gint"/>
56501           </parameter>
56502           <parameter name="height" transfer-ownership="none">
56503             <type name="int" c:type="gint"/>
56504           </parameter>
56505           <parameter name="gap_side" transfer-ownership="none">
56506             <type name="PositionType" c:type="GtkPositionType"/>
56507           </parameter>
56508         </parameters>
56509       </virtual-method>
56510       <virtual-method name="draw_focus">
56511         <return-value transfer-ownership="none">
56512           <type name="none" c:type="void"/>
56513         </return-value>
56514         <parameters>
56515           <parameter name="window" transfer-ownership="none">
56516             <type name="Gdk.Window" c:type="GdkWindow*"/>
56517           </parameter>
56518           <parameter name="state_type" transfer-ownership="none">
56519             <type name="StateType" c:type="GtkStateType"/>
56520           </parameter>
56521           <parameter name="area" transfer-ownership="none">
56522             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56523           </parameter>
56524           <parameter name="widget" transfer-ownership="none">
56525             <type name="Widget" c:type="GtkWidget*"/>
56526           </parameter>
56527           <parameter name="detail" transfer-ownership="none">
56528             <type name="utf8" c:type="gchar*"/>
56529           </parameter>
56530           <parameter name="x" transfer-ownership="none">
56531             <type name="int" c:type="gint"/>
56532           </parameter>
56533           <parameter name="y" transfer-ownership="none">
56534             <type name="int" c:type="gint"/>
56535           </parameter>
56536           <parameter name="width" transfer-ownership="none">
56537             <type name="int" c:type="gint"/>
56538           </parameter>
56539           <parameter name="height" transfer-ownership="none">
56540             <type name="int" c:type="gint"/>
56541           </parameter>
56542         </parameters>
56543       </virtual-method>
56544       <virtual-method name="draw_slider">
56545         <return-value transfer-ownership="none">
56546           <type name="none" c:type="void"/>
56547         </return-value>
56548         <parameters>
56549           <parameter name="window" transfer-ownership="none">
56550             <type name="Gdk.Window" c:type="GdkWindow*"/>
56551           </parameter>
56552           <parameter name="state_type" transfer-ownership="none">
56553             <type name="StateType" c:type="GtkStateType"/>
56554           </parameter>
56555           <parameter name="shadow_type" transfer-ownership="none">
56556             <type name="ShadowType" c:type="GtkShadowType"/>
56557           </parameter>
56558           <parameter name="area" transfer-ownership="none">
56559             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56560           </parameter>
56561           <parameter name="widget" transfer-ownership="none">
56562             <type name="Widget" c:type="GtkWidget*"/>
56563           </parameter>
56564           <parameter name="detail" transfer-ownership="none">
56565             <type name="utf8" c:type="gchar*"/>
56566           </parameter>
56567           <parameter name="x" transfer-ownership="none">
56568             <type name="int" c:type="gint"/>
56569           </parameter>
56570           <parameter name="y" transfer-ownership="none">
56571             <type name="int" c:type="gint"/>
56572           </parameter>
56573           <parameter name="width" transfer-ownership="none">
56574             <type name="int" c:type="gint"/>
56575           </parameter>
56576           <parameter name="height" transfer-ownership="none">
56577             <type name="int" c:type="gint"/>
56578           </parameter>
56579           <parameter name="orientation" transfer-ownership="none">
56580             <type name="Orientation" c:type="GtkOrientation"/>
56581           </parameter>
56582         </parameters>
56583       </virtual-method>
56584       <virtual-method name="draw_handle">
56585         <return-value transfer-ownership="none">
56586           <type name="none" c:type="void"/>
56587         </return-value>
56588         <parameters>
56589           <parameter name="window" transfer-ownership="none">
56590             <type name="Gdk.Window" c:type="GdkWindow*"/>
56591           </parameter>
56592           <parameter name="state_type" transfer-ownership="none">
56593             <type name="StateType" c:type="GtkStateType"/>
56594           </parameter>
56595           <parameter name="shadow_type" transfer-ownership="none">
56596             <type name="ShadowType" c:type="GtkShadowType"/>
56597           </parameter>
56598           <parameter name="area" transfer-ownership="none">
56599             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56600           </parameter>
56601           <parameter name="widget" transfer-ownership="none">
56602             <type name="Widget" c:type="GtkWidget*"/>
56603           </parameter>
56604           <parameter name="detail" transfer-ownership="none">
56605             <type name="utf8" c:type="gchar*"/>
56606           </parameter>
56607           <parameter name="x" transfer-ownership="none">
56608             <type name="int" c:type="gint"/>
56609           </parameter>
56610           <parameter name="y" transfer-ownership="none">
56611             <type name="int" c:type="gint"/>
56612           </parameter>
56613           <parameter name="width" transfer-ownership="none">
56614             <type name="int" c:type="gint"/>
56615           </parameter>
56616           <parameter name="height" transfer-ownership="none">
56617             <type name="int" c:type="gint"/>
56618           </parameter>
56619           <parameter name="orientation" transfer-ownership="none">
56620             <type name="Orientation" c:type="GtkOrientation"/>
56621           </parameter>
56622         </parameters>
56623       </virtual-method>
56624       <virtual-method name="draw_expander">
56625         <return-value transfer-ownership="none">
56626           <type name="none" c:type="void"/>
56627         </return-value>
56628         <parameters>
56629           <parameter name="window" transfer-ownership="none">
56630             <type name="Gdk.Window" c:type="GdkWindow*"/>
56631           </parameter>
56632           <parameter name="state_type" transfer-ownership="none">
56633             <type name="StateType" c:type="GtkStateType"/>
56634           </parameter>
56635           <parameter name="area" transfer-ownership="none">
56636             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56637           </parameter>
56638           <parameter name="widget" transfer-ownership="none">
56639             <type name="Widget" c:type="GtkWidget*"/>
56640           </parameter>
56641           <parameter name="detail" transfer-ownership="none">
56642             <type name="utf8" c:type="gchar*"/>
56643           </parameter>
56644           <parameter name="x" transfer-ownership="none">
56645             <type name="int" c:type="gint"/>
56646           </parameter>
56647           <parameter name="y" transfer-ownership="none">
56648             <type name="int" c:type="gint"/>
56649           </parameter>
56650           <parameter name="expander_style" transfer-ownership="none">
56651             <type name="ExpanderStyle" c:type="GtkExpanderStyle"/>
56652           </parameter>
56653         </parameters>
56654       </virtual-method>
56655       <virtual-method name="draw_layout">
56656         <return-value transfer-ownership="none">
56657           <type name="none" c:type="void"/>
56658         </return-value>
56659         <parameters>
56660           <parameter name="window" transfer-ownership="none">
56661             <type name="Gdk.Window" c:type="GdkWindow*"/>
56662           </parameter>
56663           <parameter name="state_type" transfer-ownership="none">
56664             <type name="StateType" c:type="GtkStateType"/>
56665           </parameter>
56666           <parameter name="use_text" transfer-ownership="none">
56667             <type name="boolean" c:type="gboolean"/>
56668           </parameter>
56669           <parameter name="area" transfer-ownership="none">
56670             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56671           </parameter>
56672           <parameter name="widget" transfer-ownership="none">
56673             <type name="Widget" c:type="GtkWidget*"/>
56674           </parameter>
56675           <parameter name="detail" transfer-ownership="none">
56676             <type name="utf8" c:type="gchar*"/>
56677           </parameter>
56678           <parameter name="x" transfer-ownership="none">
56679             <type name="int" c:type="gint"/>
56680           </parameter>
56681           <parameter name="y" transfer-ownership="none">
56682             <type name="int" c:type="gint"/>
56683           </parameter>
56684           <parameter name="layout" transfer-ownership="none">
56685             <type name="Pango.Layout" c:type="PangoLayout*"/>
56686           </parameter>
56687         </parameters>
56688       </virtual-method>
56689       <virtual-method name="draw_resize_grip">
56690         <return-value transfer-ownership="none">
56691           <type name="none" c:type="void"/>
56692         </return-value>
56693         <parameters>
56694           <parameter name="window" transfer-ownership="none">
56695             <type name="Gdk.Window" c:type="GdkWindow*"/>
56696           </parameter>
56697           <parameter name="state_type" transfer-ownership="none">
56698             <type name="StateType" c:type="GtkStateType"/>
56699           </parameter>
56700           <parameter name="area" transfer-ownership="none">
56701             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56702           </parameter>
56703           <parameter name="widget" transfer-ownership="none">
56704             <type name="Widget" c:type="GtkWidget*"/>
56705           </parameter>
56706           <parameter name="detail" transfer-ownership="none">
56707             <type name="utf8" c:type="gchar*"/>
56708           </parameter>
56709           <parameter name="edge" transfer-ownership="none">
56710             <type name="Gdk.WindowEdge" c:type="GdkWindowEdge"/>
56711           </parameter>
56712           <parameter name="x" transfer-ownership="none">
56713             <type name="int" c:type="gint"/>
56714           </parameter>
56715           <parameter name="y" transfer-ownership="none">
56716             <type name="int" c:type="gint"/>
56717           </parameter>
56718           <parameter name="width" transfer-ownership="none">
56719             <type name="int" c:type="gint"/>
56720           </parameter>
56721           <parameter name="height" transfer-ownership="none">
56722             <type name="int" c:type="gint"/>
56723           </parameter>
56724         </parameters>
56725       </virtual-method>
56726       <virtual-method name="draw_spinner">
56727         <return-value transfer-ownership="none">
56728           <type name="none" c:type="void"/>
56729         </return-value>
56730         <parameters>
56731           <parameter name="window" transfer-ownership="none">
56732             <type name="Gdk.Window" c:type="GdkWindow*"/>
56733           </parameter>
56734           <parameter name="state_type" transfer-ownership="none">
56735             <type name="StateType" c:type="GtkStateType"/>
56736           </parameter>
56737           <parameter name="area" transfer-ownership="none">
56738             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56739           </parameter>
56740           <parameter name="widget" transfer-ownership="none">
56741             <type name="Widget" c:type="GtkWidget*"/>
56742           </parameter>
56743           <parameter name="detail" transfer-ownership="none">
56744             <type name="utf8" c:type="gchar*"/>
56745           </parameter>
56746           <parameter name="step" transfer-ownership="none">
56747             <type name="uint" c:type="guint"/>
56748           </parameter>
56749           <parameter name="x" transfer-ownership="none">
56750             <type name="int" c:type="gint"/>
56751           </parameter>
56752           <parameter name="y" transfer-ownership="none">
56753             <type name="int" c:type="gint"/>
56754           </parameter>
56755           <parameter name="width" transfer-ownership="none">
56756             <type name="int" c:type="gint"/>
56757           </parameter>
56758           <parameter name="height" transfer-ownership="none">
56759             <type name="int" c:type="gint"/>
56760           </parameter>
56761         </parameters>
56762       </virtual-method>
56763       <method name="copy" c:identifier="gtk_style_copy">
56764         <doc xml:whitespace="preserve">Creates a copy of the passed in #GtkStyle object.</doc>
56765         <return-value transfer-ownership="full">
56766           <doc xml:whitespace="preserve">a copy of @style</doc>
56767           <type name="Style" c:type="GtkStyle*"/>
56768         </return-value>
56769       </method>
56770       <method name="attach" c:identifier="gtk_style_attach">
56771         <doc xml:whitespace="preserve">Attaches a style to a window; this process allocates the
56772 colors and creates the GC's for the style - it specializes
56773 it to a particular visual and colormap. The process may 
56774 involve the creation of a new style if the style has already 
56775 been attached to a window with a different style and colormap.
56776 Since this function may return a new object, you have to use it 
56777 &lt;literal&gt;style = gtk_style_attach (style, window)&lt;/literal&gt;
56778 If the style is newly created, the style parameter
56779 will be unref'ed, and the new style will have
56780 a reference count belonging to the caller.</doc>
56781         <return-value transfer-ownership="full">
56782           <doc xml:whitespace="preserve">Either @style, or a newly-created #GtkStyle.</doc>
56783           <type name="Style" c:type="GtkStyle*"/>
56784         </return-value>
56785         <parameters>
56786           <parameter name="window" transfer-ownership="none">
56787             <doc xml:whitespace="preserve">a #GdkWindow.</doc>
56788             <type name="Gdk.Window" c:type="GdkWindow*"/>
56789           </parameter>
56790         </parameters>
56791       </method>
56792       <method name="detach" c:identifier="gtk_style_detach">
56793         <doc xml:whitespace="preserve">Detaches a style from a window. If the style is not attached
56794 to any windows anymore, it is unrealized. See gtk_style_attach().</doc>
56795         <return-value transfer-ownership="none">
56796           <type name="none" c:type="void"/>
56797         </return-value>
56798       </method>
56799       <method name="ref"
56800               c:identifier="gtk_style_ref"
56801               deprecated="use g_object_ref() instead."
56802               deprecated-version="2.0">
56803         <doc xml:whitespace="preserve">Increase the reference count of @style.</doc>
56804         <return-value transfer-ownership="full">
56805           <doc xml:whitespace="preserve">@style.</doc>
56806           <type name="Style" c:type="GtkStyle*"/>
56807         </return-value>
56808       </method>
56809       <method name="unref"
56810               c:identifier="gtk_style_unref"
56811               deprecated="use g_object_unref() instead."
56812               deprecated-version="2.0">
56813         <doc xml:whitespace="preserve">Decrease the reference count of @style.</doc>
56814         <return-value transfer-ownership="none">
56815           <type name="none" c:type="void"/>
56816         </return-value>
56817       </method>
56818       <method name="get_font" c:identifier="gtk_style_get_font">
56819         <doc xml:whitespace="preserve">Gets the #GdkFont to use for the given style. This is
56820 meant only as a replacement for direct access to @style-&gt;font
56821 and should not be used in new code. New code should
56822 use @style-&gt;font_desc instead.
56823 by the style; if you want to keep around a copy, you must
56824 call gdk_font_ref().</doc>
56825         <return-value transfer-ownership="full">
56826           <doc xml:whitespace="preserve">the #GdkFont for the style. This font is owned</doc>
56827           <type name="Gdk.Font" c:type="GdkFont*"/>
56828         </return-value>
56829       </method>
56830       <method name="set_font" c:identifier="gtk_style_set_font">
56831         <doc xml:whitespace="preserve">Sets the #GdkFont to use for a given style. This is
56832 meant only as a replacement for direct access to style-&gt;font
56833 and should not be used in new code. New code should
56834 use style-&gt;font_desc instead.</doc>
56835         <return-value transfer-ownership="none">
56836           <type name="none" c:type="void"/>
56837         </return-value>
56838         <parameters>
56839           <parameter name="font" transfer-ownership="none" allow-none="1">
56840             <doc xml:whitespace="preserve">a #GdkFont, or %NULL to use the #GdkFont corresponding to style-&gt;font_desc.</doc>
56841             <type name="Gdk.Font" c:type="GdkFont*"/>
56842           </parameter>
56843         </parameters>
56844       </method>
56845       <method name="set_background" c:identifier="gtk_style_set_background">
56846         <doc xml:whitespace="preserve">Sets the background of @window to the background color or pixmap
56847 specified by @style for the given state.</doc>
56848         <return-value transfer-ownership="none">
56849           <type name="none" c:type="void"/>
56850         </return-value>
56851         <parameters>
56852           <parameter name="window" transfer-ownership="none">
56853             <doc xml:whitespace="preserve">a #GdkWindow</doc>
56854             <type name="Gdk.Window" c:type="GdkWindow*"/>
56855           </parameter>
56856           <parameter name="state_type" transfer-ownership="none">
56857             <doc xml:whitespace="preserve">a state</doc>
56858             <type name="StateType" c:type="GtkStateType"/>
56859           </parameter>
56860         </parameters>
56861       </method>
56862       <method name="apply_default_background"
56863               c:identifier="gtk_style_apply_default_background">
56864         <return-value transfer-ownership="none">
56865           <type name="none" c:type="void"/>
56866         </return-value>
56867         <parameters>
56868           <parameter name="window" transfer-ownership="none">
56869             <type name="Gdk.Window" c:type="GdkWindow*"/>
56870           </parameter>
56871           <parameter name="set_bg" transfer-ownership="none">
56872             <type name="boolean" c:type="gboolean"/>
56873           </parameter>
56874           <parameter name="state_type" transfer-ownership="none">
56875             <type name="StateType" c:type="GtkStateType"/>
56876           </parameter>
56877           <parameter name="area" transfer-ownership="none" allow-none="1">
56878             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
56879           </parameter>
56880           <parameter name="x" transfer-ownership="none">
56881             <type name="int" c:type="gint"/>
56882           </parameter>
56883           <parameter name="y" transfer-ownership="none">
56884             <type name="int" c:type="gint"/>
56885           </parameter>
56886           <parameter name="width" transfer-ownership="none">
56887             <type name="int" c:type="gint"/>
56888           </parameter>
56889           <parameter name="height" transfer-ownership="none">
56890             <type name="int" c:type="gint"/>
56891           </parameter>
56892         </parameters>
56893       </method>
56894       <method name="lookup_icon_set" c:identifier="gtk_style_lookup_icon_set">
56895         <doc xml:whitespace="preserve">Looks up @stock_id in the icon factories associated with @style
56896 and the default icon factory, returning an icon set if found,
56897 otherwise %NULL.</doc>
56898         <return-value transfer-ownership="full">
56899           <doc xml:whitespace="preserve">icon set of @stock_id</doc>
56900           <type name="IconSet" c:type="GtkIconSet*"/>
56901         </return-value>
56902         <parameters>
56903           <parameter name="stock_id" transfer-ownership="none">
56904             <doc xml:whitespace="preserve">an icon name</doc>
56905             <type name="utf8" c:type="gchar*"/>
56906           </parameter>
56907         </parameters>
56908       </method>
56909       <method name="lookup_color"
56910               c:identifier="gtk_style_lookup_color"
56911               version="2.10">
56912         <doc xml:whitespace="preserve">Looks up @color_name in the style's logical color mappings,
56913 filling in @color and returning %TRUE if found, otherwise
56914 returning %FALSE. Do not cache the found mapping, because
56915 it depends on the #GtkStyle and might change when a theme
56916 switch occurs.</doc>
56917         <return-value transfer-ownership="none">
56918           <doc xml:whitespace="preserve">%TRUE if the mapping was found.</doc>
56919           <type name="boolean" c:type="gboolean"/>
56920         </return-value>
56921         <parameters>
56922           <parameter name="color_name" transfer-ownership="none">
56923             <doc xml:whitespace="preserve">the name of the logical color to look up</doc>
56924             <type name="utf8" c:type="gchar*"/>
56925           </parameter>
56926           <parameter name="color" transfer-ownership="none">
56927             <doc xml:whitespace="preserve">the #GdkColor to fill in</doc>
56928             <type name="Gdk.Color" c:type="GdkColor*"/>
56929           </parameter>
56930         </parameters>
56931       </method>
56932       <method name="render_icon" c:identifier="gtk_style_render_icon">
56933         <doc xml:whitespace="preserve">Renders the icon specified by @source at the given @size
56934 according to the given parameters and returns the result in a
56935 pixbuf.</doc>
56936         <return-value transfer-ownership="full">
56937           <doc xml:whitespace="preserve">a newly-created #GdkPixbuf containing the rendered icon</doc>
56938           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
56939         </return-value>
56940         <parameters>
56941           <parameter name="source" transfer-ownership="none">
56942             <doc xml:whitespace="preserve">the #GtkIconSource specifying the icon to render</doc>
56943             <type name="IconSource" c:type="GtkIconSource*"/>
56944           </parameter>
56945           <parameter name="direction" transfer-ownership="none">
56946             <doc xml:whitespace="preserve">a text direction</doc>
56947             <type name="TextDirection" c:type="GtkTextDirection"/>
56948           </parameter>
56949           <parameter name="state" transfer-ownership="none">
56950             <doc xml:whitespace="preserve">a state</doc>
56951             <type name="StateType" c:type="GtkStateType"/>
56952           </parameter>
56953           <parameter name="size" transfer-ownership="none">
56954             <doc xml:whitespace="preserve">(type int) 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>
56955             <type name="IconSize" c:type="GtkIconSize"/>
56956           </parameter>
56957           <parameter name="widget" transfer-ownership="none" allow-none="1">
56958             <doc xml:whitespace="preserve">the widget</doc>
56959             <type name="Widget" c:type="GtkWidget*"/>
56960           </parameter>
56961           <parameter name="detail" transfer-ownership="none" allow-none="1">
56962             <doc xml:whitespace="preserve">a style detail</doc>
56963             <type name="utf8" c:type="gchar*"/>
56964           </parameter>
56965         </parameters>
56966       </method>
56967       <method name="get_style_property"
56968               c:identifier="gtk_style_get_style_property"
56969               version="2.16">
56970         <doc xml:whitespace="preserve">Queries the value of a style property corresponding to a
56971 widget class is in the given style.</doc>
56972         <return-value transfer-ownership="none">
56973           <type name="none" c:type="void"/>
56974         </return-value>
56975         <parameters>
56976           <parameter name="widget_type" transfer-ownership="none">
56977             <doc xml:whitespace="preserve">the #GType of a descendant of #GtkWidget</doc>
56978             <type name="GType" c:type="GType"/>
56979           </parameter>
56980           <parameter name="property_name" transfer-ownership="none">
56981             <doc xml:whitespace="preserve">the name of the style property to get</doc>
56982             <type name="utf8" c:type="gchar*"/>
56983           </parameter>
56984           <parameter name="value" transfer-ownership="none">
56985             <doc xml:whitespace="preserve">a #GValue where the value of the property being queried will be stored</doc>
56986             <type name="GObject.Value" c:type="GValue*"/>
56987           </parameter>
56988         </parameters>
56989       </method>
56990       <method name="get"
56991               c:identifier="gtk_style_get"
56992               version="2.16"
56993               introspectable="0">
56994         <doc xml:whitespace="preserve">Gets the values of a multiple style properties for @widget_type
56995 from @style.</doc>
56996         <return-value transfer-ownership="none">
56997           <type name="none" c:type="void"/>
56998         </return-value>
56999         <parameters>
57000           <parameter name="widget_type" transfer-ownership="none">
57001             <doc xml:whitespace="preserve">the #GType of a descendant of #GtkWidget</doc>
57002             <type name="GType" c:type="GType"/>
57003           </parameter>
57004           <parameter name="first_property_name" transfer-ownership="none">
57005             <doc xml:whitespace="preserve">the name of the first style property to get</doc>
57006             <type name="utf8" c:type="gchar*"/>
57007           </parameter>
57008           <parameter transfer-ownership="none">
57009             <varargs>
57010             </varargs>
57011           </parameter>
57012         </parameters>
57013       </method>
57014       <field name="parent_instance">
57015         <type name="GObject.Object" c:type="GObject"/>
57016       </field>
57017       <field name="fg">
57018         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
57019           <type name="Gdk.Color"/>
57020         </array>
57021       </field>
57022       <field name="bg">
57023         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
57024           <type name="Gdk.Color"/>
57025         </array>
57026       </field>
57027       <field name="light">
57028         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
57029           <type name="Gdk.Color"/>
57030         </array>
57031       </field>
57032       <field name="dark">
57033         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
57034           <type name="Gdk.Color"/>
57035         </array>
57036       </field>
57037       <field name="mid">
57038         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
57039           <type name="Gdk.Color"/>
57040         </array>
57041       </field>
57042       <field name="text">
57043         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
57044           <type name="Gdk.Color"/>
57045         </array>
57046       </field>
57047       <field name="base">
57048         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
57049           <type name="Gdk.Color"/>
57050         </array>
57051       </field>
57052       <field name="text_aa">
57053         <array zero-terminated="0" c:type="GdkColor" fixed-size="5">
57054           <type name="Gdk.Color"/>
57055         </array>
57056       </field>
57057       <field name="black">
57058         <type name="Gdk.Color" c:type="GdkColor"/>
57059       </field>
57060       <field name="white">
57061         <type name="Gdk.Color" c:type="GdkColor"/>
57062       </field>
57063       <field name="font_desc">
57064         <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
57065       </field>
57066       <field name="xthickness">
57067         <type name="int" c:type="gint"/>
57068       </field>
57069       <field name="ythickness">
57070         <type name="int" c:type="gint"/>
57071       </field>
57072       <field name="fg_gc">
57073         <array zero-terminated="0" c:type="GdkGC*" fixed-size="5">
57074           <type name="Gdk.GC"/>
57075         </array>
57076       </field>
57077       <field name="bg_gc">
57078         <array zero-terminated="0" c:type="GdkGC*" fixed-size="5">
57079           <type name="Gdk.GC"/>
57080         </array>
57081       </field>
57082       <field name="light_gc">
57083         <array zero-terminated="0" c:type="GdkGC*" fixed-size="5">
57084           <type name="Gdk.GC"/>
57085         </array>
57086       </field>
57087       <field name="dark_gc">
57088         <array zero-terminated="0" c:type="GdkGC*" fixed-size="5">
57089           <type name="Gdk.GC"/>
57090         </array>
57091       </field>
57092       <field name="mid_gc">
57093         <array zero-terminated="0" c:type="GdkGC*" fixed-size="5">
57094           <type name="Gdk.GC"/>
57095         </array>
57096       </field>
57097       <field name="text_gc">
57098         <array zero-terminated="0" c:type="GdkGC*" fixed-size="5">
57099           <type name="Gdk.GC"/>
57100         </array>
57101       </field>
57102       <field name="base_gc">
57103         <array zero-terminated="0" c:type="GdkGC*" fixed-size="5">
57104           <type name="Gdk.GC"/>
57105         </array>
57106       </field>
57107       <field name="text_aa_gc">
57108         <array zero-terminated="0" c:type="GdkGC*" fixed-size="5">
57109           <type name="Gdk.GC"/>
57110         </array>
57111       </field>
57112       <field name="black_gc">
57113         <type name="Gdk.GC" c:type="GdkGC*"/>
57114       </field>
57115       <field name="white_gc">
57116         <type name="Gdk.GC" c:type="GdkGC*"/>
57117       </field>
57118       <field name="bg_pixmap">
57119         <array zero-terminated="0" c:type="GdkPixmap*" fixed-size="5">
57120           <type name="Gdk.Pixmap"/>
57121         </array>
57122       </field>
57123       <field name="attach_count">
57124         <type name="int" c:type="gint"/>
57125       </field>
57126       <field name="depth">
57127         <type name="int" c:type="gint"/>
57128       </field>
57129       <field name="colormap">
57130         <type name="Gdk.Colormap" c:type="GdkColormap*"/>
57131       </field>
57132       <field name="private_font">
57133         <type name="Gdk.Font" c:type="GdkFont*"/>
57134       </field>
57135       <field name="private_font_desc">
57136         <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
57137       </field>
57138       <field name="rc_style">
57139         <type name="RcStyle" c:type="GtkRcStyle*"/>
57140       </field>
57141       <field name="styles">
57142         <type name="GLib.SList" c:type="GSList*">
57143           <type name="any" c:type="gpointer"/>
57144         </type>
57145       </field>
57146       <field name="property_cache">
57147         <type name="GLib.Array" c:type="GArray*"/>
57148       </field>
57149       <field name="icon_factories">
57150         <type name="GLib.SList" c:type="GSList*">
57151           <type name="any" c:type="gpointer"/>
57152         </type>
57153       </field>
57154       <glib:signal name="realize" version="2.4">
57155         <doc xml:whitespace="preserve">Emitted when the style has been initialized for a particular
57156 colormap and depth. Connecting to this signal is probably seldom
57157 useful since most of the time applications and widgets only
57158 deal with styles that have been already realized.</doc>
57159         <return-value transfer-ownership="full">
57160           <type name="none" c:type="void"/>
57161         </return-value>
57162       </glib:signal>
57163       <glib:signal name="unrealize" version="2.4">
57164         <doc xml:whitespace="preserve">Emitted when the aspects of the style specific to a particular colormap
57165 and depth are being cleaned up. A connection to this signal can be useful
57166 if a widget wants to cache objects like a #GdkGC as object data on #GtkStyle.
57167 This signal provides a convenient place to free such cached objects.</doc>
57168         <return-value transfer-ownership="full">
57169           <type name="none" c:type="void"/>
57170         </return-value>
57171       </glib:signal>
57172     </class>
57173     <record name="StyleClass"
57174             c:type="GtkStyleClass"
57175             glib:is-gtype-struct-for="Style">
57176       <field name="parent_class">
57177         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
57178       </field>
57179       <field name="realize">
57180         <callback name="realize" c:type="realize">
57181           <return-value transfer-ownership="none">
57182             <type name="none" c:type="void"/>
57183           </return-value>
57184           <parameters>
57185             <parameter name="style" transfer-ownership="none">
57186               <type name="Style" c:type="GtkStyle*"/>
57187             </parameter>
57188           </parameters>
57189         </callback>
57190       </field>
57191       <field name="unrealize">
57192         <callback name="unrealize" c:type="unrealize">
57193           <return-value transfer-ownership="none">
57194             <type name="none" c:type="void"/>
57195           </return-value>
57196           <parameters>
57197             <parameter name="style" transfer-ownership="none">
57198               <type name="Style" c:type="GtkStyle*"/>
57199             </parameter>
57200           </parameters>
57201         </callback>
57202       </field>
57203       <field name="copy">
57204         <callback name="copy" c:type="copy">
57205           <return-value transfer-ownership="none">
57206             <type name="none" c:type="void"/>
57207           </return-value>
57208           <parameters>
57209             <parameter name="style" transfer-ownership="none">
57210               <type name="Style" c:type="GtkStyle*"/>
57211             </parameter>
57212             <parameter name="src" transfer-ownership="none">
57213               <type name="Style" c:type="GtkStyle*"/>
57214             </parameter>
57215           </parameters>
57216         </callback>
57217       </field>
57218       <field name="clone">
57219         <callback name="clone" c:type="clone">
57220           <return-value transfer-ownership="full">
57221             <type name="Style" c:type="GtkStyle*"/>
57222           </return-value>
57223           <parameters>
57224             <parameter name="style" transfer-ownership="none">
57225               <type name="Style" c:type="GtkStyle*"/>
57226             </parameter>
57227           </parameters>
57228         </callback>
57229       </field>
57230       <field name="init_from_rc">
57231         <callback name="init_from_rc" c:type="init_from_rc">
57232           <return-value transfer-ownership="none">
57233             <type name="none" c:type="void"/>
57234           </return-value>
57235           <parameters>
57236             <parameter name="style" transfer-ownership="none">
57237               <type name="Style" c:type="GtkStyle*"/>
57238             </parameter>
57239             <parameter name="rc_style" transfer-ownership="none">
57240               <type name="RcStyle" c:type="GtkRcStyle*"/>
57241             </parameter>
57242           </parameters>
57243         </callback>
57244       </field>
57245       <field name="set_background">
57246         <callback name="set_background" c:type="set_background">
57247           <return-value transfer-ownership="none">
57248             <type name="none" c:type="void"/>
57249           </return-value>
57250           <parameters>
57251             <parameter name="style" transfer-ownership="none">
57252               <type name="Style" c:type="GtkStyle*"/>
57253             </parameter>
57254             <parameter name="window" transfer-ownership="none">
57255               <doc xml:whitespace="preserve">a #GdkWindow</doc>
57256               <type name="Gdk.Window" c:type="GdkWindow*"/>
57257             </parameter>
57258             <parameter name="state_type" transfer-ownership="none">
57259               <doc xml:whitespace="preserve">a state</doc>
57260               <type name="StateType" c:type="GtkStateType"/>
57261             </parameter>
57262           </parameters>
57263         </callback>
57264       </field>
57265       <field name="render_icon">
57266         <callback name="render_icon" c:type="render_icon">
57267           <return-value transfer-ownership="full">
57268             <doc xml:whitespace="preserve">a newly-created #GdkPixbuf containing the rendered icon</doc>
57269             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
57270           </return-value>
57271           <parameters>
57272             <parameter name="style" transfer-ownership="none">
57273               <type name="Style" c:type="GtkStyle*"/>
57274             </parameter>
57275             <parameter name="source" transfer-ownership="none">
57276               <doc xml:whitespace="preserve">the #GtkIconSource specifying the icon to render</doc>
57277               <type name="IconSource" c:type="GtkIconSource*"/>
57278             </parameter>
57279             <parameter name="direction" transfer-ownership="none">
57280               <doc xml:whitespace="preserve">a text direction</doc>
57281               <type name="TextDirection" c:type="GtkTextDirection"/>
57282             </parameter>
57283             <parameter name="state" transfer-ownership="none">
57284               <doc xml:whitespace="preserve">a state</doc>
57285               <type name="StateType" c:type="GtkStateType"/>
57286             </parameter>
57287             <parameter name="size" transfer-ownership="none">
57288               <doc xml:whitespace="preserve">(type int) 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>
57289               <type name="IconSize" c:type="GtkIconSize"/>
57290             </parameter>
57291             <parameter name="widget" transfer-ownership="none" allow-none="1">
57292               <doc xml:whitespace="preserve">the widget</doc>
57293               <type name="Widget" c:type="GtkWidget*"/>
57294             </parameter>
57295             <parameter name="detail" transfer-ownership="none" allow-none="1">
57296               <doc xml:whitespace="preserve">a style detail</doc>
57297               <type name="utf8" c:type="gchar*"/>
57298             </parameter>
57299           </parameters>
57300         </callback>
57301       </field>
57302       <field name="draw_hline">
57303         <callback name="draw_hline" c:type="draw_hline">
57304           <return-value transfer-ownership="none">
57305             <type name="none" c:type="void"/>
57306           </return-value>
57307           <parameters>
57308             <parameter name="style" transfer-ownership="none">
57309               <type name="Style" c:type="GtkStyle*"/>
57310             </parameter>
57311             <parameter name="window" transfer-ownership="none">
57312               <type name="Gdk.Window" c:type="GdkWindow*"/>
57313             </parameter>
57314             <parameter name="state_type" transfer-ownership="none">
57315               <type name="StateType" c:type="GtkStateType"/>
57316             </parameter>
57317             <parameter name="area" transfer-ownership="none">
57318               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57319             </parameter>
57320             <parameter name="widget" transfer-ownership="none">
57321               <type name="Widget" c:type="GtkWidget*"/>
57322             </parameter>
57323             <parameter name="detail" transfer-ownership="none">
57324               <type name="utf8" c:type="gchar*"/>
57325             </parameter>
57326             <parameter name="x1" transfer-ownership="none">
57327               <type name="int" c:type="gint"/>
57328             </parameter>
57329             <parameter name="x2" transfer-ownership="none">
57330               <type name="int" c:type="gint"/>
57331             </parameter>
57332             <parameter name="y" transfer-ownership="none">
57333               <type name="int" c:type="gint"/>
57334             </parameter>
57335           </parameters>
57336         </callback>
57337       </field>
57338       <field name="draw_vline">
57339         <callback name="draw_vline" c:type="draw_vline">
57340           <return-value transfer-ownership="none">
57341             <type name="none" c:type="void"/>
57342           </return-value>
57343           <parameters>
57344             <parameter name="style" transfer-ownership="none">
57345               <type name="Style" c:type="GtkStyle*"/>
57346             </parameter>
57347             <parameter name="window" transfer-ownership="none">
57348               <type name="Gdk.Window" c:type="GdkWindow*"/>
57349             </parameter>
57350             <parameter name="state_type" transfer-ownership="none">
57351               <type name="StateType" c:type="GtkStateType"/>
57352             </parameter>
57353             <parameter name="area" transfer-ownership="none">
57354               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57355             </parameter>
57356             <parameter name="widget" transfer-ownership="none">
57357               <type name="Widget" c:type="GtkWidget*"/>
57358             </parameter>
57359             <parameter name="detail" transfer-ownership="none">
57360               <type name="utf8" c:type="gchar*"/>
57361             </parameter>
57362             <parameter name="y1_" transfer-ownership="none">
57363               <type name="int" c:type="gint"/>
57364             </parameter>
57365             <parameter name="y2_" transfer-ownership="none">
57366               <type name="int" c:type="gint"/>
57367             </parameter>
57368             <parameter name="x" transfer-ownership="none">
57369               <type name="int" c:type="gint"/>
57370             </parameter>
57371           </parameters>
57372         </callback>
57373       </field>
57374       <field name="draw_shadow">
57375         <callback name="draw_shadow" c:type="draw_shadow">
57376           <return-value transfer-ownership="none">
57377             <type name="none" c:type="void"/>
57378           </return-value>
57379           <parameters>
57380             <parameter name="style" transfer-ownership="none">
57381               <type name="Style" c:type="GtkStyle*"/>
57382             </parameter>
57383             <parameter name="window" transfer-ownership="none">
57384               <type name="Gdk.Window" c:type="GdkWindow*"/>
57385             </parameter>
57386             <parameter name="state_type" transfer-ownership="none">
57387               <type name="StateType" c:type="GtkStateType"/>
57388             </parameter>
57389             <parameter name="shadow_type" transfer-ownership="none">
57390               <type name="ShadowType" c:type="GtkShadowType"/>
57391             </parameter>
57392             <parameter name="area" transfer-ownership="none">
57393               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57394             </parameter>
57395             <parameter name="widget" transfer-ownership="none">
57396               <type name="Widget" c:type="GtkWidget*"/>
57397             </parameter>
57398             <parameter name="detail" transfer-ownership="none">
57399               <type name="utf8" c:type="gchar*"/>
57400             </parameter>
57401             <parameter name="x" transfer-ownership="none">
57402               <type name="int" c:type="gint"/>
57403             </parameter>
57404             <parameter name="y" transfer-ownership="none">
57405               <type name="int" c:type="gint"/>
57406             </parameter>
57407             <parameter name="width" transfer-ownership="none">
57408               <type name="int" c:type="gint"/>
57409             </parameter>
57410             <parameter name="height" transfer-ownership="none">
57411               <type name="int" c:type="gint"/>
57412             </parameter>
57413           </parameters>
57414         </callback>
57415       </field>
57416       <field name="draw_polygon">
57417         <callback name="draw_polygon" c:type="draw_polygon">
57418           <return-value transfer-ownership="none">
57419             <type name="none" c:type="void"/>
57420           </return-value>
57421           <parameters>
57422             <parameter name="style" transfer-ownership="none">
57423               <type name="Style" c:type="GtkStyle*"/>
57424             </parameter>
57425             <parameter name="window" transfer-ownership="none">
57426               <type name="Gdk.Window" c:type="GdkWindow*"/>
57427             </parameter>
57428             <parameter name="state_type" transfer-ownership="none">
57429               <type name="StateType" c:type="GtkStateType"/>
57430             </parameter>
57431             <parameter name="shadow_type" transfer-ownership="none">
57432               <type name="ShadowType" c:type="GtkShadowType"/>
57433             </parameter>
57434             <parameter name="area" transfer-ownership="none">
57435               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57436             </parameter>
57437             <parameter name="widget" transfer-ownership="none">
57438               <type name="Widget" c:type="GtkWidget*"/>
57439             </parameter>
57440             <parameter name="detail" transfer-ownership="none">
57441               <type name="utf8" c:type="gchar*"/>
57442             </parameter>
57443             <parameter name="point" transfer-ownership="none">
57444               <type name="Gdk.Point" c:type="GdkPoint*"/>
57445             </parameter>
57446             <parameter name="npoints" transfer-ownership="none">
57447               <type name="int" c:type="gint"/>
57448             </parameter>
57449             <parameter name="fill" transfer-ownership="none">
57450               <type name="boolean" c:type="gboolean"/>
57451             </parameter>
57452           </parameters>
57453         </callback>
57454       </field>
57455       <field name="draw_arrow">
57456         <callback name="draw_arrow" c:type="draw_arrow">
57457           <return-value transfer-ownership="none">
57458             <type name="none" c:type="void"/>
57459           </return-value>
57460           <parameters>
57461             <parameter name="style" transfer-ownership="none">
57462               <type name="Style" c:type="GtkStyle*"/>
57463             </parameter>
57464             <parameter name="window" transfer-ownership="none">
57465               <type name="Gdk.Window" c:type="GdkWindow*"/>
57466             </parameter>
57467             <parameter name="state_type" transfer-ownership="none">
57468               <type name="StateType" c:type="GtkStateType"/>
57469             </parameter>
57470             <parameter name="shadow_type" transfer-ownership="none">
57471               <type name="ShadowType" c:type="GtkShadowType"/>
57472             </parameter>
57473             <parameter name="area" transfer-ownership="none">
57474               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57475             </parameter>
57476             <parameter name="widget" transfer-ownership="none">
57477               <type name="Widget" c:type="GtkWidget*"/>
57478             </parameter>
57479             <parameter name="detail" transfer-ownership="none">
57480               <type name="utf8" c:type="gchar*"/>
57481             </parameter>
57482             <parameter name="arrow_type" transfer-ownership="none">
57483               <type name="ArrowType" c:type="GtkArrowType"/>
57484             </parameter>
57485             <parameter name="fill" transfer-ownership="none">
57486               <type name="boolean" c:type="gboolean"/>
57487             </parameter>
57488             <parameter name="x" transfer-ownership="none">
57489               <type name="int" c:type="gint"/>
57490             </parameter>
57491             <parameter name="y" transfer-ownership="none">
57492               <type name="int" c:type="gint"/>
57493             </parameter>
57494             <parameter name="width" transfer-ownership="none">
57495               <type name="int" c:type="gint"/>
57496             </parameter>
57497             <parameter name="height" transfer-ownership="none">
57498               <type name="int" c:type="gint"/>
57499             </parameter>
57500           </parameters>
57501         </callback>
57502       </field>
57503       <field name="draw_diamond">
57504         <callback name="draw_diamond" c:type="draw_diamond">
57505           <return-value transfer-ownership="none">
57506             <type name="none" c:type="void"/>
57507           </return-value>
57508           <parameters>
57509             <parameter name="style" transfer-ownership="none">
57510               <type name="Style" c:type="GtkStyle*"/>
57511             </parameter>
57512             <parameter name="window" transfer-ownership="none">
57513               <type name="Gdk.Window" c:type="GdkWindow*"/>
57514             </parameter>
57515             <parameter name="state_type" transfer-ownership="none">
57516               <type name="StateType" c:type="GtkStateType"/>
57517             </parameter>
57518             <parameter name="shadow_type" transfer-ownership="none">
57519               <type name="ShadowType" c:type="GtkShadowType"/>
57520             </parameter>
57521             <parameter name="area" transfer-ownership="none">
57522               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57523             </parameter>
57524             <parameter name="widget" transfer-ownership="none">
57525               <type name="Widget" c:type="GtkWidget*"/>
57526             </parameter>
57527             <parameter name="detail" transfer-ownership="none">
57528               <type name="utf8" c:type="gchar*"/>
57529             </parameter>
57530             <parameter name="x" transfer-ownership="none">
57531               <type name="int" c:type="gint"/>
57532             </parameter>
57533             <parameter name="y" transfer-ownership="none">
57534               <type name="int" c:type="gint"/>
57535             </parameter>
57536             <parameter name="width" transfer-ownership="none">
57537               <type name="int" c:type="gint"/>
57538             </parameter>
57539             <parameter name="height" transfer-ownership="none">
57540               <type name="int" c:type="gint"/>
57541             </parameter>
57542           </parameters>
57543         </callback>
57544       </field>
57545       <field name="draw_string">
57546         <callback name="draw_string" c:type="draw_string">
57547           <return-value transfer-ownership="none">
57548             <type name="none" c:type="void"/>
57549           </return-value>
57550           <parameters>
57551             <parameter name="style" transfer-ownership="none">
57552               <type name="Style" c:type="GtkStyle*"/>
57553             </parameter>
57554             <parameter name="window" transfer-ownership="none">
57555               <type name="Gdk.Window" c:type="GdkWindow*"/>
57556             </parameter>
57557             <parameter name="state_type" transfer-ownership="none">
57558               <type name="StateType" c:type="GtkStateType"/>
57559             </parameter>
57560             <parameter name="area" transfer-ownership="none">
57561               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57562             </parameter>
57563             <parameter name="widget" transfer-ownership="none">
57564               <type name="Widget" c:type="GtkWidget*"/>
57565             </parameter>
57566             <parameter name="detail" transfer-ownership="none">
57567               <type name="utf8" c:type="gchar*"/>
57568             </parameter>
57569             <parameter name="x" transfer-ownership="none">
57570               <type name="int" c:type="gint"/>
57571             </parameter>
57572             <parameter name="y" transfer-ownership="none">
57573               <type name="int" c:type="gint"/>
57574             </parameter>
57575             <parameter name="string" transfer-ownership="none">
57576               <type name="utf8" c:type="gchar*"/>
57577             </parameter>
57578           </parameters>
57579         </callback>
57580       </field>
57581       <field name="draw_box">
57582         <callback name="draw_box" c:type="draw_box">
57583           <return-value transfer-ownership="none">
57584             <type name="none" c:type="void"/>
57585           </return-value>
57586           <parameters>
57587             <parameter name="style" transfer-ownership="none">
57588               <type name="Style" c:type="GtkStyle*"/>
57589             </parameter>
57590             <parameter name="window" transfer-ownership="none">
57591               <type name="Gdk.Window" c:type="GdkWindow*"/>
57592             </parameter>
57593             <parameter name="state_type" transfer-ownership="none">
57594               <type name="StateType" c:type="GtkStateType"/>
57595             </parameter>
57596             <parameter name="shadow_type" transfer-ownership="none">
57597               <type name="ShadowType" c:type="GtkShadowType"/>
57598             </parameter>
57599             <parameter name="area" transfer-ownership="none">
57600               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57601             </parameter>
57602             <parameter name="widget" transfer-ownership="none">
57603               <type name="Widget" c:type="GtkWidget*"/>
57604             </parameter>
57605             <parameter name="detail" transfer-ownership="none">
57606               <type name="utf8" c:type="gchar*"/>
57607             </parameter>
57608             <parameter name="x" transfer-ownership="none">
57609               <type name="int" c:type="gint"/>
57610             </parameter>
57611             <parameter name="y" transfer-ownership="none">
57612               <type name="int" c:type="gint"/>
57613             </parameter>
57614             <parameter name="width" transfer-ownership="none">
57615               <type name="int" c:type="gint"/>
57616             </parameter>
57617             <parameter name="height" transfer-ownership="none">
57618               <type name="int" c:type="gint"/>
57619             </parameter>
57620           </parameters>
57621         </callback>
57622       </field>
57623       <field name="draw_flat_box">
57624         <callback name="draw_flat_box" c:type="draw_flat_box">
57625           <return-value transfer-ownership="none">
57626             <type name="none" c:type="void"/>
57627           </return-value>
57628           <parameters>
57629             <parameter name="style" transfer-ownership="none">
57630               <type name="Style" c:type="GtkStyle*"/>
57631             </parameter>
57632             <parameter name="window" transfer-ownership="none">
57633               <type name="Gdk.Window" c:type="GdkWindow*"/>
57634             </parameter>
57635             <parameter name="state_type" transfer-ownership="none">
57636               <type name="StateType" c:type="GtkStateType"/>
57637             </parameter>
57638             <parameter name="shadow_type" transfer-ownership="none">
57639               <type name="ShadowType" c:type="GtkShadowType"/>
57640             </parameter>
57641             <parameter name="area" transfer-ownership="none">
57642               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57643             </parameter>
57644             <parameter name="widget" transfer-ownership="none">
57645               <type name="Widget" c:type="GtkWidget*"/>
57646             </parameter>
57647             <parameter name="detail" transfer-ownership="none">
57648               <type name="utf8" c:type="gchar*"/>
57649             </parameter>
57650             <parameter name="x" transfer-ownership="none">
57651               <type name="int" c:type="gint"/>
57652             </parameter>
57653             <parameter name="y" transfer-ownership="none">
57654               <type name="int" c:type="gint"/>
57655             </parameter>
57656             <parameter name="width" transfer-ownership="none">
57657               <type name="int" c:type="gint"/>
57658             </parameter>
57659             <parameter name="height" transfer-ownership="none">
57660               <type name="int" c:type="gint"/>
57661             </parameter>
57662           </parameters>
57663         </callback>
57664       </field>
57665       <field name="draw_check">
57666         <callback name="draw_check" c:type="draw_check">
57667           <return-value transfer-ownership="none">
57668             <type name="none" c:type="void"/>
57669           </return-value>
57670           <parameters>
57671             <parameter name="style" transfer-ownership="none">
57672               <type name="Style" c:type="GtkStyle*"/>
57673             </parameter>
57674             <parameter name="window" transfer-ownership="none">
57675               <type name="Gdk.Window" c:type="GdkWindow*"/>
57676             </parameter>
57677             <parameter name="state_type" transfer-ownership="none">
57678               <type name="StateType" c:type="GtkStateType"/>
57679             </parameter>
57680             <parameter name="shadow_type" transfer-ownership="none">
57681               <type name="ShadowType" c:type="GtkShadowType"/>
57682             </parameter>
57683             <parameter name="area" transfer-ownership="none">
57684               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57685             </parameter>
57686             <parameter name="widget" transfer-ownership="none">
57687               <type name="Widget" c:type="GtkWidget*"/>
57688             </parameter>
57689             <parameter name="detail" transfer-ownership="none">
57690               <type name="utf8" c:type="gchar*"/>
57691             </parameter>
57692             <parameter name="x" transfer-ownership="none">
57693               <type name="int" c:type="gint"/>
57694             </parameter>
57695             <parameter name="y" transfer-ownership="none">
57696               <type name="int" c:type="gint"/>
57697             </parameter>
57698             <parameter name="width" transfer-ownership="none">
57699               <type name="int" c:type="gint"/>
57700             </parameter>
57701             <parameter name="height" transfer-ownership="none">
57702               <type name="int" c:type="gint"/>
57703             </parameter>
57704           </parameters>
57705         </callback>
57706       </field>
57707       <field name="draw_option">
57708         <callback name="draw_option" c:type="draw_option">
57709           <return-value transfer-ownership="none">
57710             <type name="none" c:type="void"/>
57711           </return-value>
57712           <parameters>
57713             <parameter name="style" transfer-ownership="none">
57714               <type name="Style" c:type="GtkStyle*"/>
57715             </parameter>
57716             <parameter name="window" transfer-ownership="none">
57717               <type name="Gdk.Window" c:type="GdkWindow*"/>
57718             </parameter>
57719             <parameter name="state_type" transfer-ownership="none">
57720               <type name="StateType" c:type="GtkStateType"/>
57721             </parameter>
57722             <parameter name="shadow_type" transfer-ownership="none">
57723               <type name="ShadowType" c:type="GtkShadowType"/>
57724             </parameter>
57725             <parameter name="area" transfer-ownership="none">
57726               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57727             </parameter>
57728             <parameter name="widget" transfer-ownership="none">
57729               <type name="Widget" c:type="GtkWidget*"/>
57730             </parameter>
57731             <parameter name="detail" transfer-ownership="none">
57732               <type name="utf8" c:type="gchar*"/>
57733             </parameter>
57734             <parameter name="x" transfer-ownership="none">
57735               <type name="int" c:type="gint"/>
57736             </parameter>
57737             <parameter name="y" transfer-ownership="none">
57738               <type name="int" c:type="gint"/>
57739             </parameter>
57740             <parameter name="width" transfer-ownership="none">
57741               <type name="int" c:type="gint"/>
57742             </parameter>
57743             <parameter name="height" transfer-ownership="none">
57744               <type name="int" c:type="gint"/>
57745             </parameter>
57746           </parameters>
57747         </callback>
57748       </field>
57749       <field name="draw_tab">
57750         <callback name="draw_tab" c:type="draw_tab">
57751           <return-value transfer-ownership="none">
57752             <type name="none" c:type="void"/>
57753           </return-value>
57754           <parameters>
57755             <parameter name="style" transfer-ownership="none">
57756               <type name="Style" c:type="GtkStyle*"/>
57757             </parameter>
57758             <parameter name="window" transfer-ownership="none">
57759               <type name="Gdk.Window" c:type="GdkWindow*"/>
57760             </parameter>
57761             <parameter name="state_type" transfer-ownership="none">
57762               <type name="StateType" c:type="GtkStateType"/>
57763             </parameter>
57764             <parameter name="shadow_type" transfer-ownership="none">
57765               <type name="ShadowType" c:type="GtkShadowType"/>
57766             </parameter>
57767             <parameter name="area" transfer-ownership="none">
57768               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57769             </parameter>
57770             <parameter name="widget" transfer-ownership="none">
57771               <type name="Widget" c:type="GtkWidget*"/>
57772             </parameter>
57773             <parameter name="detail" transfer-ownership="none">
57774               <type name="utf8" c:type="gchar*"/>
57775             </parameter>
57776             <parameter name="x" transfer-ownership="none">
57777               <type name="int" c:type="gint"/>
57778             </parameter>
57779             <parameter name="y" transfer-ownership="none">
57780               <type name="int" c:type="gint"/>
57781             </parameter>
57782             <parameter name="width" transfer-ownership="none">
57783               <type name="int" c:type="gint"/>
57784             </parameter>
57785             <parameter name="height" transfer-ownership="none">
57786               <type name="int" c:type="gint"/>
57787             </parameter>
57788           </parameters>
57789         </callback>
57790       </field>
57791       <field name="draw_shadow_gap">
57792         <callback name="draw_shadow_gap" c:type="draw_shadow_gap">
57793           <return-value transfer-ownership="none">
57794             <type name="none" c:type="void"/>
57795           </return-value>
57796           <parameters>
57797             <parameter name="style" transfer-ownership="none">
57798               <type name="Style" c:type="GtkStyle*"/>
57799             </parameter>
57800             <parameter name="window" transfer-ownership="none">
57801               <type name="Gdk.Window" c:type="GdkWindow*"/>
57802             </parameter>
57803             <parameter name="state_type" transfer-ownership="none">
57804               <type name="StateType" c:type="GtkStateType"/>
57805             </parameter>
57806             <parameter name="shadow_type" transfer-ownership="none">
57807               <type name="ShadowType" c:type="GtkShadowType"/>
57808             </parameter>
57809             <parameter name="area" transfer-ownership="none">
57810               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57811             </parameter>
57812             <parameter name="widget" transfer-ownership="none">
57813               <type name="Widget" c:type="GtkWidget*"/>
57814             </parameter>
57815             <parameter name="detail" transfer-ownership="none">
57816               <type name="utf8" c:type="gchar*"/>
57817             </parameter>
57818             <parameter name="x" transfer-ownership="none">
57819               <type name="int" c:type="gint"/>
57820             </parameter>
57821             <parameter name="y" transfer-ownership="none">
57822               <type name="int" c:type="gint"/>
57823             </parameter>
57824             <parameter name="width" transfer-ownership="none">
57825               <type name="int" c:type="gint"/>
57826             </parameter>
57827             <parameter name="height" transfer-ownership="none">
57828               <type name="int" c:type="gint"/>
57829             </parameter>
57830             <parameter name="gap_side" transfer-ownership="none">
57831               <type name="PositionType" c:type="GtkPositionType"/>
57832             </parameter>
57833             <parameter name="gap_x" transfer-ownership="none">
57834               <type name="int" c:type="gint"/>
57835             </parameter>
57836             <parameter name="gap_width" transfer-ownership="none">
57837               <type name="int" c:type="gint"/>
57838             </parameter>
57839           </parameters>
57840         </callback>
57841       </field>
57842       <field name="draw_box_gap">
57843         <callback name="draw_box_gap" c:type="draw_box_gap">
57844           <return-value transfer-ownership="none">
57845             <type name="none" c:type="void"/>
57846           </return-value>
57847           <parameters>
57848             <parameter name="style" transfer-ownership="none">
57849               <type name="Style" c:type="GtkStyle*"/>
57850             </parameter>
57851             <parameter name="window" transfer-ownership="none">
57852               <type name="Gdk.Window" c:type="GdkWindow*"/>
57853             </parameter>
57854             <parameter name="state_type" transfer-ownership="none">
57855               <type name="StateType" c:type="GtkStateType"/>
57856             </parameter>
57857             <parameter name="shadow_type" transfer-ownership="none">
57858               <type name="ShadowType" c:type="GtkShadowType"/>
57859             </parameter>
57860             <parameter name="area" transfer-ownership="none">
57861               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57862             </parameter>
57863             <parameter name="widget" transfer-ownership="none">
57864               <type name="Widget" c:type="GtkWidget*"/>
57865             </parameter>
57866             <parameter name="detail" transfer-ownership="none">
57867               <type name="utf8" c:type="gchar*"/>
57868             </parameter>
57869             <parameter name="x" transfer-ownership="none">
57870               <type name="int" c:type="gint"/>
57871             </parameter>
57872             <parameter name="y" transfer-ownership="none">
57873               <type name="int" c:type="gint"/>
57874             </parameter>
57875             <parameter name="width" transfer-ownership="none">
57876               <type name="int" c:type="gint"/>
57877             </parameter>
57878             <parameter name="height" transfer-ownership="none">
57879               <type name="int" c:type="gint"/>
57880             </parameter>
57881             <parameter name="gap_side" transfer-ownership="none">
57882               <type name="PositionType" c:type="GtkPositionType"/>
57883             </parameter>
57884             <parameter name="gap_x" transfer-ownership="none">
57885               <type name="int" c:type="gint"/>
57886             </parameter>
57887             <parameter name="gap_width" transfer-ownership="none">
57888               <type name="int" c:type="gint"/>
57889             </parameter>
57890           </parameters>
57891         </callback>
57892       </field>
57893       <field name="draw_extension">
57894         <callback name="draw_extension" c:type="draw_extension">
57895           <return-value transfer-ownership="none">
57896             <type name="none" c:type="void"/>
57897           </return-value>
57898           <parameters>
57899             <parameter name="style" transfer-ownership="none">
57900               <type name="Style" c:type="GtkStyle*"/>
57901             </parameter>
57902             <parameter name="window" transfer-ownership="none">
57903               <type name="Gdk.Window" c:type="GdkWindow*"/>
57904             </parameter>
57905             <parameter name="state_type" transfer-ownership="none">
57906               <type name="StateType" c:type="GtkStateType"/>
57907             </parameter>
57908             <parameter name="shadow_type" transfer-ownership="none">
57909               <type name="ShadowType" c:type="GtkShadowType"/>
57910             </parameter>
57911             <parameter name="area" transfer-ownership="none">
57912               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57913             </parameter>
57914             <parameter name="widget" transfer-ownership="none">
57915               <type name="Widget" c:type="GtkWidget*"/>
57916             </parameter>
57917             <parameter name="detail" transfer-ownership="none">
57918               <type name="utf8" c:type="gchar*"/>
57919             </parameter>
57920             <parameter name="x" transfer-ownership="none">
57921               <type name="int" c:type="gint"/>
57922             </parameter>
57923             <parameter name="y" transfer-ownership="none">
57924               <type name="int" c:type="gint"/>
57925             </parameter>
57926             <parameter name="width" transfer-ownership="none">
57927               <type name="int" c:type="gint"/>
57928             </parameter>
57929             <parameter name="height" transfer-ownership="none">
57930               <type name="int" c:type="gint"/>
57931             </parameter>
57932             <parameter name="gap_side" transfer-ownership="none">
57933               <type name="PositionType" c:type="GtkPositionType"/>
57934             </parameter>
57935           </parameters>
57936         </callback>
57937       </field>
57938       <field name="draw_focus">
57939         <callback name="draw_focus" c:type="draw_focus">
57940           <return-value transfer-ownership="none">
57941             <type name="none" c:type="void"/>
57942           </return-value>
57943           <parameters>
57944             <parameter name="style" transfer-ownership="none">
57945               <type name="Style" c:type="GtkStyle*"/>
57946             </parameter>
57947             <parameter name="window" transfer-ownership="none">
57948               <type name="Gdk.Window" c:type="GdkWindow*"/>
57949             </parameter>
57950             <parameter name="state_type" transfer-ownership="none">
57951               <type name="StateType" c:type="GtkStateType"/>
57952             </parameter>
57953             <parameter name="area" transfer-ownership="none">
57954               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57955             </parameter>
57956             <parameter name="widget" transfer-ownership="none">
57957               <type name="Widget" c:type="GtkWidget*"/>
57958             </parameter>
57959             <parameter name="detail" transfer-ownership="none">
57960               <type name="utf8" c:type="gchar*"/>
57961             </parameter>
57962             <parameter name="x" transfer-ownership="none">
57963               <type name="int" c:type="gint"/>
57964             </parameter>
57965             <parameter name="y" transfer-ownership="none">
57966               <type name="int" c:type="gint"/>
57967             </parameter>
57968             <parameter name="width" transfer-ownership="none">
57969               <type name="int" c:type="gint"/>
57970             </parameter>
57971             <parameter name="height" transfer-ownership="none">
57972               <type name="int" c:type="gint"/>
57973             </parameter>
57974           </parameters>
57975         </callback>
57976       </field>
57977       <field name="draw_slider">
57978         <callback name="draw_slider" c:type="draw_slider">
57979           <return-value transfer-ownership="none">
57980             <type name="none" c:type="void"/>
57981           </return-value>
57982           <parameters>
57983             <parameter name="style" transfer-ownership="none">
57984               <type name="Style" c:type="GtkStyle*"/>
57985             </parameter>
57986             <parameter name="window" transfer-ownership="none">
57987               <type name="Gdk.Window" c:type="GdkWindow*"/>
57988             </parameter>
57989             <parameter name="state_type" transfer-ownership="none">
57990               <type name="StateType" c:type="GtkStateType"/>
57991             </parameter>
57992             <parameter name="shadow_type" transfer-ownership="none">
57993               <type name="ShadowType" c:type="GtkShadowType"/>
57994             </parameter>
57995             <parameter name="area" transfer-ownership="none">
57996               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
57997             </parameter>
57998             <parameter name="widget" transfer-ownership="none">
57999               <type name="Widget" c:type="GtkWidget*"/>
58000             </parameter>
58001             <parameter name="detail" transfer-ownership="none">
58002               <type name="utf8" c:type="gchar*"/>
58003             </parameter>
58004             <parameter name="x" transfer-ownership="none">
58005               <type name="int" c:type="gint"/>
58006             </parameter>
58007             <parameter name="y" transfer-ownership="none">
58008               <type name="int" c:type="gint"/>
58009             </parameter>
58010             <parameter name="width" transfer-ownership="none">
58011               <type name="int" c:type="gint"/>
58012             </parameter>
58013             <parameter name="height" transfer-ownership="none">
58014               <type name="int" c:type="gint"/>
58015             </parameter>
58016             <parameter name="orientation" transfer-ownership="none">
58017               <type name="Orientation" c:type="GtkOrientation"/>
58018             </parameter>
58019           </parameters>
58020         </callback>
58021       </field>
58022       <field name="draw_handle">
58023         <callback name="draw_handle" c:type="draw_handle">
58024           <return-value transfer-ownership="none">
58025             <type name="none" c:type="void"/>
58026           </return-value>
58027           <parameters>
58028             <parameter name="style" transfer-ownership="none">
58029               <type name="Style" c:type="GtkStyle*"/>
58030             </parameter>
58031             <parameter name="window" transfer-ownership="none">
58032               <type name="Gdk.Window" c:type="GdkWindow*"/>
58033             </parameter>
58034             <parameter name="state_type" transfer-ownership="none">
58035               <type name="StateType" c:type="GtkStateType"/>
58036             </parameter>
58037             <parameter name="shadow_type" transfer-ownership="none">
58038               <type name="ShadowType" c:type="GtkShadowType"/>
58039             </parameter>
58040             <parameter name="area" transfer-ownership="none">
58041               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
58042             </parameter>
58043             <parameter name="widget" transfer-ownership="none">
58044               <type name="Widget" c:type="GtkWidget*"/>
58045             </parameter>
58046             <parameter name="detail" transfer-ownership="none">
58047               <type name="utf8" c:type="gchar*"/>
58048             </parameter>
58049             <parameter name="x" transfer-ownership="none">
58050               <type name="int" c:type="gint"/>
58051             </parameter>
58052             <parameter name="y" transfer-ownership="none">
58053               <type name="int" c:type="gint"/>
58054             </parameter>
58055             <parameter name="width" transfer-ownership="none">
58056               <type name="int" c:type="gint"/>
58057             </parameter>
58058             <parameter name="height" transfer-ownership="none">
58059               <type name="int" c:type="gint"/>
58060             </parameter>
58061             <parameter name="orientation" transfer-ownership="none">
58062               <type name="Orientation" c:type="GtkOrientation"/>
58063             </parameter>
58064           </parameters>
58065         </callback>
58066       </field>
58067       <field name="draw_expander">
58068         <callback name="draw_expander" c:type="draw_expander">
58069           <return-value transfer-ownership="none">
58070             <type name="none" c:type="void"/>
58071           </return-value>
58072           <parameters>
58073             <parameter name="style" transfer-ownership="none">
58074               <type name="Style" c:type="GtkStyle*"/>
58075             </parameter>
58076             <parameter name="window" transfer-ownership="none">
58077               <type name="Gdk.Window" c:type="GdkWindow*"/>
58078             </parameter>
58079             <parameter name="state_type" transfer-ownership="none">
58080               <type name="StateType" c:type="GtkStateType"/>
58081             </parameter>
58082             <parameter name="area" transfer-ownership="none">
58083               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
58084             </parameter>
58085             <parameter name="widget" transfer-ownership="none">
58086               <type name="Widget" c:type="GtkWidget*"/>
58087             </parameter>
58088             <parameter name="detail" transfer-ownership="none">
58089               <type name="utf8" c:type="gchar*"/>
58090             </parameter>
58091             <parameter name="x" transfer-ownership="none">
58092               <type name="int" c:type="gint"/>
58093             </parameter>
58094             <parameter name="y" transfer-ownership="none">
58095               <type name="int" c:type="gint"/>
58096             </parameter>
58097             <parameter name="expander_style" transfer-ownership="none">
58098               <type name="ExpanderStyle" c:type="GtkExpanderStyle"/>
58099             </parameter>
58100           </parameters>
58101         </callback>
58102       </field>
58103       <field name="draw_layout">
58104         <callback name="draw_layout" c:type="draw_layout">
58105           <return-value transfer-ownership="none">
58106             <type name="none" c:type="void"/>
58107           </return-value>
58108           <parameters>
58109             <parameter name="style" transfer-ownership="none">
58110               <type name="Style" c:type="GtkStyle*"/>
58111             </parameter>
58112             <parameter name="window" transfer-ownership="none">
58113               <type name="Gdk.Window" c:type="GdkWindow*"/>
58114             </parameter>
58115             <parameter name="state_type" transfer-ownership="none">
58116               <type name="StateType" c:type="GtkStateType"/>
58117             </parameter>
58118             <parameter name="use_text" transfer-ownership="none">
58119               <type name="boolean" c:type="gboolean"/>
58120             </parameter>
58121             <parameter name="area" transfer-ownership="none">
58122               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
58123             </parameter>
58124             <parameter name="widget" transfer-ownership="none">
58125               <type name="Widget" c:type="GtkWidget*"/>
58126             </parameter>
58127             <parameter name="detail" transfer-ownership="none">
58128               <type name="utf8" c:type="gchar*"/>
58129             </parameter>
58130             <parameter name="x" transfer-ownership="none">
58131               <type name="int" c:type="gint"/>
58132             </parameter>
58133             <parameter name="y" transfer-ownership="none">
58134               <type name="int" c:type="gint"/>
58135             </parameter>
58136             <parameter name="layout" transfer-ownership="none">
58137               <type name="Pango.Layout" c:type="PangoLayout*"/>
58138             </parameter>
58139           </parameters>
58140         </callback>
58141       </field>
58142       <field name="draw_resize_grip">
58143         <callback name="draw_resize_grip" c:type="draw_resize_grip">
58144           <return-value transfer-ownership="none">
58145             <type name="none" c:type="void"/>
58146           </return-value>
58147           <parameters>
58148             <parameter name="style" transfer-ownership="none">
58149               <type name="Style" c:type="GtkStyle*"/>
58150             </parameter>
58151             <parameter name="window" transfer-ownership="none">
58152               <type name="Gdk.Window" c:type="GdkWindow*"/>
58153             </parameter>
58154             <parameter name="state_type" transfer-ownership="none">
58155               <type name="StateType" c:type="GtkStateType"/>
58156             </parameter>
58157             <parameter name="area" transfer-ownership="none">
58158               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
58159             </parameter>
58160             <parameter name="widget" transfer-ownership="none">
58161               <type name="Widget" c:type="GtkWidget*"/>
58162             </parameter>
58163             <parameter name="detail" transfer-ownership="none">
58164               <type name="utf8" c:type="gchar*"/>
58165             </parameter>
58166             <parameter name="edge" transfer-ownership="none">
58167               <type name="Gdk.WindowEdge" c:type="GdkWindowEdge"/>
58168             </parameter>
58169             <parameter name="x" transfer-ownership="none">
58170               <type name="int" c:type="gint"/>
58171             </parameter>
58172             <parameter name="y" transfer-ownership="none">
58173               <type name="int" c:type="gint"/>
58174             </parameter>
58175             <parameter name="width" transfer-ownership="none">
58176               <type name="int" c:type="gint"/>
58177             </parameter>
58178             <parameter name="height" transfer-ownership="none">
58179               <type name="int" c:type="gint"/>
58180             </parameter>
58181           </parameters>
58182         </callback>
58183       </field>
58184       <field name="draw_spinner">
58185         <callback name="draw_spinner" c:type="draw_spinner">
58186           <return-value transfer-ownership="none">
58187             <type name="none" c:type="void"/>
58188           </return-value>
58189           <parameters>
58190             <parameter name="style" transfer-ownership="none">
58191               <type name="Style" c:type="GtkStyle*"/>
58192             </parameter>
58193             <parameter name="window" transfer-ownership="none">
58194               <type name="Gdk.Window" c:type="GdkWindow*"/>
58195             </parameter>
58196             <parameter name="state_type" transfer-ownership="none">
58197               <type name="StateType" c:type="GtkStateType"/>
58198             </parameter>
58199             <parameter name="area" transfer-ownership="none">
58200               <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
58201             </parameter>
58202             <parameter name="widget" transfer-ownership="none">
58203               <type name="Widget" c:type="GtkWidget*"/>
58204             </parameter>
58205             <parameter name="detail" transfer-ownership="none">
58206               <type name="utf8" c:type="gchar*"/>
58207             </parameter>
58208             <parameter name="step" transfer-ownership="none">
58209               <type name="uint" c:type="guint"/>
58210             </parameter>
58211             <parameter name="x" transfer-ownership="none">
58212               <type name="int" c:type="gint"/>
58213             </parameter>
58214             <parameter name="y" transfer-ownership="none">
58215               <type name="int" c:type="gint"/>
58216             </parameter>
58217             <parameter name="width" transfer-ownership="none">
58218               <type name="int" c:type="gint"/>
58219             </parameter>
58220             <parameter name="height" transfer-ownership="none">
58221               <type name="int" c:type="gint"/>
58222             </parameter>
58223           </parameters>
58224         </callback>
58225       </field>
58226       <field name="gtk_reserved1">
58227         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
58228           <return-value transfer-ownership="none">
58229             <type name="none" c:type="void"/>
58230           </return-value>
58231         </callback>
58232       </field>
58233       <field name="gtk_reserved2">
58234         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
58235           <return-value transfer-ownership="none">
58236             <type name="none" c:type="void"/>
58237           </return-value>
58238         </callback>
58239       </field>
58240       <field name="gtk_reserved3">
58241         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
58242           <return-value transfer-ownership="none">
58243             <type name="none" c:type="void"/>
58244           </return-value>
58245         </callback>
58246       </field>
58247       <field name="gtk_reserved4">
58248         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
58249           <return-value transfer-ownership="none">
58250             <type name="none" c:type="void"/>
58251           </return-value>
58252         </callback>
58253       </field>
58254       <field name="gtk_reserved5">
58255         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
58256           <return-value transfer-ownership="none">
58257             <type name="none" c:type="void"/>
58258           </return-value>
58259         </callback>
58260       </field>
58261       <field name="gtk_reserved6">
58262         <callback name="gtk_reserved6" c:type="_gtk_reserved6">
58263           <return-value transfer-ownership="none">
58264             <type name="none" c:type="void"/>
58265           </return-value>
58266         </callback>
58267       </field>
58268       <field name="gtk_reserved7">
58269         <callback name="gtk_reserved7" c:type="_gtk_reserved7">
58270           <return-value transfer-ownership="none">
58271             <type name="none" c:type="void"/>
58272           </return-value>
58273         </callback>
58274       </field>
58275       <field name="gtk_reserved8">
58276         <callback name="gtk_reserved8" c:type="_gtk_reserved8">
58277           <return-value transfer-ownership="none">
58278             <type name="none" c:type="void"/>
58279           </return-value>
58280         </callback>
58281       </field>
58282       <field name="gtk_reserved9">
58283         <callback name="gtk_reserved9" c:type="_gtk_reserved9">
58284           <return-value transfer-ownership="none">
58285             <type name="none" c:type="void"/>
58286           </return-value>
58287         </callback>
58288       </field>
58289       <field name="gtk_reserved10">
58290         <callback name="gtk_reserved10" c:type="_gtk_reserved10">
58291           <return-value transfer-ownership="none">
58292             <type name="none" c:type="void"/>
58293           </return-value>
58294         </callback>
58295       </field>
58296       <field name="gtk_reserved11">
58297         <callback name="gtk_reserved11" c:type="_gtk_reserved11">
58298           <return-value transfer-ownership="none">
58299             <type name="none" c:type="void"/>
58300           </return-value>
58301         </callback>
58302       </field>
58303     </record>
58304     <enumeration name="SubmenuDirection"
58305                  glib:type-name="GtkSubmenuDirection"
58306                  glib:get-type="gtk_submenu_direction_get_type"
58307                  c:type="GtkSubmenuDirection">
58308       <member name="left"
58309               value="0"
58310               c:identifier="GTK_DIRECTION_LEFT"
58311               glib:nick="left"/>
58312       <member name="right"
58313               value="1"
58314               c:identifier="GTK_DIRECTION_RIGHT"
58315               glib:nick="right"/>
58316     </enumeration>
58317     <enumeration name="SubmenuPlacement"
58318                  glib:type-name="GtkSubmenuPlacement"
58319                  glib:get-type="gtk_submenu_placement_get_type"
58320                  c:type="GtkSubmenuPlacement">
58321       <member name="top_bottom"
58322               value="0"
58323               c:identifier="GTK_TOP_BOTTOM"
58324               glib:nick="top-bottom"/>
58325       <member name="left_right"
58326               value="1"
58327               c:identifier="GTK_LEFT_RIGHT"
58328               glib:nick="left-right"/>
58329     </enumeration>
58330     <constant name="TEXT_VIEW_PRIORITY_VALIDATE" value="5">
58331       <type name="int"/>
58332     </constant>
58333     <constant name="TYPE_FUNDAMENTAL_LAST" value="-1">
58334       <type name="int"/>
58335     </constant>
58336     <class name="Table"
58337            c:type="GtkTable"
58338            parent="Container"
58339            glib:type-name="GtkTable"
58340            glib:get-type="gtk_table_get_type"
58341            glib:type-struct="TableClass">
58342       <implements name="Atk.ImplementorIface"/>
58343       <implements name="Buildable"/>
58344       <constructor name="new" c:identifier="gtk_table_new">
58345         <return-value transfer-ownership="full">
58346           <type name="Table" c:type="GtkWidget*"/>
58347         </return-value>
58348         <parameters>
58349           <parameter name="rows" transfer-ownership="none">
58350             <type name="uint" c:type="guint"/>
58351           </parameter>
58352           <parameter name="columns" transfer-ownership="none">
58353             <type name="uint" c:type="guint"/>
58354           </parameter>
58355           <parameter name="homogeneous" transfer-ownership="none">
58356             <type name="boolean" c:type="gboolean"/>
58357           </parameter>
58358         </parameters>
58359       </constructor>
58360       <method name="resize" c:identifier="gtk_table_resize">
58361         <return-value transfer-ownership="none">
58362           <type name="none" c:type="void"/>
58363         </return-value>
58364         <parameters>
58365           <parameter name="rows" transfer-ownership="none">
58366             <type name="uint" c:type="guint"/>
58367           </parameter>
58368           <parameter name="columns" transfer-ownership="none">
58369             <type name="uint" c:type="guint"/>
58370           </parameter>
58371         </parameters>
58372       </method>
58373       <method name="attach" c:identifier="gtk_table_attach">
58374         <return-value transfer-ownership="none">
58375           <type name="none" c:type="void"/>
58376         </return-value>
58377         <parameters>
58378           <parameter name="child" transfer-ownership="none">
58379             <type name="Widget" c:type="GtkWidget*"/>
58380           </parameter>
58381           <parameter name="left_attach" transfer-ownership="none">
58382             <type name="uint" c:type="guint"/>
58383           </parameter>
58384           <parameter name="right_attach" transfer-ownership="none">
58385             <type name="uint" c:type="guint"/>
58386           </parameter>
58387           <parameter name="top_attach" transfer-ownership="none">
58388             <type name="uint" c:type="guint"/>
58389           </parameter>
58390           <parameter name="bottom_attach" transfer-ownership="none">
58391             <type name="uint" c:type="guint"/>
58392           </parameter>
58393           <parameter name="xoptions" transfer-ownership="none">
58394             <type name="AttachOptions" c:type="GtkAttachOptions"/>
58395           </parameter>
58396           <parameter name="yoptions" transfer-ownership="none">
58397             <type name="AttachOptions" c:type="GtkAttachOptions"/>
58398           </parameter>
58399           <parameter name="xpadding" transfer-ownership="none">
58400             <type name="uint" c:type="guint"/>
58401           </parameter>
58402           <parameter name="ypadding" transfer-ownership="none">
58403             <type name="uint" c:type="guint"/>
58404           </parameter>
58405         </parameters>
58406       </method>
58407       <method name="attach_defaults" c:identifier="gtk_table_attach_defaults">
58408         <return-value transfer-ownership="none">
58409           <type name="none" c:type="void"/>
58410         </return-value>
58411         <parameters>
58412           <parameter name="widget" transfer-ownership="none">
58413             <type name="Widget" c:type="GtkWidget*"/>
58414           </parameter>
58415           <parameter name="left_attach" transfer-ownership="none">
58416             <type name="uint" c:type="guint"/>
58417           </parameter>
58418           <parameter name="right_attach" transfer-ownership="none">
58419             <type name="uint" c:type="guint"/>
58420           </parameter>
58421           <parameter name="top_attach" transfer-ownership="none">
58422             <type name="uint" c:type="guint"/>
58423           </parameter>
58424           <parameter name="bottom_attach" transfer-ownership="none">
58425             <type name="uint" c:type="guint"/>
58426           </parameter>
58427         </parameters>
58428       </method>
58429       <method name="set_row_spacing" c:identifier="gtk_table_set_row_spacing">
58430         <return-value transfer-ownership="none">
58431           <type name="none" c:type="void"/>
58432         </return-value>
58433         <parameters>
58434           <parameter name="row" transfer-ownership="none">
58435             <type name="uint" c:type="guint"/>
58436           </parameter>
58437           <parameter name="spacing" transfer-ownership="none">
58438             <type name="uint" c:type="guint"/>
58439           </parameter>
58440         </parameters>
58441       </method>
58442       <method name="get_row_spacing" c:identifier="gtk_table_get_row_spacing">
58443         <doc xml:whitespace="preserve">Gets the amount of space between row @row, and
58444 row @row + 1. See gtk_table_set_row_spacing().</doc>
58445         <return-value transfer-ownership="none">
58446           <doc xml:whitespace="preserve">the row spacing</doc>
58447           <type name="uint" c:type="guint"/>
58448         </return-value>
58449         <parameters>
58450           <parameter name="row" transfer-ownership="none">
58451             <doc xml:whitespace="preserve">a row in the table, 0 indicates the first row</doc>
58452             <type name="uint" c:type="guint"/>
58453           </parameter>
58454         </parameters>
58455       </method>
58456       <method name="set_col_spacing" c:identifier="gtk_table_set_col_spacing">
58457         <return-value transfer-ownership="none">
58458           <type name="none" c:type="void"/>
58459         </return-value>
58460         <parameters>
58461           <parameter name="column" transfer-ownership="none">
58462             <type name="uint" c:type="guint"/>
58463           </parameter>
58464           <parameter name="spacing" transfer-ownership="none">
58465             <type name="uint" c:type="guint"/>
58466           </parameter>
58467         </parameters>
58468       </method>
58469       <method name="get_col_spacing" c:identifier="gtk_table_get_col_spacing">
58470         <doc xml:whitespace="preserve">Gets the amount of space between column @col, and
58471 column @col + 1. See gtk_table_set_col_spacing().</doc>
58472         <return-value transfer-ownership="none">
58473           <doc xml:whitespace="preserve">the column spacing</doc>
58474           <type name="uint" c:type="guint"/>
58475         </return-value>
58476         <parameters>
58477           <parameter name="column" transfer-ownership="none">
58478             <doc xml:whitespace="preserve">a column in the table, 0 indicates the first column</doc>
58479             <type name="uint" c:type="guint"/>
58480           </parameter>
58481         </parameters>
58482       </method>
58483       <method name="set_row_spacings"
58484               c:identifier="gtk_table_set_row_spacings">
58485         <return-value transfer-ownership="none">
58486           <type name="none" c:type="void"/>
58487         </return-value>
58488         <parameters>
58489           <parameter name="spacing" transfer-ownership="none">
58490             <type name="uint" c:type="guint"/>
58491           </parameter>
58492         </parameters>
58493       </method>
58494       <method name="get_default_row_spacing"
58495               c:identifier="gtk_table_get_default_row_spacing">
58496         <doc xml:whitespace="preserve">Gets the default row spacing for the table. This is
58497 the spacing that will be used for newly added rows.
58498 (See gtk_table_set_row_spacings())</doc>
58499         <return-value transfer-ownership="none">
58500           <doc xml:whitespace="preserve">the default row spacing</doc>
58501           <type name="uint" c:type="guint"/>
58502         </return-value>
58503       </method>
58504       <method name="set_col_spacings"
58505               c:identifier="gtk_table_set_col_spacings">
58506         <return-value transfer-ownership="none">
58507           <type name="none" c:type="void"/>
58508         </return-value>
58509         <parameters>
58510           <parameter name="spacing" transfer-ownership="none">
58511             <type name="uint" c:type="guint"/>
58512           </parameter>
58513         </parameters>
58514       </method>
58515       <method name="get_default_col_spacing"
58516               c:identifier="gtk_table_get_default_col_spacing">
58517         <doc xml:whitespace="preserve">Gets the default column spacing for the table. This is
58518 the spacing that will be used for newly added columns.
58519 (See gtk_table_set_col_spacings())</doc>
58520         <return-value transfer-ownership="none">
58521           <doc xml:whitespace="preserve">the default column spacing</doc>
58522           <type name="uint" c:type="guint"/>
58523         </return-value>
58524       </method>
58525       <method name="set_homogeneous" c:identifier="gtk_table_set_homogeneous">
58526         <return-value transfer-ownership="none">
58527           <type name="none" c:type="void"/>
58528         </return-value>
58529         <parameters>
58530           <parameter name="homogeneous" transfer-ownership="none">
58531             <type name="boolean" c:type="gboolean"/>
58532           </parameter>
58533         </parameters>
58534       </method>
58535       <method name="get_homogeneous" c:identifier="gtk_table_get_homogeneous">
58536         <doc xml:whitespace="preserve">Returns whether the table cells are all constrained to the same
58537 width and height. (See gtk_table_set_homogenous ())</doc>
58538         <return-value transfer-ownership="none">
58539           <doc xml:whitespace="preserve">%TRUE if the cells are all constrained to the same size</doc>
58540           <type name="boolean" c:type="gboolean"/>
58541         </return-value>
58542       </method>
58543       <property name="column-spacing" writable="1" transfer-ownership="none">
58544         <type name="uint" c:type="guint"/>
58545       </property>
58546       <property name="homogeneous" writable="1" transfer-ownership="none">
58547         <type name="boolean" c:type="gboolean"/>
58548       </property>
58549       <property name="n-columns" writable="1" transfer-ownership="none">
58550         <type name="uint" c:type="guint"/>
58551       </property>
58552       <property name="n-rows" writable="1" transfer-ownership="none">
58553         <type name="uint" c:type="guint"/>
58554       </property>
58555       <property name="row-spacing" writable="1" transfer-ownership="none">
58556         <type name="uint" c:type="guint"/>
58557       </property>
58558       <field name="container">
58559         <type name="Container" c:type="GtkContainer"/>
58560       </field>
58561       <field name="children">
58562         <type name="GLib.List" c:type="GList*">
58563           <type name="any" c:type="gpointer"/>
58564         </type>
58565       </field>
58566       <field name="rows">
58567         <type name="TableRowCol" c:type="GtkTableRowCol*"/>
58568       </field>
58569       <field name="cols">
58570         <type name="TableRowCol" c:type="GtkTableRowCol*"/>
58571       </field>
58572       <field name="nrows">
58573         <type name="uint16" c:type="guint16"/>
58574       </field>
58575       <field name="ncols">
58576         <type name="uint16" c:type="guint16"/>
58577       </field>
58578       <field name="column_spacing">
58579         <type name="uint16" c:type="guint16"/>
58580       </field>
58581       <field name="row_spacing">
58582         <type name="uint16" c:type="guint16"/>
58583       </field>
58584       <field name="homogeneous" bits="1">
58585         <type name="uint" c:type="guint"/>
58586       </field>
58587     </class>
58588     <record name="TableChild" c:type="GtkTableChild">
58589       <field name="widget" writable="1">
58590         <type name="Widget" c:type="GtkWidget*"/>
58591       </field>
58592       <field name="left_attach" writable="1">
58593         <type name="uint16" c:type="guint16"/>
58594       </field>
58595       <field name="right_attach" writable="1">
58596         <type name="uint16" c:type="guint16"/>
58597       </field>
58598       <field name="top_attach" writable="1">
58599         <type name="uint16" c:type="guint16"/>
58600       </field>
58601       <field name="bottom_attach" writable="1">
58602         <type name="uint16" c:type="guint16"/>
58603       </field>
58604       <field name="xpadding" writable="1">
58605         <type name="uint16" c:type="guint16"/>
58606       </field>
58607       <field name="ypadding" writable="1">
58608         <type name="uint16" c:type="guint16"/>
58609       </field>
58610       <field name="xexpand" writable="1" bits="1">
58611         <type name="uint" c:type="guint"/>
58612       </field>
58613       <field name="yexpand" writable="1" bits="1">
58614         <type name="uint" c:type="guint"/>
58615       </field>
58616       <field name="xshrink" writable="1" bits="1">
58617         <type name="uint" c:type="guint"/>
58618       </field>
58619       <field name="yshrink" writable="1" bits="1">
58620         <type name="uint" c:type="guint"/>
58621       </field>
58622       <field name="xfill" writable="1" bits="1">
58623         <type name="uint" c:type="guint"/>
58624       </field>
58625       <field name="yfill" writable="1" bits="1">
58626         <type name="uint" c:type="guint"/>
58627       </field>
58628     </record>
58629     <record name="TableClass"
58630             c:type="GtkTableClass"
58631             glib:is-gtype-struct-for="Table">
58632       <field name="parent_class">
58633         <type name="ContainerClass" c:type="GtkContainerClass"/>
58634       </field>
58635     </record>
58636     <record name="TableRowCol" c:type="GtkTableRowCol">
58637       <field name="requisition" writable="1">
58638         <type name="uint16" c:type="guint16"/>
58639       </field>
58640       <field name="allocation" writable="1">
58641         <type name="uint16" c:type="guint16"/>
58642       </field>
58643       <field name="spacing" writable="1">
58644         <type name="uint16" c:type="guint16"/>
58645       </field>
58646       <field name="need_expand" writable="1" bits="1">
58647         <type name="uint" c:type="guint"/>
58648       </field>
58649       <field name="need_shrink" writable="1" bits="1">
58650         <type name="uint" c:type="guint"/>
58651       </field>
58652       <field name="expand" writable="1" bits="1">
58653         <type name="uint" c:type="guint"/>
58654       </field>
58655       <field name="shrink" writable="1" bits="1">
58656         <type name="uint" c:type="guint"/>
58657       </field>
58658       <field name="empty" writable="1" bits="1">
58659         <type name="uint" c:type="guint"/>
58660       </field>
58661     </record>
58662     <record name="TargetEntry" c:type="GtkTargetEntry">
58663       <field name="target" writable="1">
58664         <type name="utf8" c:type="gchar*"/>
58665       </field>
58666       <field name="flags" writable="1">
58667         <type name="uint" c:type="guint"/>
58668       </field>
58669       <field name="info" writable="1">
58670         <type name="uint" c:type="guint"/>
58671       </field>
58672     </record>
58673     <bitfield name="TargetFlags"
58674               glib:type-name="GtkTargetFlags"
58675               glib:get-type="gtk_target_flags_get_type"
58676               c:type="GtkTargetFlags">
58677       <member name="same_app"
58678               value="1"
58679               c:identifier="GTK_TARGET_SAME_APP"
58680               glib:nick="same-app"/>
58681       <member name="same_widget"
58682               value="2"
58683               c:identifier="GTK_TARGET_SAME_WIDGET"
58684               glib:nick="same-widget"/>
58685       <member name="other_app"
58686               value="4"
58687               c:identifier="GTK_TARGET_OTHER_APP"
58688               glib:nick="other-app"/>
58689       <member name="other_widget"
58690               value="8"
58691               c:identifier="GTK_TARGET_OTHER_WIDGET"
58692               glib:nick="other-widget"/>
58693     </bitfield>
58694     <record name="TargetList"
58695             c:type="GtkTargetList"
58696             glib:type-name="GtkTargetList"
58697             glib:get-type="gtk_target_list_get_type">
58698       <field name="list" writable="1">
58699         <type name="GLib.List" c:type="GList*">
58700           <type name="any" c:type="gpointer"/>
58701         </type>
58702       </field>
58703       <field name="ref_count" writable="1">
58704         <type name="uint" c:type="guint"/>
58705       </field>
58706       <constructor name="new" c:identifier="gtk_target_list_new">
58707         <doc xml:whitespace="preserve">Creates a new #GtkTargetList from an array of #GtkTargetEntry.</doc>
58708         <return-value transfer-ownership="full">
58709           <doc xml:whitespace="preserve">the new #GtkTargetList.</doc>
58710           <type name="TargetList" c:type="GtkTargetList*"/>
58711         </return-value>
58712         <parameters>
58713           <parameter name="targets" transfer-ownership="none">
58714             <doc xml:whitespace="preserve">Pointer to an array of #GtkTargetEntry</doc>
58715             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
58716           </parameter>
58717           <parameter name="ntargets" transfer-ownership="none">
58718             <doc xml:whitespace="preserve">number of entries in @targets.</doc>
58719             <type name="uint" c:type="guint"/>
58720           </parameter>
58721         </parameters>
58722       </constructor>
58723       <method name="ref" c:identifier="gtk_target_list_ref">
58724         <doc xml:whitespace="preserve">Increases the reference count of a #GtkTargetList by one.</doc>
58725         <return-value transfer-ownership="full">
58726           <doc xml:whitespace="preserve">the passed in #GtkTargetList.</doc>
58727           <type name="TargetList" c:type="GtkTargetList*"/>
58728         </return-value>
58729       </method>
58730       <method name="unref" c:identifier="gtk_target_list_unref">
58731         <doc xml:whitespace="preserve">Decreases the reference count of a #GtkTargetList by one.
58732 If the resulting reference count is zero, frees the list.</doc>
58733         <return-value transfer-ownership="none">
58734           <type name="none" c:type="void"/>
58735         </return-value>
58736       </method>
58737       <method name="add" c:identifier="gtk_target_list_add">
58738         <doc xml:whitespace="preserve">Appends another target to a #GtkTargetList.</doc>
58739         <return-value transfer-ownership="none">
58740           <type name="none" c:type="void"/>
58741         </return-value>
58742         <parameters>
58743           <parameter name="target" transfer-ownership="none">
58744             <doc xml:whitespace="preserve">the interned atom representing the target</doc>
58745             <type name="Gdk.Atom" c:type="GdkAtom"/>
58746           </parameter>
58747           <parameter name="flags" transfer-ownership="none">
58748             <doc xml:whitespace="preserve">the flags for this target</doc>
58749             <type name="uint" c:type="guint"/>
58750           </parameter>
58751           <parameter name="info" transfer-ownership="none">
58752             <doc xml:whitespace="preserve">an ID that will be passed back to the application</doc>
58753             <type name="uint" c:type="guint"/>
58754           </parameter>
58755         </parameters>
58756       </method>
58757       <method name="add_text_targets"
58758               c:identifier="gtk_target_list_add_text_targets"
58759               version="2.6">
58760         <doc xml:whitespace="preserve">Appends the text targets supported by #GtkSelection to
58761 the target list. All targets are added with the same @info.</doc>
58762         <return-value transfer-ownership="none">
58763           <type name="none" c:type="void"/>
58764         </return-value>
58765         <parameters>
58766           <parameter name="info" transfer-ownership="none">
58767             <doc xml:whitespace="preserve">an ID that will be passed back to the application</doc>
58768             <type name="uint" c:type="guint"/>
58769           </parameter>
58770         </parameters>
58771       </method>
58772       <method name="add_rich_text_targets"
58773               c:identifier="gtk_target_list_add_rich_text_targets"
58774               version="2.10">
58775         <doc xml:whitespace="preserve">Appends the rich text targets registered with
58776 gtk_text_buffer_register_serialize_format() or
58777 gtk_text_buffer_register_deserialize_format() to the target list. All
58778 targets are added with the same @info.</doc>
58779         <return-value transfer-ownership="none">
58780           <type name="none" c:type="void"/>
58781         </return-value>
58782         <parameters>
58783           <parameter name="info" transfer-ownership="none">
58784             <doc xml:whitespace="preserve">an ID that will be passed back to the application</doc>
58785             <type name="uint" c:type="guint"/>
58786           </parameter>
58787           <parameter name="deserializable" transfer-ownership="none">
58788             <doc xml:whitespace="preserve">if %TRUE, then deserializable rich text formats will be added, serializable formats otherwise.</doc>
58789             <type name="boolean" c:type="gboolean"/>
58790           </parameter>
58791           <parameter name="buffer" transfer-ownership="none">
58792             <doc xml:whitespace="preserve">a #GtkTextBuffer.</doc>
58793             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
58794           </parameter>
58795         </parameters>
58796       </method>
58797       <method name="add_image_targets"
58798               c:identifier="gtk_target_list_add_image_targets"
58799               version="2.6">
58800         <doc xml:whitespace="preserve">Appends the image targets supported by #GtkSelection to
58801 the target list. All targets are added with the same @info.</doc>
58802         <return-value transfer-ownership="none">
58803           <type name="none" c:type="void"/>
58804         </return-value>
58805         <parameters>
58806           <parameter name="info" transfer-ownership="none">
58807             <doc xml:whitespace="preserve">an ID that will be passed back to the application</doc>
58808             <type name="uint" c:type="guint"/>
58809           </parameter>
58810           <parameter name="writable" transfer-ownership="none">
58811             <doc xml:whitespace="preserve">whether to add only targets for which GTK+ knows how to convert a pixbuf into the format</doc>
58812             <type name="boolean" c:type="gboolean"/>
58813           </parameter>
58814         </parameters>
58815       </method>
58816       <method name="add_uri_targets"
58817               c:identifier="gtk_target_list_add_uri_targets"
58818               version="2.6">
58819         <doc xml:whitespace="preserve">Appends the URI targets supported by #GtkSelection to
58820 the target list. All targets are added with the same @info.</doc>
58821         <return-value transfer-ownership="none">
58822           <type name="none" c:type="void"/>
58823         </return-value>
58824         <parameters>
58825           <parameter name="info" transfer-ownership="none">
58826             <doc xml:whitespace="preserve">an ID that will be passed back to the application</doc>
58827             <type name="uint" c:type="guint"/>
58828           </parameter>
58829         </parameters>
58830       </method>
58831       <method name="add_table" c:identifier="gtk_target_list_add_table">
58832         <doc xml:whitespace="preserve">Prepends a table of #GtkTargetEntry to a target list.</doc>
58833         <return-value transfer-ownership="none">
58834           <type name="none" c:type="void"/>
58835         </return-value>
58836         <parameters>
58837           <parameter name="targets" transfer-ownership="none">
58838             <doc xml:whitespace="preserve">the table of #GtkTargetEntry</doc>
58839             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
58840           </parameter>
58841           <parameter name="ntargets" transfer-ownership="none">
58842             <doc xml:whitespace="preserve">number of targets in the table</doc>
58843             <type name="uint" c:type="guint"/>
58844           </parameter>
58845         </parameters>
58846       </method>
58847       <method name="remove" c:identifier="gtk_target_list_remove">
58848         <doc xml:whitespace="preserve">Removes a target from a target list.</doc>
58849         <return-value transfer-ownership="none">
58850           <type name="none" c:type="void"/>
58851         </return-value>
58852         <parameters>
58853           <parameter name="target" transfer-ownership="none">
58854             <doc xml:whitespace="preserve">the interned atom representing the target</doc>
58855             <type name="Gdk.Atom" c:type="GdkAtom"/>
58856           </parameter>
58857         </parameters>
58858       </method>
58859       <method name="find" c:identifier="gtk_target_list_find">
58860         <doc xml:whitespace="preserve">Looks up a given target in a #GtkTargetList.</doc>
58861         <return-value transfer-ownership="none">
58862           <doc xml:whitespace="preserve">%TRUE if the target was found, otherwise %FALSE</doc>
58863           <type name="boolean" c:type="gboolean"/>
58864         </return-value>
58865         <parameters>
58866           <parameter name="target" transfer-ownership="none">
58867             <doc xml:whitespace="preserve">an interned atom representing the target to search for</doc>
58868             <type name="Gdk.Atom" c:type="GdkAtom"/>
58869           </parameter>
58870           <parameter name="info"
58871                      direction="out"
58872                      caller-allocates="0"
58873                      transfer-ownership="full">
58874             <doc xml:whitespace="preserve">a pointer to the location to store application info for target, or %NULL</doc>
58875             <type name="uint" c:type="guint*"/>
58876           </parameter>
58877         </parameters>
58878       </method>
58879     </record>
58880     <record name="TargetPair" c:type="GtkTargetPair">
58881       <field name="target" writable="1">
58882         <type name="Gdk.Atom" c:type="GdkAtom"/>
58883       </field>
58884       <field name="flags" writable="1">
58885         <type name="uint" c:type="guint"/>
58886       </field>
58887       <field name="info" writable="1">
58888         <type name="uint" c:type="guint"/>
58889       </field>
58890     </record>
58891     <class name="TearoffMenuItem"
58892            c:type="GtkTearoffMenuItem"
58893            parent="MenuItem"
58894            glib:type-name="GtkTearoffMenuItem"
58895            glib:get-type="gtk_tearoff_menu_item_get_type"
58896            glib:type-struct="TearoffMenuItemClass">
58897       <implements name="Activatable"/>
58898       <implements name="Atk.ImplementorIface"/>
58899       <implements name="Buildable"/>
58900       <constructor name="new" c:identifier="gtk_tearoff_menu_item_new">
58901         <return-value transfer-ownership="full">
58902           <type name="TearoffMenuItem" c:type="GtkWidget*"/>
58903         </return-value>
58904       </constructor>
58905       <field name="menu_item">
58906         <type name="MenuItem" c:type="GtkMenuItem"/>
58907       </field>
58908       <field name="torn_off" bits="1">
58909         <type name="uint" c:type="guint"/>
58910       </field>
58911     </class>
58912     <record name="TearoffMenuItemClass"
58913             c:type="GtkTearoffMenuItemClass"
58914             glib:is-gtype-struct-for="TearoffMenuItem">
58915       <field name="parent_class">
58916         <type name="MenuItemClass" c:type="GtkMenuItemClass"/>
58917       </field>
58918       <field name="gtk_reserved1">
58919         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
58920           <return-value transfer-ownership="none">
58921             <type name="none" c:type="void"/>
58922           </return-value>
58923         </callback>
58924       </field>
58925       <field name="gtk_reserved2">
58926         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
58927           <return-value transfer-ownership="none">
58928             <type name="none" c:type="void"/>
58929           </return-value>
58930         </callback>
58931       </field>
58932       <field name="gtk_reserved3">
58933         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
58934           <return-value transfer-ownership="none">
58935             <type name="none" c:type="void"/>
58936           </return-value>
58937         </callback>
58938       </field>
58939       <field name="gtk_reserved4">
58940         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
58941           <return-value transfer-ownership="none">
58942             <type name="none" c:type="void"/>
58943           </return-value>
58944         </callback>
58945       </field>
58946     </record>
58947     <record name="TextAppearance" c:type="GtkTextAppearance">
58948       <field name="bg_color" writable="1">
58949         <type name="Gdk.Color" c:type="GdkColor"/>
58950       </field>
58951       <field name="fg_color" writable="1">
58952         <type name="Gdk.Color" c:type="GdkColor"/>
58953       </field>
58954       <field name="bg_stipple" writable="1">
58955         <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
58956       </field>
58957       <field name="fg_stipple" writable="1">
58958         <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
58959       </field>
58960       <field name="rise" writable="1">
58961         <type name="int" c:type="gint"/>
58962       </field>
58963       <field name="padding1" writable="1">
58964         <type name="any" c:type="gpointer"/>
58965       </field>
58966       <field name="underline" writable="1" bits="4">
58967         <type name="uint" c:type="guint"/>
58968       </field>
58969       <field name="strikethrough" writable="1" bits="1">
58970         <type name="uint" c:type="guint"/>
58971       </field>
58972       <field name="draw_bg" writable="1" bits="1">
58973         <type name="uint" c:type="guint"/>
58974       </field>
58975       <field name="inside_selection" writable="1" bits="1">
58976         <type name="uint" c:type="guint"/>
58977       </field>
58978       <field name="is_text" writable="1" bits="1">
58979         <type name="uint" c:type="guint"/>
58980       </field>
58981       <field name="pad1" writable="1" bits="1">
58982         <type name="uint" c:type="guint"/>
58983       </field>
58984       <field name="pad2" writable="1" bits="1">
58985         <type name="uint" c:type="guint"/>
58986       </field>
58987       <field name="pad3" writable="1" bits="1">
58988         <type name="uint" c:type="guint"/>
58989       </field>
58990       <field name="pad4" writable="1" bits="1">
58991         <type name="uint" c:type="guint"/>
58992       </field>
58993     </record>
58994     <record name="TextAttrAppearance" c:type="GtkTextAttrAppearance">
58995       <field name="attr" writable="1">
58996         <type name="Pango.Attribute" c:type="PangoAttribute"/>
58997       </field>
58998       <field name="appearance" writable="1">
58999         <type name="TextAppearance" c:type="GtkTextAppearance"/>
59000       </field>
59001     </record>
59002     <record name="TextAttributes"
59003             c:type="GtkTextAttributes"
59004             glib:type-name="GtkTextAttributes"
59005             glib:get-type="gtk_text_attributes_get_type">
59006       <field name="refcount" writable="1">
59007         <type name="uint" c:type="guint"/>
59008       </field>
59009       <field name="appearance" writable="1">
59010         <type name="TextAppearance" c:type="GtkTextAppearance"/>
59011       </field>
59012       <field name="justification" writable="1">
59013         <type name="Justification" c:type="GtkJustification"/>
59014       </field>
59015       <field name="direction" writable="1">
59016         <type name="TextDirection" c:type="GtkTextDirection"/>
59017       </field>
59018       <field name="font" writable="1">
59019         <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
59020       </field>
59021       <field name="font_scale" writable="1">
59022         <type name="double" c:type="gdouble"/>
59023       </field>
59024       <field name="left_margin" writable="1">
59025         <type name="int" c:type="gint"/>
59026       </field>
59027       <field name="indent" writable="1">
59028         <type name="int" c:type="gint"/>
59029       </field>
59030       <field name="right_margin" writable="1">
59031         <type name="int" c:type="gint"/>
59032       </field>
59033       <field name="pixels_above_lines" writable="1">
59034         <type name="int" c:type="gint"/>
59035       </field>
59036       <field name="pixels_below_lines" writable="1">
59037         <type name="int" c:type="gint"/>
59038       </field>
59039       <field name="pixels_inside_wrap" writable="1">
59040         <type name="int" c:type="gint"/>
59041       </field>
59042       <field name="tabs" writable="1">
59043         <type name="Pango.TabArray" c:type="PangoTabArray*"/>
59044       </field>
59045       <field name="wrap_mode" writable="1">
59046         <type name="WrapMode" c:type="GtkWrapMode"/>
59047       </field>
59048       <field name="language" writable="1">
59049         <type name="Pango.Language" c:type="PangoLanguage*"/>
59050       </field>
59051       <field name="pg_bg_color" writable="1">
59052         <type name="Gdk.Color" c:type="GdkColor*"/>
59053       </field>
59054       <field name="invisible" writable="1" bits="1">
59055         <type name="uint" c:type="guint"/>
59056       </field>
59057       <field name="bg_full_height" writable="1" bits="1">
59058         <type name="uint" c:type="guint"/>
59059       </field>
59060       <field name="editable" writable="1" bits="1">
59061         <type name="uint" c:type="guint"/>
59062       </field>
59063       <field name="realized" writable="1" bits="1">
59064         <type name="uint" c:type="guint"/>
59065       </field>
59066       <field name="pad1" writable="1" bits="1">
59067         <type name="uint" c:type="guint"/>
59068       </field>
59069       <field name="pad2" writable="1" bits="1">
59070         <type name="uint" c:type="guint"/>
59071       </field>
59072       <field name="pad3" writable="1" bits="1">
59073         <type name="uint" c:type="guint"/>
59074       </field>
59075       <field name="pad4" writable="1" bits="1">
59076         <type name="uint" c:type="guint"/>
59077       </field>
59078       <constructor name="new" c:identifier="gtk_text_attributes_new">
59079         <doc xml:whitespace="preserve">Creates a #GtkTextAttributes, which describes
59080 a set of properties on some text.</doc>
59081         <return-value transfer-ownership="full">
59082           <doc xml:whitespace="preserve">a new #GtkTextAttributes</doc>
59083           <type name="TextAttributes" c:type="GtkTextAttributes*"/>
59084         </return-value>
59085       </constructor>
59086       <method name="copy" c:identifier="gtk_text_attributes_copy">
59087         <doc xml:whitespace="preserve">Copies @src and returns a new #GtkTextAttributes.</doc>
59088         <return-value transfer-ownership="full">
59089           <doc xml:whitespace="preserve">a copy of @src</doc>
59090           <type name="TextAttributes" c:type="GtkTextAttributes*"/>
59091         </return-value>
59092       </method>
59093       <method name="copy_values"
59094               c:identifier="gtk_text_attributes_copy_values">
59095         <doc xml:whitespace="preserve">Copies the values from @src to @dest so that @dest has the same values
59096 as @src. Frees existing values in @dest.</doc>
59097         <return-value transfer-ownership="none">
59098           <type name="none" c:type="void"/>
59099         </return-value>
59100         <parameters>
59101           <parameter name="dest" transfer-ownership="none">
59102             <doc xml:whitespace="preserve">another #GtkTextAttributes</doc>
59103             <type name="TextAttributes" c:type="GtkTextAttributes*"/>
59104           </parameter>
59105         </parameters>
59106       </method>
59107       <method name="unref" c:identifier="gtk_text_attributes_unref">
59108         <doc xml:whitespace="preserve">Decrements the reference count on @values, freeing the structure
59109 if the reference count reaches 0.</doc>
59110         <return-value transfer-ownership="none">
59111           <type name="none" c:type="void"/>
59112         </return-value>
59113       </method>
59114       <method name="ref" c:identifier="gtk_text_attributes_ref">
59115         <doc xml:whitespace="preserve">Increments the reference count on @values.</doc>
59116         <return-value transfer-ownership="full">
59117           <doc xml:whitespace="preserve">the #GtkTextAttributes that were passed in</doc>
59118           <type name="TextAttributes" c:type="GtkTextAttributes*"/>
59119         </return-value>
59120       </method>
59121     </record>
59122     <record name="TextBTree" c:type="GtkTextBTree">
59123     </record>
59124     <class name="TextBuffer"
59125            c:type="GtkTextBuffer"
59126            parent="GObject.Object"
59127            glib:type-name="GtkTextBuffer"
59128            glib:get-type="gtk_text_buffer_get_type"
59129            glib:type-struct="TextBufferClass">
59130       <constructor name="new" c:identifier="gtk_text_buffer_new">
59131         <doc xml:whitespace="preserve">Creates a new text buffer.</doc>
59132         <return-value transfer-ownership="full">
59133           <doc xml:whitespace="preserve">a new text buffer</doc>
59134           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
59135         </return-value>
59136         <parameters>
59137           <parameter name="table" transfer-ownership="none" allow-none="1">
59138             <doc xml:whitespace="preserve">a tag table, or %NULL to create a new one</doc>
59139             <type name="TextTagTable" c:type="GtkTextTagTable*"/>
59140           </parameter>
59141         </parameters>
59142       </constructor>
59143       <method name="get_line_count"
59144               c:identifier="gtk_text_buffer_get_line_count">
59145         <doc xml:whitespace="preserve">Obtains the number of lines in the buffer. This value is cached, so
59146 the function is very fast.</doc>
59147         <return-value transfer-ownership="none">
59148           <doc xml:whitespace="preserve">number of lines in the buffer</doc>
59149           <type name="int" c:type="gint"/>
59150         </return-value>
59151       </method>
59152       <method name="get_char_count"
59153               c:identifier="gtk_text_buffer_get_char_count">
59154         <doc xml:whitespace="preserve">Gets the number of characters in the buffer; note that characters
59155 and bytes are not the same, you can't e.g. expect the contents of
59156 the buffer in string form to be this many bytes long. The character
59157 count is cached, so this function is very fast.</doc>
59158         <return-value transfer-ownership="none">
59159           <doc xml:whitespace="preserve">number of characters in the buffer</doc>
59160           <type name="int" c:type="gint"/>
59161         </return-value>
59162       </method>
59163       <method name="get_tag_table"
59164               c:identifier="gtk_text_buffer_get_tag_table">
59165         <doc xml:whitespace="preserve">Get the #GtkTextTagTable associated with this buffer.</doc>
59166         <return-value transfer-ownership="none">
59167           <doc xml:whitespace="preserve">the buffer's tag table</doc>
59168           <type name="TextTagTable" c:type="GtkTextTagTable*"/>
59169         </return-value>
59170       </method>
59171       <method name="set_text" c:identifier="gtk_text_buffer_set_text">
59172         <doc xml:whitespace="preserve">Deletes current contents of @buffer, and inserts @text instead. If</doc>
59173         <return-value transfer-ownership="none">
59174           <type name="none" c:type="void"/>
59175         </return-value>
59176         <parameters>
59177           <parameter name="text" transfer-ownership="none">
59178             <doc xml:whitespace="preserve">UTF-8 text to insert</doc>
59179             <type name="utf8" c:type="gchar*"/>
59180           </parameter>
59181           <parameter name="len" transfer-ownership="none">
59182             <doc xml:whitespace="preserve">length of @text in bytes</doc>
59183             <type name="int" c:type="gint"/>
59184           </parameter>
59185         </parameters>
59186       </method>
59187       <method name="insert" c:identifier="gtk_text_buffer_insert">
59188         <doc xml:whitespace="preserve">Inserts @len bytes of @text at position @iter.  If @len is -1,
59189 entirety. Emits the "insert-text" signal; insertion actually occurs
59190 in the default handler for the signal. @iter is invalidated when
59191 insertion occurs (because the buffer contents change), but the
59192 default signal handler revalidates it to point to the end of the
59193 inserted text.</doc>
59194         <return-value transfer-ownership="none">
59195           <type name="none" c:type="void"/>
59196         </return-value>
59197         <parameters>
59198           <parameter name="iter" transfer-ownership="none">
59199             <doc xml:whitespace="preserve">a position in the buffer</doc>
59200             <type name="TextIter" c:type="GtkTextIter*"/>
59201           </parameter>
59202           <parameter name="text" transfer-ownership="none">
59203             <doc xml:whitespace="preserve">UTF-8 format text to insert</doc>
59204             <type name="utf8" c:type="gchar*"/>
59205           </parameter>
59206           <parameter name="len" transfer-ownership="none">
59207             <doc xml:whitespace="preserve">length of text in bytes, or -1</doc>
59208             <type name="int" c:type="gint"/>
59209           </parameter>
59210         </parameters>
59211       </method>
59212       <method name="insert_at_cursor"
59213               c:identifier="gtk_text_buffer_insert_at_cursor">
59214         <doc xml:whitespace="preserve">Simply calls gtk_text_buffer_insert(), using the current
59215 cursor position as the insertion point.</doc>
59216         <return-value transfer-ownership="none">
59217           <type name="none" c:type="void"/>
59218         </return-value>
59219         <parameters>
59220           <parameter name="text" transfer-ownership="none">
59221             <doc xml:whitespace="preserve">some text in UTF-8 format</doc>
59222             <type name="utf8" c:type="gchar*"/>
59223           </parameter>
59224           <parameter name="len" transfer-ownership="none">
59225             <doc xml:whitespace="preserve">length of text, in bytes</doc>
59226             <type name="int" c:type="gint"/>
59227           </parameter>
59228         </parameters>
59229       </method>
59230       <method name="insert_interactive"
59231               c:identifier="gtk_text_buffer_insert_interactive">
59232         <doc xml:whitespace="preserve">Like gtk_text_buffer_insert(), but the insertion will not occur if
59233 want to prevent insertions at ineditable locations if the insertion
59234 results from a user action (is interactive).
59235 have a tag affecting editability applied to it. Typically the
59236 result of gtk_text_view_get_editable() is appropriate here.</doc>
59237         <return-value transfer-ownership="none">
59238           <doc xml:whitespace="preserve">whether text was actually inserted</doc>
59239           <type name="boolean" c:type="gboolean"/>
59240         </return-value>
59241         <parameters>
59242           <parameter name="iter" transfer-ownership="none">
59243             <doc xml:whitespace="preserve">a position in @buffer</doc>
59244             <type name="TextIter" c:type="GtkTextIter*"/>
59245           </parameter>
59246           <parameter name="text" transfer-ownership="none">
59247             <doc xml:whitespace="preserve">some UTF-8 text</doc>
59248             <type name="utf8" c:type="gchar*"/>
59249           </parameter>
59250           <parameter name="len" transfer-ownership="none">
59251             <doc xml:whitespace="preserve">length of text in bytes, or -1</doc>
59252             <type name="int" c:type="gint"/>
59253           </parameter>
59254           <parameter name="default_editable" transfer-ownership="none">
59255             <doc xml:whitespace="preserve">default editability of buffer</doc>
59256             <type name="boolean" c:type="gboolean"/>
59257           </parameter>
59258         </parameters>
59259       </method>
59260       <method name="insert_interactive_at_cursor"
59261               c:identifier="gtk_text_buffer_insert_interactive_at_cursor">
59262         <doc xml:whitespace="preserve">Calls gtk_text_buffer_insert_interactive() at the cursor
59263 position.
59264 have a tag affecting editability applied to it. Typically the
59265 result of gtk_text_view_get_editable() is appropriate here.</doc>
59266         <return-value transfer-ownership="none">
59267           <doc xml:whitespace="preserve">whether text was actually inserted</doc>
59268           <type name="boolean" c:type="gboolean"/>
59269         </return-value>
59270         <parameters>
59271           <parameter name="text" transfer-ownership="none">
59272             <doc xml:whitespace="preserve">text in UTF-8 format</doc>
59273             <type name="utf8" c:type="gchar*"/>
59274           </parameter>
59275           <parameter name="len" transfer-ownership="none">
59276             <doc xml:whitespace="preserve">length of text in bytes, or -1</doc>
59277             <type name="int" c:type="gint"/>
59278           </parameter>
59279           <parameter name="default_editable" transfer-ownership="none">
59280             <doc xml:whitespace="preserve">default editability of buffer</doc>
59281             <type name="boolean" c:type="gboolean"/>
59282           </parameter>
59283         </parameters>
59284       </method>
59285       <method name="insert_range" c:identifier="gtk_text_buffer_insert_range">
59286         <doc xml:whitespace="preserve">Copies text, tags, and pixbufs between @start and @end (the order
59287 of @start and @end doesn't matter) and inserts the copy at @iter.
59288 Used instead of simply getting/inserting text because it preserves
59289 images and tags. If @start and @end are in a different buffer from
59290 Implemented via emissions of the insert_text and apply_tag signals,
59291 so expect those.</doc>
59292         <return-value transfer-ownership="none">
59293           <type name="none" c:type="void"/>
59294         </return-value>
59295         <parameters>
59296           <parameter name="iter" transfer-ownership="none">
59297             <doc xml:whitespace="preserve">a position in @buffer</doc>
59298             <type name="TextIter" c:type="GtkTextIter*"/>
59299           </parameter>
59300           <parameter name="start" transfer-ownership="none">
59301             <doc xml:whitespace="preserve">a position in a #GtkTextBuffer</doc>
59302             <type name="TextIter" c:type="GtkTextIter*"/>
59303           </parameter>
59304           <parameter name="end" transfer-ownership="none">
59305             <doc xml:whitespace="preserve">another position in the same buffer as @start</doc>
59306             <type name="TextIter" c:type="GtkTextIter*"/>
59307           </parameter>
59308         </parameters>
59309       </method>
59310       <method name="insert_range_interactive"
59311               c:identifier="gtk_text_buffer_insert_range_interactive">
59312         <doc xml:whitespace="preserve">Same as gtk_text_buffer_insert_range(), but does nothing if the
59313 insertion point isn't editable. The @default_editable parameter
59314 indicates whether the text is editable at @iter if no tags
59315 enclosing @iter affect editability. Typically the result of
59316 gtk_text_view_get_editable() is appropriate here.</doc>
59317         <return-value transfer-ownership="none">
59318           <doc xml:whitespace="preserve">whether an insertion was possible at @iter</doc>
59319           <type name="boolean" c:type="gboolean"/>
59320         </return-value>
59321         <parameters>
59322           <parameter name="iter" transfer-ownership="none">
59323             <doc xml:whitespace="preserve">a position in @buffer</doc>
59324             <type name="TextIter" c:type="GtkTextIter*"/>
59325           </parameter>
59326           <parameter name="start" transfer-ownership="none">
59327             <doc xml:whitespace="preserve">a position in a #GtkTextBuffer</doc>
59328             <type name="TextIter" c:type="GtkTextIter*"/>
59329           </parameter>
59330           <parameter name="end" transfer-ownership="none">
59331             <doc xml:whitespace="preserve">another position in the same buffer as @start</doc>
59332             <type name="TextIter" c:type="GtkTextIter*"/>
59333           </parameter>
59334           <parameter name="default_editable" transfer-ownership="none">
59335             <doc xml:whitespace="preserve">default editability of the buffer</doc>
59336             <type name="boolean" c:type="gboolean"/>
59337           </parameter>
59338         </parameters>
59339       </method>
59340       <method name="insert_with_tags"
59341               c:identifier="gtk_text_buffer_insert_with_tags"
59342               introspectable="0">
59343         <doc xml:whitespace="preserve">Inserts @text into @buffer at @iter, applying the list of tags to
59344 the newly-inserted text. The last tag specified must be NULL to
59345 terminate the list. Equivalent to calling gtk_text_buffer_insert(),
59346 then gtk_text_buffer_apply_tag() on the inserted text;
59347 gtk_text_buffer_insert_with_tags() is just a convenience function.</doc>
59348         <return-value transfer-ownership="none">
59349           <type name="none" c:type="void"/>
59350         </return-value>
59351         <parameters>
59352           <parameter name="iter" transfer-ownership="none">
59353             <doc xml:whitespace="preserve">an iterator in @buffer</doc>
59354             <type name="TextIter" c:type="GtkTextIter*"/>
59355           </parameter>
59356           <parameter name="text" transfer-ownership="none">
59357             <doc xml:whitespace="preserve">UTF-8 text</doc>
59358             <type name="utf8" c:type="gchar*"/>
59359           </parameter>
59360           <parameter name="len" transfer-ownership="none">
59361             <doc xml:whitespace="preserve">length of @text, or -1</doc>
59362             <type name="int" c:type="gint"/>
59363           </parameter>
59364           <parameter name="first_tag" transfer-ownership="none">
59365             <doc xml:whitespace="preserve">first tag to apply to @text</doc>
59366             <type name="TextTag" c:type="GtkTextTag*"/>
59367           </parameter>
59368           <parameter transfer-ownership="none">
59369             <varargs>
59370             </varargs>
59371           </parameter>
59372         </parameters>
59373       </method>
59374       <method name="insert_with_tags_by_name"
59375               c:identifier="gtk_text_buffer_insert_with_tags_by_name"
59376               introspectable="0">
59377         <doc xml:whitespace="preserve">Same as gtk_text_buffer_insert_with_tags(), but allows you
59378 to pass in tag names instead of tag objects.</doc>
59379         <return-value transfer-ownership="none">
59380           <type name="none" c:type="void"/>
59381         </return-value>
59382         <parameters>
59383           <parameter name="iter" transfer-ownership="none">
59384             <doc xml:whitespace="preserve">position in @buffer</doc>
59385             <type name="TextIter" c:type="GtkTextIter*"/>
59386           </parameter>
59387           <parameter name="text" transfer-ownership="none">
59388             <doc xml:whitespace="preserve">UTF-8 text</doc>
59389             <type name="utf8" c:type="gchar*"/>
59390           </parameter>
59391           <parameter name="len" transfer-ownership="none">
59392             <doc xml:whitespace="preserve">length of @text, or -1</doc>
59393             <type name="int" c:type="gint"/>
59394           </parameter>
59395           <parameter name="first_tag_name" transfer-ownership="none">
59396             <doc xml:whitespace="preserve">name of a tag to apply to @text</doc>
59397             <type name="utf8" c:type="gchar*"/>
59398           </parameter>
59399           <parameter transfer-ownership="none">
59400             <varargs>
59401             </varargs>
59402           </parameter>
59403         </parameters>
59404       </method>
59405       <method name="delete" c:identifier="gtk_text_buffer_delete">
59406         <doc xml:whitespace="preserve">Deletes text between @start and @end. The order of @start and @end
59407 is not actually relevant; gtk_text_buffer_delete() will reorder
59408 them. This function actually emits the "delete-range" signal, and
59409 the default handler of that signal deletes the text. Because the
59410 buffer is modified, all outstanding iterators become invalid after
59411 calling this function; however, the @start and @end will be
59412 re-initialized to point to the location where text was deleted.</doc>
59413         <return-value transfer-ownership="none">
59414           <type name="none" c:type="void"/>
59415         </return-value>
59416         <parameters>
59417           <parameter name="start" transfer-ownership="none">
59418             <doc xml:whitespace="preserve">a position in @buffer</doc>
59419             <type name="TextIter" c:type="GtkTextIter*"/>
59420           </parameter>
59421           <parameter name="end" transfer-ownership="none">
59422             <doc xml:whitespace="preserve">another position in @buffer</doc>
59423             <type name="TextIter" c:type="GtkTextIter*"/>
59424           </parameter>
59425         </parameters>
59426       </method>
59427       <method name="delete_interactive"
59428               c:identifier="gtk_text_buffer_delete_interactive">
59429         <doc xml:whitespace="preserve">Deletes all &lt;emphasis&gt;editable&lt;/emphasis&gt; text in the given range.
59430 Calls gtk_text_buffer_delete() for each editable sub-range of
59431 [@start,@end). @start and @end are revalidated to point to
59432 the location of the last deleted range, or left untouched if
59433 no text was deleted.</doc>
59434         <return-value transfer-ownership="none">
59435           <doc xml:whitespace="preserve">whether some text was actually deleted</doc>
59436           <type name="boolean" c:type="gboolean"/>
59437         </return-value>
59438         <parameters>
59439           <parameter name="start_iter" transfer-ownership="none">
59440             <doc xml:whitespace="preserve">start of range to delete</doc>
59441             <type name="TextIter" c:type="GtkTextIter*"/>
59442           </parameter>
59443           <parameter name="end_iter" transfer-ownership="none">
59444             <doc xml:whitespace="preserve">end of range</doc>
59445             <type name="TextIter" c:type="GtkTextIter*"/>
59446           </parameter>
59447           <parameter name="default_editable" transfer-ownership="none">
59448             <doc xml:whitespace="preserve">whether the buffer is editable by default</doc>
59449             <type name="boolean" c:type="gboolean"/>
59450           </parameter>
59451         </parameters>
59452       </method>
59453       <method name="backspace"
59454               c:identifier="gtk_text_buffer_backspace"
59455               version="2.6">
59456         <doc xml:whitespace="preserve">Performs the appropriate action as if the user hit the delete
59457 key with the cursor at the position specified by @iter. In the
59458 normal case a single character will be deleted, but when
59459 combining accents are involved, more than one character can
59460 be deleted, and when precomposed character and accent combinations
59461 are involved, less than one character will be deleted.
59462 Because the buffer is modified, all outstanding iterators become 
59463 invalid after calling this function; however, the @iter will be
59464 re-initialized to point to the location where text was deleted.</doc>
59465         <return-value transfer-ownership="none">
59466           <doc xml:whitespace="preserve">%TRUE if the buffer was modified</doc>
59467           <type name="boolean" c:type="gboolean"/>
59468         </return-value>
59469         <parameters>
59470           <parameter name="iter" transfer-ownership="none">
59471             <doc xml:whitespace="preserve">a position in @buffer</doc>
59472             <type name="TextIter" c:type="GtkTextIter*"/>
59473           </parameter>
59474           <parameter name="interactive" transfer-ownership="none">
59475             <doc xml:whitespace="preserve">whether the deletion is caused by user interaction</doc>
59476             <type name="boolean" c:type="gboolean"/>
59477           </parameter>
59478           <parameter name="default_editable" transfer-ownership="none">
59479             <doc xml:whitespace="preserve">whether the buffer is editable by default</doc>
59480             <type name="boolean" c:type="gboolean"/>
59481           </parameter>
59482         </parameters>
59483       </method>
59484       <method name="get_text" c:identifier="gtk_text_buffer_get_text">
59485         <doc xml:whitespace="preserve">Returns the text in the range [@start,@end). Excludes undisplayed
59486 text (text marked with tags that set the invisibility attribute) if
59487 representing embedded images, so byte and character indexes into
59488 the returned string do &lt;emphasis&gt;not&lt;/emphasis&gt; correspond to byte
59489 and character indexes into the buffer. Contrast with
59490 gtk_text_buffer_get_slice().</doc>
59491         <return-value transfer-ownership="full">
59492           <doc xml:whitespace="preserve">an allocated UTF-8 string</doc>
59493           <type name="utf8" c:type="gchar*"/>
59494         </return-value>
59495         <parameters>
59496           <parameter name="start" transfer-ownership="none">
59497             <doc xml:whitespace="preserve">start of a range</doc>
59498             <type name="TextIter" c:type="GtkTextIter*"/>
59499           </parameter>
59500           <parameter name="end" transfer-ownership="none">
59501             <doc xml:whitespace="preserve">end of a range</doc>
59502             <type name="TextIter" c:type="GtkTextIter*"/>
59503           </parameter>
59504           <parameter name="include_hidden_chars" transfer-ownership="none">
59505             <doc xml:whitespace="preserve">whether to include invisible text</doc>
59506             <type name="boolean" c:type="gboolean"/>
59507           </parameter>
59508         </parameters>
59509       </method>
59510       <method name="get_slice" c:identifier="gtk_text_buffer_get_slice">
59511         <doc xml:whitespace="preserve">Returns the text in the range [@start,@end). Excludes undisplayed
59512 text (text marked with tags that set the invisibility attribute) if
59513 0xFFFC character whenever the buffer contains
59514 embedded images, so byte and character indexes into
59515 the returned string &lt;emphasis&gt;do&lt;/emphasis&gt; correspond to byte
59516 and character indexes into the buffer. Contrast with
59517 gtk_text_buffer_get_text(). Note that 0xFFFC can occur in normal
59518 text as well, so it is not a reliable indicator that a pixbuf or
59519 widget is in the buffer.</doc>
59520         <return-value transfer-ownership="full">
59521           <doc xml:whitespace="preserve">an allocated UTF-8 string</doc>
59522           <type name="utf8" c:type="gchar*"/>
59523         </return-value>
59524         <parameters>
59525           <parameter name="start" transfer-ownership="none">
59526             <doc xml:whitespace="preserve">start of a range</doc>
59527             <type name="TextIter" c:type="GtkTextIter*"/>
59528           </parameter>
59529           <parameter name="end" transfer-ownership="none">
59530             <doc xml:whitespace="preserve">end of a range</doc>
59531             <type name="TextIter" c:type="GtkTextIter*"/>
59532           </parameter>
59533           <parameter name="include_hidden_chars" transfer-ownership="none">
59534             <doc xml:whitespace="preserve">whether to include invisible text</doc>
59535             <type name="boolean" c:type="gboolean"/>
59536           </parameter>
59537         </parameters>
59538       </method>
59539       <method name="insert_pixbuf"
59540               c:identifier="gtk_text_buffer_insert_pixbuf">
59541         <doc xml:whitespace="preserve">Inserts an image into the text buffer at @iter. The image will be
59542 counted as one character in character counts, and when obtaining
59543 the buffer contents as a string, will be represented by the Unicode
59544 "object replacement character" 0xFFFC. Note that the "slice"
59545 variants for obtaining portions of the buffer as a string include
59546 this character for pixbufs, but the "text" variants do
59547 not. e.g. see gtk_text_buffer_get_slice() and
59548 gtk_text_buffer_get_text().</doc>
59549         <return-value transfer-ownership="none">
59550           <type name="none" c:type="void"/>
59551         </return-value>
59552         <parameters>
59553           <parameter name="iter" transfer-ownership="none">
59554             <doc xml:whitespace="preserve">location to insert the pixbuf</doc>
59555             <type name="TextIter" c:type="GtkTextIter*"/>
59556           </parameter>
59557           <parameter name="pixbuf" transfer-ownership="none">
59558             <doc xml:whitespace="preserve">a #GdkPixbuf</doc>
59559             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
59560           </parameter>
59561         </parameters>
59562       </method>
59563       <method name="insert_child_anchor"
59564               c:identifier="gtk_text_buffer_insert_child_anchor">
59565         <doc xml:whitespace="preserve">Inserts a child widget anchor into the text buffer at @iter. The
59566 anchor will be counted as one character in character counts, and
59567 when obtaining the buffer contents as a string, will be represented
59568 by the Unicode "object replacement character" 0xFFFC. Note that the
59569 "slice" variants for obtaining portions of the buffer as a string
59570 include this character for child anchors, but the "text" variants do
59571 not. E.g. see gtk_text_buffer_get_slice() and
59572 gtk_text_buffer_get_text(). Consider
59573 gtk_text_buffer_create_child_anchor() as a more convenient
59574 alternative to this function. The buffer will add a reference to
59575 the anchor, so you can unref it after insertion.</doc>
59576         <return-value transfer-ownership="none">
59577           <type name="none" c:type="void"/>
59578         </return-value>
59579         <parameters>
59580           <parameter name="iter" transfer-ownership="none">
59581             <doc xml:whitespace="preserve">location to insert the anchor</doc>
59582             <type name="TextIter" c:type="GtkTextIter*"/>
59583           </parameter>
59584           <parameter name="anchor" transfer-ownership="none">
59585             <doc xml:whitespace="preserve">a #GtkTextChildAnchor</doc>
59586             <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
59587           </parameter>
59588         </parameters>
59589       </method>
59590       <method name="create_child_anchor"
59591               c:identifier="gtk_text_buffer_create_child_anchor">
59592         <doc xml:whitespace="preserve">This is a convenience function which simply creates a child anchor
59593 with gtk_text_child_anchor_new() and inserts it into the buffer
59594 with gtk_text_buffer_insert_child_anchor(). The new anchor is
59595 owned by the buffer; no reference count is returned to
59596 the caller of gtk_text_buffer_create_child_anchor().</doc>
59597         <return-value transfer-ownership="full">
59598           <doc xml:whitespace="preserve">the created child anchor</doc>
59599           <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
59600         </return-value>
59601         <parameters>
59602           <parameter name="iter" transfer-ownership="none">
59603             <doc xml:whitespace="preserve">location in the buffer</doc>
59604             <type name="TextIter" c:type="GtkTextIter*"/>
59605           </parameter>
59606         </parameters>
59607       </method>
59608       <method name="add_mark"
59609               c:identifier="gtk_text_buffer_add_mark"
59610               version="2.12">
59611         <doc xml:whitespace="preserve">Adds the mark at position @where. The mark must not be added to
59612 another buffer, and if its name is not %NULL then there must not
59613 be another mark in the buffer with the same name.
59614 Emits the "mark-set" signal as notification of the mark's initial
59615 placement.</doc>
59616         <return-value transfer-ownership="none">
59617           <type name="none" c:type="void"/>
59618         </return-value>
59619         <parameters>
59620           <parameter name="mark" transfer-ownership="none">
59621             <doc xml:whitespace="preserve">the mark to add</doc>
59622             <type name="TextMark" c:type="GtkTextMark*"/>
59623           </parameter>
59624           <parameter name="where" transfer-ownership="none">
59625             <doc xml:whitespace="preserve">location to place mark</doc>
59626             <type name="TextIter" c:type="GtkTextIter*"/>
59627           </parameter>
59628         </parameters>
59629       </method>
59630       <method name="create_mark" c:identifier="gtk_text_buffer_create_mark">
59631         <doc xml:whitespace="preserve">Creates a mark at position @where. If @mark_name is %NULL, the mark
59632 is anonymous; otherwise, the mark can be retrieved by name using
59633 gtk_text_buffer_get_mark(). If a mark has left gravity, and text is
59634 inserted at the mark's current location, the mark will be moved to
59635 the left of the newly-inserted text. If the mark has right gravity
59636 (@left_gravity = %FALSE), the mark will end up on the right of
59637 newly-inserted text. The standard left-to-right cursor is a mark
59638 with right gravity (when you type, the cursor stays on the right
59639 side of the text you're typing).
59640 The caller of this function does &lt;emphasis&gt;not&lt;/emphasis&gt; own a 
59641 reference to the returned #GtkTextMark, so you can ignore the 
59642 return value if you like. Marks are owned by the buffer and go 
59643 away when the buffer does.
59644 Emits the "mark-set" signal as notification of the mark's initial
59645 placement.</doc>
59646         <return-value transfer-ownership="full">
59647           <doc xml:whitespace="preserve">the new #GtkTextMark object</doc>
59648           <type name="TextMark" c:type="GtkTextMark*"/>
59649         </return-value>
59650         <parameters>
59651           <parameter name="mark_name" transfer-ownership="none" allow-none="1">
59652             <doc xml:whitespace="preserve">name for mark, or %NULL</doc>
59653             <type name="utf8" c:type="gchar*"/>
59654           </parameter>
59655           <parameter name="where" transfer-ownership="none">
59656             <doc xml:whitespace="preserve">location to place mark</doc>
59657             <type name="TextIter" c:type="GtkTextIter*"/>
59658           </parameter>
59659           <parameter name="left_gravity" transfer-ownership="none">
59660             <doc xml:whitespace="preserve">whether the mark has left gravity</doc>
59661             <type name="boolean" c:type="gboolean"/>
59662           </parameter>
59663         </parameters>
59664       </method>
59665       <method name="move_mark" c:identifier="gtk_text_buffer_move_mark">
59666         <doc xml:whitespace="preserve">Moves @mark to the new location @where. Emits the "mark-set" signal
59667 as notification of the move.</doc>
59668         <return-value transfer-ownership="none">
59669           <type name="none" c:type="void"/>
59670         </return-value>
59671         <parameters>
59672           <parameter name="mark" transfer-ownership="none">
59673             <doc xml:whitespace="preserve">a #GtkTextMark</doc>
59674             <type name="TextMark" c:type="GtkTextMark*"/>
59675           </parameter>
59676           <parameter name="where" transfer-ownership="none">
59677             <doc xml:whitespace="preserve">new location for @mark in @buffer</doc>
59678             <type name="TextIter" c:type="GtkTextIter*"/>
59679           </parameter>
59680         </parameters>
59681       </method>
59682       <method name="delete_mark" c:identifier="gtk_text_buffer_delete_mark">
59683         <doc xml:whitespace="preserve">Deletes @mark, so that it's no longer located anywhere in the
59684 buffer. Removes the reference the buffer holds to the mark, so if
59685 you haven't called g_object_ref() on the mark, it will be freed. Even
59686 if the mark isn't freed, most operations on @mark become
59687 invalid, until it gets added to a buffer again with 
59688 gtk_text_buffer_add_mark(). Use gtk_text_mark_get_deleted() to  
59689 find out if a mark has been removed from its buffer.
59690 The "mark-deleted" signal will be emitted as notification after 
59691 the mark is deleted.</doc>
59692         <return-value transfer-ownership="none">
59693           <type name="none" c:type="void"/>
59694         </return-value>
59695         <parameters>
59696           <parameter name="mark" transfer-ownership="none">
59697             <doc xml:whitespace="preserve">a #GtkTextMark in @buffer</doc>
59698             <type name="TextMark" c:type="GtkTextMark*"/>
59699           </parameter>
59700         </parameters>
59701       </method>
59702       <method name="get_mark" c:identifier="gtk_text_buffer_get_mark">
59703         <doc xml:whitespace="preserve">Returns the mark named @name in buffer @buffer, or %NULL if no such
59704 mark exists in the buffer.</doc>
59705         <return-value transfer-ownership="none">
59706           <doc xml:whitespace="preserve">a #GtkTextMark, or %NULL</doc>
59707           <type name="TextMark" c:type="GtkTextMark*"/>
59708         </return-value>
59709         <parameters>
59710           <parameter name="name" transfer-ownership="none">
59711             <doc xml:whitespace="preserve">a mark name</doc>
59712             <type name="utf8" c:type="gchar*"/>
59713           </parameter>
59714         </parameters>
59715       </method>
59716       <method name="move_mark_by_name"
59717               c:identifier="gtk_text_buffer_move_mark_by_name">
59718         <doc xml:whitespace="preserve">Moves the mark named @name (which must exist) to location @where.
59719 See gtk_text_buffer_move_mark() for details.</doc>
59720         <return-value transfer-ownership="none">
59721           <type name="none" c:type="void"/>
59722         </return-value>
59723         <parameters>
59724           <parameter name="name" transfer-ownership="none">
59725             <doc xml:whitespace="preserve">name of a mark</doc>
59726             <type name="utf8" c:type="gchar*"/>
59727           </parameter>
59728           <parameter name="where" transfer-ownership="none">
59729             <doc xml:whitespace="preserve">new location for mark</doc>
59730             <type name="TextIter" c:type="GtkTextIter*"/>
59731           </parameter>
59732         </parameters>
59733       </method>
59734       <method name="delete_mark_by_name"
59735               c:identifier="gtk_text_buffer_delete_mark_by_name">
59736         <doc xml:whitespace="preserve">Deletes the mark named @name; the mark must exist. See
59737 gtk_text_buffer_delete_mark() for details.</doc>
59738         <return-value transfer-ownership="none">
59739           <type name="none" c:type="void"/>
59740         </return-value>
59741         <parameters>
59742           <parameter name="name" transfer-ownership="none">
59743             <doc xml:whitespace="preserve">name of a mark in @buffer</doc>
59744             <type name="utf8" c:type="gchar*"/>
59745           </parameter>
59746         </parameters>
59747       </method>
59748       <method name="get_insert" c:identifier="gtk_text_buffer_get_insert">
59749         <doc xml:whitespace="preserve">Returns the mark that represents the cursor (insertion point).
59750 Equivalent to calling gtk_text_buffer_get_mark() to get the mark
59751 named "insert", but very slightly more efficient, and involves less
59752 typing.</doc>
59753         <return-value transfer-ownership="none">
59754           <doc xml:whitespace="preserve">insertion point mark</doc>
59755           <type name="TextMark" c:type="GtkTextMark*"/>
59756         </return-value>
59757       </method>
59758       <method name="get_selection_bound"
59759               c:identifier="gtk_text_buffer_get_selection_bound">
59760         <doc xml:whitespace="preserve">Returns the mark that represents the selection bound.  Equivalent
59761 to calling gtk_text_buffer_get_mark() to get the mark named
59762 "selection_bound", but very slightly more efficient, and involves
59763 less typing.
59764 The currently-selected text in @buffer is the region between the
59765 "selection_bound" and "insert" marks. If "selection_bound" and
59766 "insert" are in the same place, then there is no current selection.
59767 gtk_text_buffer_get_selection_bounds() is another convenient function
59768 for handling the selection, if you just want to know whether there's a
59769 selection and what its bounds are.</doc>
59770         <return-value transfer-ownership="none">
59771           <doc xml:whitespace="preserve">selection bound mark</doc>
59772           <type name="TextMark" c:type="GtkTextMark*"/>
59773         </return-value>
59774       </method>
59775       <method name="place_cursor" c:identifier="gtk_text_buffer_place_cursor">
59776         <doc xml:whitespace="preserve">This function moves the "insert" and "selection_bound" marks
59777 simultaneously.  If you move them to the same place in two steps
59778 with gtk_text_buffer_move_mark(), you will temporarily select a
59779 region in between their old and new locations, which can be pretty
59780 inefficient since the temporarily-selected region will force stuff
59781 to be recalculated. This function moves them as a unit, which can
59782 be optimized.</doc>
59783         <return-value transfer-ownership="none">
59784           <type name="none" c:type="void"/>
59785         </return-value>
59786         <parameters>
59787           <parameter name="where" transfer-ownership="none">
59788             <doc xml:whitespace="preserve">where to put the cursor</doc>
59789             <type name="TextIter" c:type="GtkTextIter*"/>
59790           </parameter>
59791         </parameters>
59792       </method>
59793       <method name="select_range"
59794               c:identifier="gtk_text_buffer_select_range"
59795               version="2.4">
59796         <doc xml:whitespace="preserve">This function moves the "insert" and "selection_bound" marks
59797 simultaneously.  If you move them in two steps
59798 with gtk_text_buffer_move_mark(), you will temporarily select a
59799 region in between their old and new locations, which can be pretty
59800 inefficient since the temporarily-selected region will force stuff
59801 to be recalculated. This function moves them as a unit, which can
59802 be optimized.</doc>
59803         <return-value transfer-ownership="none">
59804           <type name="none" c:type="void"/>
59805         </return-value>
59806         <parameters>
59807           <parameter name="ins" transfer-ownership="none">
59808             <doc xml:whitespace="preserve">where to put the "insert" mark</doc>
59809             <type name="TextIter" c:type="GtkTextIter*"/>
59810           </parameter>
59811           <parameter name="bound" transfer-ownership="none">
59812             <doc xml:whitespace="preserve">where to put the "selection_bound" mark</doc>
59813             <type name="TextIter" c:type="GtkTextIter*"/>
59814           </parameter>
59815         </parameters>
59816       </method>
59817       <method name="apply_tag" c:identifier="gtk_text_buffer_apply_tag">
59818         <doc xml:whitespace="preserve">Emits the "apply-tag" signal on @buffer. The default
59819 handler for the signal applies @tag to the given range.</doc>
59820         <return-value transfer-ownership="none">
59821           <type name="none" c:type="void"/>
59822         </return-value>
59823         <parameters>
59824           <parameter name="tag" transfer-ownership="none">
59825             <doc xml:whitespace="preserve">a #GtkTextTag</doc>
59826             <type name="TextTag" c:type="GtkTextTag*"/>
59827           </parameter>
59828           <parameter name="start" transfer-ownership="none">
59829             <doc xml:whitespace="preserve">one bound of range to be tagged</doc>
59830             <type name="TextIter" c:type="GtkTextIter*"/>
59831           </parameter>
59832           <parameter name="end" transfer-ownership="none">
59833             <doc xml:whitespace="preserve">other bound of range to be tagged</doc>
59834             <type name="TextIter" c:type="GtkTextIter*"/>
59835           </parameter>
59836         </parameters>
59837       </method>
59838       <method name="remove_tag" c:identifier="gtk_text_buffer_remove_tag">
59839         <doc xml:whitespace="preserve">Emits the "remove-tag" signal. The default handler for the signal
59840 removes all occurrences of @tag from the given range. @start and</doc>
59841         <return-value transfer-ownership="none">
59842           <type name="none" c:type="void"/>
59843         </return-value>
59844         <parameters>
59845           <parameter name="tag" transfer-ownership="none">
59846             <doc xml:whitespace="preserve">a #GtkTextTag</doc>
59847             <type name="TextTag" c:type="GtkTextTag*"/>
59848           </parameter>
59849           <parameter name="start" transfer-ownership="none">
59850             <doc xml:whitespace="preserve">one bound of range to be untagged</doc>
59851             <type name="TextIter" c:type="GtkTextIter*"/>
59852           </parameter>
59853           <parameter name="end" transfer-ownership="none">
59854             <doc xml:whitespace="preserve">other bound of range to be untagged</doc>
59855             <type name="TextIter" c:type="GtkTextIter*"/>
59856           </parameter>
59857         </parameters>
59858       </method>
59859       <method name="apply_tag_by_name"
59860               c:identifier="gtk_text_buffer_apply_tag_by_name">
59861         <doc xml:whitespace="preserve">Calls gtk_text_tag_table_lookup() on the buffer's tag table to
59862 get a #GtkTextTag, then calls gtk_text_buffer_apply_tag().</doc>
59863         <return-value transfer-ownership="none">
59864           <type name="none" c:type="void"/>
59865         </return-value>
59866         <parameters>
59867           <parameter name="name" transfer-ownership="none">
59868             <doc xml:whitespace="preserve">name of a named #GtkTextTag</doc>
59869             <type name="utf8" c:type="gchar*"/>
59870           </parameter>
59871           <parameter name="start" transfer-ownership="none">
59872             <doc xml:whitespace="preserve">one bound of range to be tagged</doc>
59873             <type name="TextIter" c:type="GtkTextIter*"/>
59874           </parameter>
59875           <parameter name="end" transfer-ownership="none">
59876             <doc xml:whitespace="preserve">other bound of range to be tagged</doc>
59877             <type name="TextIter" c:type="GtkTextIter*"/>
59878           </parameter>
59879         </parameters>
59880       </method>
59881       <method name="remove_tag_by_name"
59882               c:identifier="gtk_text_buffer_remove_tag_by_name">
59883         <doc xml:whitespace="preserve">Calls gtk_text_tag_table_lookup() on the buffer's tag table to
59884 get a #GtkTextTag, then calls gtk_text_buffer_remove_tag().</doc>
59885         <return-value transfer-ownership="none">
59886           <type name="none" c:type="void"/>
59887         </return-value>
59888         <parameters>
59889           <parameter name="name" transfer-ownership="none">
59890             <doc xml:whitespace="preserve">name of a #GtkTextTag</doc>
59891             <type name="utf8" c:type="gchar*"/>
59892           </parameter>
59893           <parameter name="start" transfer-ownership="none">
59894             <doc xml:whitespace="preserve">one bound of range to be untagged</doc>
59895             <type name="TextIter" c:type="GtkTextIter*"/>
59896           </parameter>
59897           <parameter name="end" transfer-ownership="none">
59898             <doc xml:whitespace="preserve">other bound of range to be untagged</doc>
59899             <type name="TextIter" c:type="GtkTextIter*"/>
59900           </parameter>
59901         </parameters>
59902       </method>
59903       <method name="remove_all_tags"
59904               c:identifier="gtk_text_buffer_remove_all_tags">
59905         <doc xml:whitespace="preserve">Removes all tags in the range between @start and @end.  Be careful
59906 with this function; it could remove tags added in code unrelated to
59907 the code you're currently writing. That is, using this function is
59908 probably a bad idea if you have two or more unrelated code sections
59909 that add tags.</doc>
59910         <return-value transfer-ownership="none">
59911           <type name="none" c:type="void"/>
59912         </return-value>
59913         <parameters>
59914           <parameter name="start" transfer-ownership="none">
59915             <doc xml:whitespace="preserve">one bound of range to be untagged</doc>
59916             <type name="TextIter" c:type="GtkTextIter*"/>
59917           </parameter>
59918           <parameter name="end" transfer-ownership="none">
59919             <doc xml:whitespace="preserve">other bound of range to be untagged</doc>
59920             <type name="TextIter" c:type="GtkTextIter*"/>
59921           </parameter>
59922         </parameters>
59923       </method>
59924       <method name="create_tag"
59925               c:identifier="gtk_text_buffer_create_tag"
59926               introspectable="0">
59927         <doc xml:whitespace="preserve">Creates a tag and adds it to the tag table for @buffer.
59928 Equivalent to calling gtk_text_tag_new() and then adding the
59929 tag to the buffer's tag table. The returned tag is owned by
59930 the buffer's tag table, so the ref count will be equal to one.
59931 If @tag_name is %NULL, the tag is anonymous.
59932 If @tag_name is non-%NULL, a tag called @tag_name must not already
59933 exist in the tag table for this buffer.
59934 The @first_property_name argument and subsequent arguments are a list
59935 of properties to set on the tag, as with g_object_set().</doc>
59936         <return-value transfer-ownership="full">
59937           <doc xml:whitespace="preserve">a new tag</doc>
59938           <type name="TextTag" c:type="GtkTextTag*"/>
59939         </return-value>
59940         <parameters>
59941           <parameter name="tag_name" transfer-ownership="none" allow-none="1">
59942             <doc xml:whitespace="preserve">name of the new tag, or %NULL</doc>
59943             <type name="utf8" c:type="gchar*"/>
59944           </parameter>
59945           <parameter name="first_property_name"
59946                      transfer-ownership="none"
59947                      allow-none="1">
59948             <doc xml:whitespace="preserve">name of first property to set, or %NULL</doc>
59949             <type name="utf8" c:type="gchar*"/>
59950           </parameter>
59951           <parameter transfer-ownership="none">
59952             <varargs>
59953             </varargs>
59954           </parameter>
59955         </parameters>
59956       </method>
59957       <method name="get_iter_at_line_offset"
59958               c:identifier="gtk_text_buffer_get_iter_at_line_offset">
59959         <doc xml:whitespace="preserve">Obtains an iterator pointing to @char_offset within the given
59960 line. The @char_offset must exist, offsets off the end of the line
59961 are not allowed. Note &lt;emphasis&gt;characters&lt;/emphasis&gt;, not bytes;
59962 UTF-8 may encode one character as multiple bytes.</doc>
59963         <return-value transfer-ownership="none">
59964           <type name="none" c:type="void"/>
59965         </return-value>
59966         <parameters>
59967           <parameter name="iter" transfer-ownership="none">
59968             <doc xml:whitespace="preserve">iterator to initialize</doc>
59969             <type name="TextIter" c:type="GtkTextIter*"/>
59970           </parameter>
59971           <parameter name="line_number" transfer-ownership="none">
59972             <doc xml:whitespace="preserve">line number counting from 0</doc>
59973             <type name="int" c:type="gint"/>
59974           </parameter>
59975           <parameter name="char_offset" transfer-ownership="none">
59976             <doc xml:whitespace="preserve">char offset from start of line</doc>
59977             <type name="int" c:type="gint"/>
59978           </parameter>
59979         </parameters>
59980       </method>
59981       <method name="get_iter_at_line_index"
59982               c:identifier="gtk_text_buffer_get_iter_at_line_index">
59983         <doc xml:whitespace="preserve">Obtains an iterator pointing to @byte_index within the given line.
59984 beyond the end of the line.  Note &lt;emphasis&gt;bytes&lt;/emphasis&gt;, not
59985 characters; UTF-8 may encode one character as multiple bytes.</doc>
59986         <return-value transfer-ownership="none">
59987           <type name="none" c:type="void"/>
59988         </return-value>
59989         <parameters>
59990           <parameter name="iter" transfer-ownership="none">
59991             <doc xml:whitespace="preserve">iterator to initialize</doc>
59992             <type name="TextIter" c:type="GtkTextIter*"/>
59993           </parameter>
59994           <parameter name="line_number" transfer-ownership="none">
59995             <doc xml:whitespace="preserve">line number counting from 0</doc>
59996             <type name="int" c:type="gint"/>
59997           </parameter>
59998           <parameter name="byte_index" transfer-ownership="none">
59999             <doc xml:whitespace="preserve">byte index from start of line</doc>
60000             <type name="int" c:type="gint"/>
60001           </parameter>
60002         </parameters>
60003       </method>
60004       <method name="get_iter_at_offset"
60005               c:identifier="gtk_text_buffer_get_iter_at_offset">
60006         <doc xml:whitespace="preserve">Initializes @iter to a position @char_offset chars from the start
60007 of the entire buffer. If @char_offset is -1 or greater than the number
60008 of characters in the buffer, @iter is initialized to the end iterator,
60009 the iterator one past the last valid character in the buffer.</doc>
60010         <return-value transfer-ownership="none">
60011           <type name="none" c:type="void"/>
60012         </return-value>
60013         <parameters>
60014           <parameter name="iter" transfer-ownership="none">
60015             <doc xml:whitespace="preserve">iterator to initialize</doc>
60016             <type name="TextIter" c:type="GtkTextIter*"/>
60017           </parameter>
60018           <parameter name="char_offset" transfer-ownership="none">
60019             <doc xml:whitespace="preserve">char offset from start of buffer, counting from 0, or -1</doc>
60020             <type name="int" c:type="gint"/>
60021           </parameter>
60022         </parameters>
60023       </method>
60024       <method name="get_iter_at_line"
60025               c:identifier="gtk_text_buffer_get_iter_at_line">
60026         <doc xml:whitespace="preserve">Initializes @iter to the start of the given line.</doc>
60027         <return-value transfer-ownership="none">
60028           <type name="none" c:type="void"/>
60029         </return-value>
60030         <parameters>
60031           <parameter name="iter" transfer-ownership="none">
60032             <doc xml:whitespace="preserve">iterator to initialize</doc>
60033             <type name="TextIter" c:type="GtkTextIter*"/>
60034           </parameter>
60035           <parameter name="line_number" transfer-ownership="none">
60036             <doc xml:whitespace="preserve">line number counting from 0</doc>
60037             <type name="int" c:type="gint"/>
60038           </parameter>
60039         </parameters>
60040       </method>
60041       <method name="get_start_iter"
60042               c:identifier="gtk_text_buffer_get_start_iter">
60043         <doc xml:whitespace="preserve">Initialized @iter with the first position in the text buffer. This
60044 is the same as using gtk_text_buffer_get_iter_at_offset() to get
60045 the iter at character offset 0.</doc>
60046         <return-value transfer-ownership="none">
60047           <type name="none" c:type="void"/>
60048         </return-value>
60049         <parameters>
60050           <parameter name="iter" transfer-ownership="none">
60051             <doc xml:whitespace="preserve">iterator to initialize</doc>
60052             <type name="TextIter" c:type="GtkTextIter*"/>
60053           </parameter>
60054         </parameters>
60055       </method>
60056       <method name="get_end_iter" c:identifier="gtk_text_buffer_get_end_iter">
60057         <doc xml:whitespace="preserve">Initializes @iter with the "end iterator," one past the last valid
60058 character in the text buffer. If dereferenced with
60059 gtk_text_iter_get_char(), the end iterator has a character value of
60060 0. The entire buffer lies in the range from the first position in
60061 the buffer (call gtk_text_buffer_get_start_iter() to get
60062 character position 0) to the end iterator.</doc>
60063         <return-value transfer-ownership="none">
60064           <type name="none" c:type="void"/>
60065         </return-value>
60066         <parameters>
60067           <parameter name="iter" transfer-ownership="none">
60068             <doc xml:whitespace="preserve">iterator to initialize</doc>
60069             <type name="TextIter" c:type="GtkTextIter*"/>
60070           </parameter>
60071         </parameters>
60072       </method>
60073       <method name="get_bounds" c:identifier="gtk_text_buffer_get_bounds">
60074         <doc xml:whitespace="preserve">Retrieves the first and last iterators in the buffer, i.e. the
60075 entire buffer lies within the range [@start,@end).</doc>
60076         <return-value transfer-ownership="none">
60077           <type name="none" c:type="void"/>
60078         </return-value>
60079         <parameters>
60080           <parameter name="start" transfer-ownership="none">
60081             <doc xml:whitespace="preserve">iterator to initialize with first position in the buffer</doc>
60082             <type name="TextIter" c:type="GtkTextIter*"/>
60083           </parameter>
60084           <parameter name="end" transfer-ownership="none">
60085             <doc xml:whitespace="preserve">iterator to initialize with the end iterator</doc>
60086             <type name="TextIter" c:type="GtkTextIter*"/>
60087           </parameter>
60088         </parameters>
60089       </method>
60090       <method name="get_iter_at_mark"
60091               c:identifier="gtk_text_buffer_get_iter_at_mark">
60092         <doc xml:whitespace="preserve">Initializes @iter with the current position of @mark.</doc>
60093         <return-value transfer-ownership="none">
60094           <type name="none" c:type="void"/>
60095         </return-value>
60096         <parameters>
60097           <parameter name="iter" transfer-ownership="none">
60098             <doc xml:whitespace="preserve">iterator to initialize</doc>
60099             <type name="TextIter" c:type="GtkTextIter*"/>
60100           </parameter>
60101           <parameter name="mark" transfer-ownership="none">
60102             <doc xml:whitespace="preserve">a #GtkTextMark in @buffer</doc>
60103             <type name="TextMark" c:type="GtkTextMark*"/>
60104           </parameter>
60105         </parameters>
60106       </method>
60107       <method name="get_iter_at_child_anchor"
60108               c:identifier="gtk_text_buffer_get_iter_at_child_anchor">
60109         <doc xml:whitespace="preserve">Obtains the location of @anchor within @buffer.</doc>
60110         <return-value transfer-ownership="none">
60111           <type name="none" c:type="void"/>
60112         </return-value>
60113         <parameters>
60114           <parameter name="iter" transfer-ownership="none">
60115             <doc xml:whitespace="preserve">an iterator to be initialized</doc>
60116             <type name="TextIter" c:type="GtkTextIter*"/>
60117           </parameter>
60118           <parameter name="anchor" transfer-ownership="none">
60119             <doc xml:whitespace="preserve">a child anchor that appears in @buffer</doc>
60120             <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
60121           </parameter>
60122         </parameters>
60123       </method>
60124       <method name="get_modified" c:identifier="gtk_text_buffer_get_modified">
60125         <doc xml:whitespace="preserve">Indicates whether the buffer has been modified since the last call
60126 to gtk_text_buffer_set_modified() set the modification flag to
60127 %FALSE. Used for example to enable a "save" function in a text
60128 editor.</doc>
60129         <return-value transfer-ownership="none">
60130           <doc xml:whitespace="preserve">%TRUE if the buffer has been modified</doc>
60131           <type name="boolean" c:type="gboolean"/>
60132         </return-value>
60133       </method>
60134       <method name="set_modified" c:identifier="gtk_text_buffer_set_modified">
60135         <doc xml:whitespace="preserve">Used to keep track of whether the buffer has been modified since the
60136 last time it was saved. Whenever the buffer is saved to disk, call
60137 gtk_text_buffer_set_modified (@buffer, FALSE). When the buffer is modified,
60138 it will automatically toggled on the modified bit again. When the modified
60139 bit flips, the buffer emits a "modified-changed" signal.</doc>
60140         <return-value transfer-ownership="none">
60141           <type name="none" c:type="void"/>
60142         </return-value>
60143         <parameters>
60144           <parameter name="setting" transfer-ownership="none">
60145             <doc xml:whitespace="preserve">modification flag setting</doc>
60146             <type name="boolean" c:type="gboolean"/>
60147           </parameter>
60148         </parameters>
60149       </method>
60150       <method name="get_has_selection"
60151               c:identifier="gtk_text_buffer_get_has_selection"
60152               version="2.10">
60153         <doc xml:whitespace="preserve">Indicates whether the buffer has some text currently selected.</doc>
60154         <return-value transfer-ownership="none">
60155           <doc xml:whitespace="preserve">%TRUE if the there is text selected</doc>
60156           <type name="boolean" c:type="gboolean"/>
60157         </return-value>
60158       </method>
60159       <method name="add_selection_clipboard"
60160               c:identifier="gtk_text_buffer_add_selection_clipboard">
60161         <doc xml:whitespace="preserve">Adds @clipboard to the list of clipboards in which the selection 
60162 contents of @buffer are available. In most cases, @clipboard will be 
60163 the #GtkClipboard of type %GDK_SELECTION_PRIMARY for a view of @buffer.</doc>
60164         <return-value transfer-ownership="none">
60165           <type name="none" c:type="void"/>
60166         </return-value>
60167         <parameters>
60168           <parameter name="clipboard" transfer-ownership="none">
60169             <doc xml:whitespace="preserve">a #GtkClipboard</doc>
60170             <type name="Clipboard" c:type="GtkClipboard*"/>
60171           </parameter>
60172         </parameters>
60173       </method>
60174       <method name="remove_selection_clipboard"
60175               c:identifier="gtk_text_buffer_remove_selection_clipboard">
60176         <doc xml:whitespace="preserve">Removes a #GtkClipboard added with 
60177 gtk_text_buffer_add_selection_clipboard().</doc>
60178         <return-value transfer-ownership="none">
60179           <type name="none" c:type="void"/>
60180         </return-value>
60181         <parameters>
60182           <parameter name="clipboard" transfer-ownership="none">
60183             <doc xml:whitespace="preserve">a #GtkClipboard added to @buffer by gtk_text_buffer_add_selection_clipboard()</doc>
60184             <type name="Clipboard" c:type="GtkClipboard*"/>
60185           </parameter>
60186         </parameters>
60187       </method>
60188       <method name="cut_clipboard"
60189               c:identifier="gtk_text_buffer_cut_clipboard">
60190         <doc xml:whitespace="preserve">Copies the currently-selected text to a clipboard, then deletes
60191 said text if it's editable.</doc>
60192         <return-value transfer-ownership="none">
60193           <type name="none" c:type="void"/>
60194         </return-value>
60195         <parameters>
60196           <parameter name="clipboard" transfer-ownership="none">
60197             <doc xml:whitespace="preserve">the #GtkClipboard object to cut to</doc>
60198             <type name="Clipboard" c:type="GtkClipboard*"/>
60199           </parameter>
60200           <parameter name="default_editable" transfer-ownership="none">
60201             <doc xml:whitespace="preserve">default editability of the buffer</doc>
60202             <type name="boolean" c:type="gboolean"/>
60203           </parameter>
60204         </parameters>
60205       </method>
60206       <method name="copy_clipboard"
60207               c:identifier="gtk_text_buffer_copy_clipboard">
60208         <doc xml:whitespace="preserve">Copies the currently-selected text to a clipboard.</doc>
60209         <return-value transfer-ownership="none">
60210           <type name="none" c:type="void"/>
60211         </return-value>
60212         <parameters>
60213           <parameter name="clipboard" transfer-ownership="none">
60214             <doc xml:whitespace="preserve">the #GtkClipboard object to copy to</doc>
60215             <type name="Clipboard" c:type="GtkClipboard*"/>
60216           </parameter>
60217         </parameters>
60218       </method>
60219       <method name="paste_clipboard"
60220               c:identifier="gtk_text_buffer_paste_clipboard">
60221         <doc xml:whitespace="preserve">Pastes the contents of a clipboard at the insertion point, or at
60222 ask for the paste data and return, and at some point later after 
60223 the main loop runs, the paste data will be inserted.)</doc>
60224         <return-value transfer-ownership="none">
60225           <type name="none" c:type="void"/>
60226         </return-value>
60227         <parameters>
60228           <parameter name="clipboard" transfer-ownership="none">
60229             <doc xml:whitespace="preserve">the #GtkClipboard to paste from</doc>
60230             <type name="Clipboard" c:type="GtkClipboard*"/>
60231           </parameter>
60232           <parameter name="override_location"
60233                      transfer-ownership="none"
60234                      allow-none="1">
60235             <doc xml:whitespace="preserve">location to insert pasted text, or %NULL for at the cursor</doc>
60236             <type name="TextIter" c:type="GtkTextIter*"/>
60237           </parameter>
60238           <parameter name="default_editable" transfer-ownership="none">
60239             <doc xml:whitespace="preserve">whether the buffer is editable by default</doc>
60240             <type name="boolean" c:type="gboolean"/>
60241           </parameter>
60242         </parameters>
60243       </method>
60244       <method name="get_selection_bounds"
60245               c:identifier="gtk_text_buffer_get_selection_bounds">
60246         <doc xml:whitespace="preserve">Returns %TRUE if some text is selected; places the bounds
60247 of the selection in @start and @end (if the selection has length 0,
60248 then @start and @end are filled in with the same value).
60249 NULL, then they are not filled in, but the return value still indicates
60250 whether text is selected.</doc>
60251         <return-value transfer-ownership="none">
60252           <doc xml:whitespace="preserve">whether the selection has nonzero length</doc>
60253           <type name="boolean" c:type="gboolean"/>
60254         </return-value>
60255         <parameters>
60256           <parameter name="start" transfer-ownership="none">
60257             <doc xml:whitespace="preserve">iterator to initialize with selection start</doc>
60258             <type name="TextIter" c:type="GtkTextIter*"/>
60259           </parameter>
60260           <parameter name="end" transfer-ownership="none">
60261             <doc xml:whitespace="preserve">iterator to initialize with selection end</doc>
60262             <type name="TextIter" c:type="GtkTextIter*"/>
60263           </parameter>
60264         </parameters>
60265       </method>
60266       <method name="delete_selection"
60267               c:identifier="gtk_text_buffer_delete_selection">
60268         <doc xml:whitespace="preserve">Deletes the range between the "insert" and "selection_bound" marks,
60269 that is, the currently-selected text. If @interactive is %TRUE,
60270 the editability of the selection will be considered (users can't delete
60271 uneditable text).</doc>
60272         <return-value transfer-ownership="none">
60273           <doc xml:whitespace="preserve">whether there was a non-empty selection to delete</doc>
60274           <type name="boolean" c:type="gboolean"/>
60275         </return-value>
60276         <parameters>
60277           <parameter name="interactive" transfer-ownership="none">
60278             <doc xml:whitespace="preserve">whether the deletion is caused by user interaction</doc>
60279             <type name="boolean" c:type="gboolean"/>
60280           </parameter>
60281           <parameter name="default_editable" transfer-ownership="none">
60282             <doc xml:whitespace="preserve">whether the buffer is editable by default</doc>
60283             <type name="boolean" c:type="gboolean"/>
60284           </parameter>
60285         </parameters>
60286       </method>
60287       <method name="begin_user_action"
60288               c:identifier="gtk_text_buffer_begin_user_action">
60289         <doc xml:whitespace="preserve">Called to indicate that the buffer operations between here and a
60290 call to gtk_text_buffer_end_user_action() are part of a single
60291 user-visible operation. The operations between
60292 gtk_text_buffer_begin_user_action() and
60293 gtk_text_buffer_end_user_action() can then be grouped when creating
60294 an undo stack. #GtkTextBuffer maintains a count of calls to
60295 gtk_text_buffer_begin_user_action() that have not been closed with
60296 a call to gtk_text_buffer_end_user_action(), and emits the 
60297 "begin-user-action" and "end-user-action" signals only for the 
60298 outermost pair of calls. This allows you to build user actions 
60299 from other user actions.
60300 The "interactive" buffer mutation functions, such as
60301 gtk_text_buffer_insert_interactive(), automatically call begin/end
60302 user action around the buffer operations they perform, so there's
60303 no need to add extra calls if you user action consists solely of a
60304 single call to one of those functions.</doc>
60305         <return-value transfer-ownership="none">
60306           <type name="none" c:type="void"/>
60307         </return-value>
60308       </method>
60309       <method name="end_user_action"
60310               c:identifier="gtk_text_buffer_end_user_action">
60311         <doc xml:whitespace="preserve">Should be paired with a call to gtk_text_buffer_begin_user_action().
60312 See that function for a full explanation.</doc>
60313         <return-value transfer-ownership="none">
60314           <type name="none" c:type="void"/>
60315         </return-value>
60316       </method>
60317       <method name="get_copy_target_list"
60318               c:identifier="gtk_text_buffer_get_copy_target_list"
60319               version="2.10">
60320         <doc xml:whitespace="preserve">This function returns the list of targets this text buffer can
60321 provide for copying and as DND source. The targets in the list are
60322 added with %info values from the #GtkTextBufferTargetInfo enum,
60323 using gtk_target_list_add_rich_text_targets() and
60324 gtk_target_list_add_text_targets().</doc>
60325         <return-value transfer-ownership="full">
60326           <doc xml:whitespace="preserve">the #GtkTargetList</doc>
60327           <type name="TargetList" c:type="GtkTargetList*"/>
60328         </return-value>
60329       </method>
60330       <method name="get_paste_target_list"
60331               c:identifier="gtk_text_buffer_get_paste_target_list"
60332               version="2.10">
60333         <doc xml:whitespace="preserve">This function returns the list of targets this text buffer supports
60334 for pasting and as DND destination. The targets in the list are
60335 added with %info values from the #GtkTextBufferTargetInfo enum,
60336 using gtk_target_list_add_rich_text_targets() and
60337 gtk_target_list_add_text_targets().</doc>
60338         <return-value transfer-ownership="full">
60339           <doc xml:whitespace="preserve">the #GtkTargetList</doc>
60340           <type name="TargetList" c:type="GtkTargetList*"/>
60341         </return-value>
60342       </method>
60343       <method name="register_serialize_format"
60344               c:identifier="gtk_text_buffer_register_serialize_format"
60345               version="2.10">
60346         <doc xml:whitespace="preserve">This function registers a rich text serialization @function along with
60347 its @mime_type with the passed @buffer.
60348 format's mime-type.</doc>
60349         <return-value transfer-ownership="full">
60350           <doc xml:whitespace="preserve">the #GdkAtom that corresponds to the newly registered</doc>
60351           <type name="Gdk.Atom" c:type="GdkAtom"/>
60352         </return-value>
60353         <parameters>
60354           <parameter name="mime_type" transfer-ownership="none">
60355             <doc xml:whitespace="preserve">the format's mime-type</doc>
60356             <type name="utf8" c:type="gchar*"/>
60357           </parameter>
60358           <parameter name="function"
60359                      transfer-ownership="none"
60360                      scope="notified"
60361                      closure="3"
60362                      destroy="4">
60363             <doc xml:whitespace="preserve">the serialize function to register</doc>
60364             <type name="TextBufferSerializeFunc"
60365                   c:type="GtkTextBufferSerializeFunc"/>
60366           </parameter>
60367           <parameter name="user_data" transfer-ownership="none">
60368             <doc xml:whitespace="preserve">%function's user_data</doc>
60369             <type name="any" c:type="gpointer"/>
60370           </parameter>
60371           <parameter name="user_data_destroy"
60372                      transfer-ownership="none"
60373                      scope="call">
60374             <doc xml:whitespace="preserve">a function to call when @user_data is no longer needed</doc>
60375             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
60376           </parameter>
60377         </parameters>
60378       </method>
60379       <method name="register_serialize_tagset"
60380               c:identifier="gtk_text_buffer_register_serialize_tagset"
60381               version="2.10">
60382         <doc xml:whitespace="preserve">This function registers GTK+'s internal rich text serialization
60383 format with the passed @buffer. The internal format does not comply
60384 to any standard rich text format and only works between #GtkTextBuffer
60385 instances. It is capable of serializing all of a text buffer's tags
60386 and embedded pixbufs.
60387 This function is just a wrapper around
60388 gtk_text_buffer_register_serialize_format(). The mime type used
60389 for registering is "application/x-gtk-text-buffer-rich-text", or
60390 "application/x-gtk-text-buffer-rich-text;format=@tagset_name" if a
60391 The @tagset_name can be used to restrict the transfer of rich text
60392 to buffers with compatible sets of tags, in order to avoid unknown
60393 tags from being pasted. It is probably the common case to pass an
60394 identifier != %NULL here, since the %NULL tagset requires the
60395 receiving buffer to deal with with pasting of arbitrary tags.
60396 format's mime-type.</doc>
60397         <return-value transfer-ownership="full">
60398           <doc xml:whitespace="preserve">the #GdkAtom that corresponds to the newly registered</doc>
60399           <type name="Gdk.Atom" c:type="GdkAtom"/>
60400         </return-value>
60401         <parameters>
60402           <parameter name="tagset_name"
60403                      transfer-ownership="none"
60404                      allow-none="1">
60405             <doc xml:whitespace="preserve">an optional tagset name, on %NULL</doc>
60406             <type name="utf8" c:type="gchar*"/>
60407           </parameter>
60408         </parameters>
60409       </method>
60410       <method name="register_deserialize_format"
60411               c:identifier="gtk_text_buffer_register_deserialize_format"
60412               version="2.10">
60413         <doc xml:whitespace="preserve">This function registers a rich text deserialization @function along with
60414 its @mime_type with the passed @buffer.
60415 format's mime-type.</doc>
60416         <return-value transfer-ownership="full">
60417           <doc xml:whitespace="preserve">the #GdkAtom that corresponds to the newly registered</doc>
60418           <type name="Gdk.Atom" c:type="GdkAtom"/>
60419         </return-value>
60420         <parameters>
60421           <parameter name="mime_type" transfer-ownership="none">
60422             <doc xml:whitespace="preserve">the format's mime-type</doc>
60423             <type name="utf8" c:type="gchar*"/>
60424           </parameter>
60425           <parameter name="function"
60426                      transfer-ownership="none"
60427                      scope="notified"
60428                      closure="3"
60429                      destroy="4">
60430             <doc xml:whitespace="preserve">the deserialize function to register</doc>
60431             <type name="TextBufferDeserializeFunc"
60432                   c:type="GtkTextBufferDeserializeFunc"/>
60433           </parameter>
60434           <parameter name="user_data" transfer-ownership="none">
60435             <doc xml:whitespace="preserve">@function's user_data</doc>
60436             <type name="any" c:type="gpointer"/>
60437           </parameter>
60438           <parameter name="user_data_destroy"
60439                      transfer-ownership="none"
60440                      scope="call">
60441             <doc xml:whitespace="preserve">a function to call when @user_data is no longer needed</doc>
60442             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
60443           </parameter>
60444         </parameters>
60445       </method>
60446       <method name="register_deserialize_tagset"
60447               c:identifier="gtk_text_buffer_register_deserialize_tagset"
60448               version="2.10">
60449         <doc xml:whitespace="preserve">This function registers GTK+'s internal rich text serialization
60450 format with the passed @buffer. See
60451 gtk_text_buffer_register_serialize_tagset() for details.
60452 format's mime-type.</doc>
60453         <return-value transfer-ownership="full">
60454           <doc xml:whitespace="preserve">the #GdkAtom that corresponds to the newly registered</doc>
60455           <type name="Gdk.Atom" c:type="GdkAtom"/>
60456         </return-value>
60457         <parameters>
60458           <parameter name="tagset_name"
60459                      transfer-ownership="none"
60460                      allow-none="1">
60461             <doc xml:whitespace="preserve">an optional tagset name, on %NULL</doc>
60462             <type name="utf8" c:type="gchar*"/>
60463           </parameter>
60464         </parameters>
60465       </method>
60466       <method name="unregister_serialize_format"
60467               c:identifier="gtk_text_buffer_unregister_serialize_format"
60468               version="2.10">
60469         <doc xml:whitespace="preserve">This function unregisters a rich text format that was previously
60470 registered using gtk_text_buffer_register_serialize_format() or
60471 gtk_text_buffer_register_serialize_tagset()</doc>
60472         <return-value transfer-ownership="none">
60473           <type name="none" c:type="void"/>
60474         </return-value>
60475         <parameters>
60476           <parameter name="format" transfer-ownership="none">
60477             <doc xml:whitespace="preserve">a #GdkAtom representing a registered rich text format.</doc>
60478             <type name="Gdk.Atom" c:type="GdkAtom"/>
60479           </parameter>
60480         </parameters>
60481       </method>
60482       <method name="unregister_deserialize_format"
60483               c:identifier="gtk_text_buffer_unregister_deserialize_format"
60484               version="2.10">
60485         <doc xml:whitespace="preserve">This function unregisters a rich text format that was previously
60486 registered using gtk_text_buffer_register_deserialize_format() or
60487 gtk_text_buffer_register_deserialize_tagset().</doc>
60488         <return-value transfer-ownership="none">
60489           <type name="none" c:type="void"/>
60490         </return-value>
60491         <parameters>
60492           <parameter name="format" transfer-ownership="none">
60493             <doc xml:whitespace="preserve">a #GdkAtom representing a registered rich text format.</doc>
60494             <type name="Gdk.Atom" c:type="GdkAtom"/>
60495           </parameter>
60496         </parameters>
60497       </method>
60498       <method name="deserialize_set_can_create_tags"
60499               c:identifier="gtk_text_buffer_deserialize_set_can_create_tags"
60500               version="2.10">
60501         <doc xml:whitespace="preserve">Use this function to allow a rich text deserialization function to
60502 create new tags in the receiving buffer. Note that using this
60503 function is almost always a bad idea, because the rich text
60504 functions you register should know how to map the rich text format
60505 they handler to your text buffers set of tags.
60506 The ability of creating new (arbitrary!) tags in the receiving buffer
60507 is meant for special rich text formats like the internal one that
60508 is registered using gtk_text_buffer_register_deserialize_tagset(),
60509 because that format is essentially a dump of the internal structure
60510 of the source buffer, including its tag names.
60511 You should allow creation of tags only if you know what you are
60512 doing, e.g. if you defined a tagset name for your application
60513 suite's text buffers and you know that it's fine to receive new
60514 tags from these buffers, because you know that your application can
60515 handle the newly created tags.</doc>
60516         <return-value transfer-ownership="none">
60517           <type name="none" c:type="void"/>
60518         </return-value>
60519         <parameters>
60520           <parameter name="format" transfer-ownership="none">
60521             <doc xml:whitespace="preserve">a #GdkAtom representing a registered rich text format</doc>
60522             <type name="Gdk.Atom" c:type="GdkAtom"/>
60523           </parameter>
60524           <parameter name="can_create_tags" transfer-ownership="none">
60525             <doc xml:whitespace="preserve">whether deserializing this format may create tags</doc>
60526             <type name="boolean" c:type="gboolean"/>
60527           </parameter>
60528         </parameters>
60529       </method>
60530       <method name="deserialize_get_can_create_tags"
60531               c:identifier="gtk_text_buffer_deserialize_get_can_create_tags"
60532               version="2.10">
60533         <doc xml:whitespace="preserve">This functions returns the value set with
60534 gtk_text_buffer_deserialize_set_can_create_tags()</doc>
60535         <return-value transfer-ownership="none">
60536           <doc xml:whitespace="preserve">whether deserializing this format may create tags</doc>
60537           <type name="boolean" c:type="gboolean"/>
60538         </return-value>
60539         <parameters>
60540           <parameter name="format" transfer-ownership="none">
60541             <doc xml:whitespace="preserve">a #GdkAtom representing a registered rich text format</doc>
60542             <type name="Gdk.Atom" c:type="GdkAtom"/>
60543           </parameter>
60544         </parameters>
60545       </method>
60546       <method name="get_serialize_formats"
60547               c:identifier="gtk_text_buffer_get_serialize_formats"
60548               version="2.10">
60549         <doc xml:whitespace="preserve">This function returns the rich text serialize formats registered
60550 with @buffer using gtk_text_buffer_register_serialize_format() or
60551 gtk_text_buffer_register_serialize_tagset()
60552 formats.</doc>
60553         <return-value transfer-ownership="full">
60554           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s representing the registered</doc>
60555           <type name="Gdk.Atom" c:type="GdkAtom*"/>
60556         </return-value>
60557         <parameters>
60558           <parameter name="n_formats"
60559                      direction="out"
60560                      caller-allocates="0"
60561                      transfer-ownership="full">
60562             <doc xml:whitespace="preserve">return location for the number of formats</doc>
60563             <type name="int" c:type="gint*"/>
60564           </parameter>
60565         </parameters>
60566       </method>
60567       <method name="get_deserialize_formats"
60568               c:identifier="gtk_text_buffer_get_deserialize_formats"
60569               version="2.10">
60570         <doc xml:whitespace="preserve">This function returns the rich text deserialize formats registered
60571 with @buffer using gtk_text_buffer_register_deserialize_format() or
60572 gtk_text_buffer_register_deserialize_tagset()
60573 formats.</doc>
60574         <return-value transfer-ownership="full">
60575           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s representing the registered</doc>
60576           <type name="Gdk.Atom" c:type="GdkAtom*"/>
60577         </return-value>
60578         <parameters>
60579           <parameter name="n_formats"
60580                      direction="out"
60581                      caller-allocates="0"
60582                      transfer-ownership="full">
60583             <doc xml:whitespace="preserve">return location for the number of formats</doc>
60584             <type name="int" c:type="gint*"/>
60585           </parameter>
60586         </parameters>
60587       </method>
60588       <method name="serialize"
60589               c:identifier="gtk_text_buffer_serialize"
60590               version="2.10">
60591         <doc xml:whitespace="preserve">This function serializes the portion of text between @start
60592 and @end in the rich text format represented by @format.
60593 gtk_text_buffer_register_serialize_format() or
60594 gtk_text_buffer_register_serialize_tagset() beforehand.</doc>
60595         <return-value transfer-ownership="full">
60596           <doc xml:whitespace="preserve">the serialized data, encoded as @format</doc>
60597           <array c:type="guint8*">
60598             <type name="uint8"/>
60599           </array>
60600         </return-value>
60601         <parameters>
60602           <parameter name="content_buffer" transfer-ownership="none">
60603             <doc xml:whitespace="preserve">the #GtkTextBuffer to serialize</doc>
60604             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
60605           </parameter>
60606           <parameter name="format" transfer-ownership="none">
60607             <doc xml:whitespace="preserve">the rich text format to use for serializing</doc>
60608             <type name="Gdk.Atom" c:type="GdkAtom"/>
60609           </parameter>
60610           <parameter name="start" transfer-ownership="none">
60611             <doc xml:whitespace="preserve">start of block of text to serialize</doc>
60612             <type name="TextIter" c:type="GtkTextIter*"/>
60613           </parameter>
60614           <parameter name="end" transfer-ownership="none">
60615             <doc xml:whitespace="preserve">end of block of test to serialize</doc>
60616             <type name="TextIter" c:type="GtkTextIter*"/>
60617           </parameter>
60618           <parameter name="length"
60619                      direction="out"
60620                      caller-allocates="0"
60621                      transfer-ownership="full">
60622             <doc xml:whitespace="preserve">return location for the length of the serialized data</doc>
60623             <type name="gsize" c:type="gsize*"/>
60624           </parameter>
60625         </parameters>
60626       </method>
60627       <method name="deserialize"
60628               c:identifier="gtk_text_buffer_deserialize"
60629               version="2.10"
60630               throws="1">
60631         <doc xml:whitespace="preserve">This function deserializes rich text in format @format and inserts
60632 it at @iter.
60633 gtk_text_buffer_register_deserialize_format() or
60634 gtk_text_buffer_register_deserialize_tagset() beforehand.</doc>
60635         <return-value transfer-ownership="none">
60636           <doc xml:whitespace="preserve">%TRUE on success, %FALSE otherwise.</doc>
60637           <type name="boolean" c:type="gboolean"/>
60638         </return-value>
60639         <parameters>
60640           <parameter name="content_buffer" transfer-ownership="none">
60641             <doc xml:whitespace="preserve">the #GtkTextBuffer to deserialize into</doc>
60642             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
60643           </parameter>
60644           <parameter name="format" transfer-ownership="none">
60645             <doc xml:whitespace="preserve">the rich text format to use for deserializing</doc>
60646             <type name="Gdk.Atom" c:type="GdkAtom"/>
60647           </parameter>
60648           <parameter name="iter" transfer-ownership="none">
60649             <doc xml:whitespace="preserve">insertion point for the deserialized text</doc>
60650             <type name="TextIter" c:type="GtkTextIter*"/>
60651           </parameter>
60652           <parameter name="data" transfer-ownership="none">
60653             <doc xml:whitespace="preserve">data to deserialize</doc>
60654             <array c:type="guint8*">
60655               <type name="uint8"/>
60656             </array>
60657           </parameter>
60658           <parameter name="length" transfer-ownership="none">
60659             <doc xml:whitespace="preserve">length of @data</doc>
60660             <type name="gsize" c:type="gsize"/>
60661           </parameter>
60662         </parameters>
60663       </method>
60664       <property name="copy-target-list"
60665                 version="2.10"
60666                 transfer-ownership="none">
60667         <doc xml:whitespace="preserve">The list of targets this buffer supports for clipboard copying
60668 and as DND source.</doc>
60669         <type name="TargetList" c:type="GtkTargetList"/>
60670       </property>
60671       <property name="cursor-position"
60672                 version="2.10"
60673                 transfer-ownership="none">
60674         <doc xml:whitespace="preserve">The position of the insert mark (as offset from the beginning 
60675 of the buffer). It is useful for getting notified when the 
60676 cursor moves.</doc>
60677         <type name="int" c:type="gint"/>
60678       </property>
60679       <property name="has-selection" version="2.10" transfer-ownership="none">
60680         <doc xml:whitespace="preserve">Whether the buffer has some text currently selected.</doc>
60681         <type name="boolean" c:type="gboolean"/>
60682       </property>
60683       <property name="paste-target-list"
60684                 version="2.10"
60685                 transfer-ownership="none">
60686         <doc xml:whitespace="preserve">The list of targets this buffer supports for clipboard pasting
60687 and as DND destination.</doc>
60688         <type name="TargetList" c:type="GtkTargetList"/>
60689       </property>
60690       <property name="tag-table"
60691                 writable="1"
60692                 construct-only="1"
60693                 transfer-ownership="none">
60694         <type name="TextTagTable" c:type="GtkTextTagTable"/>
60695       </property>
60696       <property name="text"
60697                 version="2.8"
60698                 writable="1"
60699                 transfer-ownership="none">
60700         <doc xml:whitespace="preserve">The text content of the buffer. Without child widgets and images,
60701 see gtk_text_buffer_get_text() for more information.</doc>
60702         <type name="utf8" c:type="gchararray"/>
60703       </property>
60704       <field name="parent_instance">
60705         <type name="GObject.Object" c:type="GObject"/>
60706       </field>
60707       <field name="tag_table">
60708         <type name="TextTagTable" c:type="GtkTextTagTable*"/>
60709       </field>
60710       <field name="btree">
60711         <type name="TextBTree" c:type="GtkTextBTree*"/>
60712       </field>
60713       <field name="clipboard_contents_buffers">
60714         <type name="GLib.SList" c:type="GSList*">
60715           <type name="any" c:type="gpointer"/>
60716         </type>
60717       </field>
60718       <field name="selection_clipboards">
60719         <type name="GLib.SList" c:type="GSList*">
60720           <type name="any" c:type="gpointer"/>
60721         </type>
60722       </field>
60723       <field name="log_attr_cache">
60724         <type name="TextLogAttrCache" c:type="GtkTextLogAttrCache*"/>
60725       </field>
60726       <field name="user_action_count">
60727         <type name="uint" c:type="guint"/>
60728       </field>
60729       <field name="modified" bits="1">
60730         <type name="uint" c:type="guint"/>
60731       </field>
60732       <field name="has_selection" bits="1">
60733         <type name="uint" c:type="guint"/>
60734       </field>
60735       <glib:signal name="apply-tag">
60736         <doc xml:whitespace="preserve">The ::apply-tag signal is emitted to apply a tag to a
60737 range of text in a #GtkTextBuffer. 
60738 Applying actually occurs in the default handler.
60739 Note that if your handler runs before the default handler it must not 
60740 invalidate the @start and @end iters (or has to revalidate them). 
60741 gtk_text_buffer_apply_tag(),
60742 gtk_text_buffer_insert_with_tags(),
60743 gtk_text_buffer_insert_range().</doc>
60744         <return-value transfer-ownership="full">
60745           <type name="none" c:type="void"/>
60746         </return-value>
60747         <parameters>
60748           <parameter name="tag" transfer-ownership="none">
60749             <doc xml:whitespace="preserve">the applied tag</doc>
60750             <type name="TextTag" c:type="GtkTextTag"/>
60751           </parameter>
60752           <parameter name="start" transfer-ownership="none">
60753             <doc xml:whitespace="preserve">the start of the range the tag is applied to</doc>
60754             <type name="TextIter" c:type="GtkTextIter"/>
60755           </parameter>
60756           <parameter name="end" transfer-ownership="none">
60757             <doc xml:whitespace="preserve">the end of the range the tag is applied to</doc>
60758             <type name="TextIter" c:type="GtkTextIter"/>
60759           </parameter>
60760         </parameters>
60761       </glib:signal>
60762       <glib:signal name="begin-user-action">
60763         <doc xml:whitespace="preserve">The ::begin-user-action signal is emitted at the beginning of a single
60764 user-visible operation on a #GtkTextBuffer.
60765 gtk_text_buffer_begin_user_action(),
60766 gtk_text_buffer_insert_interactive(),
60767 gtk_text_buffer_insert_range_interactive(),
60768 gtk_text_buffer_delete_interactive(),
60769 gtk_text_buffer_backspace(),
60770 gtk_text_buffer_delete_selection().</doc>
60771         <return-value transfer-ownership="full">
60772           <type name="none" c:type="void"/>
60773         </return-value>
60774       </glib:signal>
60775       <glib:signal name="changed">
60776         <doc xml:whitespace="preserve">The ::changed signal is emitted when the content of a #GtkTextBuffer 
60777 has changed.</doc>
60778         <return-value transfer-ownership="full">
60779           <type name="none" c:type="void"/>
60780         </return-value>
60781       </glib:signal>
60782       <glib:signal name="delete-range">
60783         <doc xml:whitespace="preserve">The ::delete-range signal is emitted to delete a range 
60784 from a #GtkTextBuffer. 
60785 Note that if your handler runs before the default handler it must not 
60786 invalidate the @start and @end iters (or has to revalidate them). 
60787 The default signal handler revalidates the @start and @end iters to 
60788 both point point to the location where text was deleted. Handlers
60789 which run after the default handler (see g_signal_connect_after())
60790 do not have access to the deleted text.</doc>
60791         <return-value transfer-ownership="full">
60792           <type name="none" c:type="void"/>
60793         </return-value>
60794         <parameters>
60795           <parameter name="start" transfer-ownership="none">
60796             <doc xml:whitespace="preserve">the start of the range to be deleted</doc>
60797             <type name="TextIter" c:type="GtkTextIter"/>
60798           </parameter>
60799           <parameter name="end" transfer-ownership="none">
60800             <doc xml:whitespace="preserve">the end of the range to be deleted</doc>
60801             <type name="TextIter" c:type="GtkTextIter"/>
60802           </parameter>
60803         </parameters>
60804       </glib:signal>
60805       <glib:signal name="end-user-action">
60806         <doc xml:whitespace="preserve">The ::end-user-action signal is emitted at the end of a single
60807 user-visible operation on the #GtkTextBuffer.
60808 gtk_text_buffer_end_user_action(),
60809 gtk_text_buffer_insert_interactive(),
60810 gtk_text_buffer_insert_range_interactive(),
60811 gtk_text_buffer_delete_interactive(),
60812 gtk_text_buffer_backspace(),
60813 gtk_text_buffer_delete_selection(),
60814 gtk_text_buffer_backspace().</doc>
60815         <return-value transfer-ownership="full">
60816           <type name="none" c:type="void"/>
60817         </return-value>
60818       </glib:signal>
60819       <glib:signal name="insert-child-anchor">
60820         <doc xml:whitespace="preserve">The ::insert-child-anchor signal is emitted to insert a
60821 #GtkTextChildAnchor in a #GtkTextBuffer.
60822 Insertion actually occurs in the default handler.
60823 Note that if your handler runs before the default handler it must
60824 not invalidate the @location iter (or has to revalidate it). 
60825 The default signal handler revalidates it to be placed after the 
60826 inserted @anchor.</doc>
60827         <return-value transfer-ownership="full">
60828           <type name="none" c:type="void"/>
60829         </return-value>
60830         <parameters>
60831           <parameter name="location" transfer-ownership="none">
60832             <doc xml:whitespace="preserve">position to insert @anchor in @textbuffer</doc>
60833             <type name="TextIter" c:type="GtkTextIter"/>
60834           </parameter>
60835           <parameter name="anchor" transfer-ownership="none">
60836             <doc xml:whitespace="preserve">the #GtkTextChildAnchor to be inserted</doc>
60837             <type name="TextChildAnchor" c:type="GtkTextChildAnchor"/>
60838           </parameter>
60839         </parameters>
60840       </glib:signal>
60841       <glib:signal name="insert-pixbuf">
60842         <doc xml:whitespace="preserve">The ::insert-pixbuf signal is emitted to insert a #GdkPixbuf 
60843 in a #GtkTextBuffer. Insertion actually occurs in the default handler.
60844 Note that if your handler runs before the default handler it must not 
60845 invalidate the @location iter (or has to revalidate it). 
60846 The default signal handler revalidates it to be placed after the 
60847 inserted @pixbuf.</doc>
60848         <return-value transfer-ownership="full">
60849           <type name="none" c:type="void"/>
60850         </return-value>
60851         <parameters>
60852           <parameter name="location" transfer-ownership="none">
60853             <doc xml:whitespace="preserve">position to insert @pixbuf in @textbuffer</doc>
60854             <type name="TextIter" c:type="GtkTextIter"/>
60855           </parameter>
60856           <parameter name="pixbuf" transfer-ownership="none">
60857             <doc xml:whitespace="preserve">the #GdkPixbuf to be inserted</doc>
60858             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf"/>
60859           </parameter>
60860         </parameters>
60861       </glib:signal>
60862       <glib:signal name="insert-text">
60863         <doc xml:whitespace="preserve">The ::insert-text signal is emitted to insert text in a #GtkTextBuffer.
60864 Insertion actually occurs in the default handler.  
60865 Note that if your handler runs before the default handler it must not 
60866 invalidate the @location iter (or has to revalidate it). 
60867 The default signal handler revalidates it to point to the end of the 
60868 inserted text.
60869 gtk_text_buffer_insert(), 
60870 gtk_text_buffer_insert_range().</doc>
60871         <return-value transfer-ownership="full">
60872           <type name="none" c:type="void"/>
60873         </return-value>
60874         <parameters>
60875           <parameter name="location" transfer-ownership="none">
60876             <doc xml:whitespace="preserve">position to insert @text in @textbuffer</doc>
60877             <type name="TextIter" c:type="GtkTextIter"/>
60878           </parameter>
60879           <parameter name="text" transfer-ownership="none">
60880             <doc xml:whitespace="preserve">the UTF-8 text to be inserted</doc>
60881             <type name="utf8" c:type="gchararray"/>
60882           </parameter>
60883           <parameter name="len" transfer-ownership="none">
60884             <doc xml:whitespace="preserve">length of the inserted text in bytes</doc>
60885             <type name="int" c:type="gint"/>
60886           </parameter>
60887         </parameters>
60888       </glib:signal>
60889       <glib:signal name="mark-deleted">
60890         <doc xml:whitespace="preserve">The ::mark-deleted signal is emitted as notification
60891 after a #GtkTextMark is deleted. 
60892 See also:
60893 gtk_text_buffer_delete_mark().</doc>
60894         <return-value transfer-ownership="full">
60895           <type name="none" c:type="void"/>
60896         </return-value>
60897         <parameters>
60898           <parameter name="mark" transfer-ownership="none">
60899             <doc xml:whitespace="preserve">The mark that was deleted</doc>
60900             <type name="TextMark" c:type="GtkTextMark"/>
60901           </parameter>
60902         </parameters>
60903       </glib:signal>
60904       <glib:signal name="mark-set">
60905         <doc xml:whitespace="preserve">The ::mark-set signal is emitted as notification
60906 after a #GtkTextMark is set.
60907 gtk_text_buffer_create_mark(),
60908 gtk_text_buffer_move_mark().</doc>
60909         <return-value transfer-ownership="full">
60910           <type name="none" c:type="void"/>
60911         </return-value>
60912         <parameters>
60913           <parameter name="location" transfer-ownership="none">
60914             <doc xml:whitespace="preserve">The location of @mark in @textbuffer</doc>
60915             <type name="TextIter" c:type="GtkTextIter"/>
60916           </parameter>
60917           <parameter name="mark" transfer-ownership="none">
60918             <doc xml:whitespace="preserve">The mark that is set</doc>
60919             <type name="TextMark" c:type="GtkTextMark"/>
60920           </parameter>
60921         </parameters>
60922       </glib:signal>
60923       <glib:signal name="modified-changed">
60924         <doc xml:whitespace="preserve">The ::modified-changed signal is emitted when the modified bit of a 
60925 #GtkTextBuffer flips.
60926 See also:
60927 gtk_text_buffer_set_modified().</doc>
60928         <return-value transfer-ownership="full">
60929           <type name="none" c:type="void"/>
60930         </return-value>
60931       </glib:signal>
60932       <glib:signal name="paste-done" version="2.16">
60933         <doc xml:whitespace="preserve">The paste-done signal is emitted after paste operation has been completed.
60934 This is useful to properly scroll the view to the end of the pasted text.
60935 See gtk_text_buffer_paste_clipboard() for more details.</doc>
60936         <return-value transfer-ownership="full">
60937           <type name="none" c:type="void"/>
60938         </return-value>
60939         <parameters>
60940           <parameter name="since" transfer-ownership="none">
60941             <type name="Clipboard" c:type="GtkClipboard"/>
60942           </parameter>
60943         </parameters>
60944       </glib:signal>
60945       <glib:signal name="remove-tag">
60946         <doc xml:whitespace="preserve">The ::remove-tag signal is emitted to remove all occurrences of @tag from
60947 a range of text in a #GtkTextBuffer. 
60948 Removal actually occurs in the default handler.
60949 Note that if your handler runs before the default handler it must not 
60950 invalidate the @start and @end iters (or has to revalidate them). 
60951 gtk_text_buffer_remove_tag().</doc>
60952         <return-value transfer-ownership="full">
60953           <type name="none" c:type="void"/>
60954         </return-value>
60955         <parameters>
60956           <parameter name="tag" transfer-ownership="none">
60957             <doc xml:whitespace="preserve">the tag to be removed</doc>
60958             <type name="TextTag" c:type="GtkTextTag"/>
60959           </parameter>
60960           <parameter name="start" transfer-ownership="none">
60961             <doc xml:whitespace="preserve">the start of the range the tag is removed from</doc>
60962             <type name="TextIter" c:type="GtkTextIter"/>
60963           </parameter>
60964           <parameter name="end" transfer-ownership="none">
60965             <doc xml:whitespace="preserve">the end of the range the tag is removed from</doc>
60966             <type name="TextIter" c:type="GtkTextIter"/>
60967           </parameter>
60968         </parameters>
60969       </glib:signal>
60970     </class>
60971     <record name="TextBufferClass"
60972             c:type="GtkTextBufferClass"
60973             glib:is-gtype-struct-for="TextBuffer">
60974       <field name="parent_class">
60975         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
60976       </field>
60977       <field name="insert_text">
60978         <callback name="insert_text" c:type="insert_text">
60979           <return-value transfer-ownership="none">
60980             <type name="none" c:type="void"/>
60981           </return-value>
60982           <parameters>
60983             <parameter name="buffer" transfer-ownership="none">
60984               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
60985             </parameter>
60986             <parameter name="pos" transfer-ownership="none">
60987               <type name="TextIter" c:type="GtkTextIter*"/>
60988             </parameter>
60989             <parameter name="text" transfer-ownership="none">
60990               <type name="utf8" c:type="gchar*"/>
60991             </parameter>
60992             <parameter name="length" transfer-ownership="none">
60993               <type name="int" c:type="gint"/>
60994             </parameter>
60995           </parameters>
60996         </callback>
60997       </field>
60998       <field name="insert_pixbuf">
60999         <callback name="insert_pixbuf" c:type="insert_pixbuf">
61000           <return-value transfer-ownership="none">
61001             <type name="none" c:type="void"/>
61002           </return-value>
61003           <parameters>
61004             <parameter name="buffer" transfer-ownership="none">
61005               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61006             </parameter>
61007             <parameter name="pos" transfer-ownership="none">
61008               <type name="TextIter" c:type="GtkTextIter*"/>
61009             </parameter>
61010             <parameter name="pixbuf" transfer-ownership="none">
61011               <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
61012             </parameter>
61013           </parameters>
61014         </callback>
61015       </field>
61016       <field name="insert_child_anchor">
61017         <callback name="insert_child_anchor" c:type="insert_child_anchor">
61018           <return-value transfer-ownership="none">
61019             <type name="none" c:type="void"/>
61020           </return-value>
61021           <parameters>
61022             <parameter name="buffer" transfer-ownership="none">
61023               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61024             </parameter>
61025             <parameter name="pos" transfer-ownership="none">
61026               <type name="TextIter" c:type="GtkTextIter*"/>
61027             </parameter>
61028             <parameter name="anchor" transfer-ownership="none">
61029               <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
61030             </parameter>
61031           </parameters>
61032         </callback>
61033       </field>
61034       <field name="delete_range">
61035         <callback name="delete_range" c:type="delete_range">
61036           <return-value transfer-ownership="none">
61037             <type name="none" c:type="void"/>
61038           </return-value>
61039           <parameters>
61040             <parameter name="buffer" transfer-ownership="none">
61041               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61042             </parameter>
61043             <parameter name="start" transfer-ownership="none">
61044               <type name="TextIter" c:type="GtkTextIter*"/>
61045             </parameter>
61046             <parameter name="end" transfer-ownership="none">
61047               <type name="TextIter" c:type="GtkTextIter*"/>
61048             </parameter>
61049           </parameters>
61050         </callback>
61051       </field>
61052       <field name="changed">
61053         <callback name="changed" c:type="changed">
61054           <return-value transfer-ownership="none">
61055             <type name="none" c:type="void"/>
61056           </return-value>
61057           <parameters>
61058             <parameter name="buffer" transfer-ownership="none">
61059               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61060             </parameter>
61061           </parameters>
61062         </callback>
61063       </field>
61064       <field name="modified_changed">
61065         <callback name="modified_changed" c:type="modified_changed">
61066           <return-value transfer-ownership="none">
61067             <type name="none" c:type="void"/>
61068           </return-value>
61069           <parameters>
61070             <parameter name="buffer" transfer-ownership="none">
61071               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61072             </parameter>
61073           </parameters>
61074         </callback>
61075       </field>
61076       <field name="mark_set">
61077         <callback name="mark_set" c:type="mark_set">
61078           <return-value transfer-ownership="none">
61079             <type name="none" c:type="void"/>
61080           </return-value>
61081           <parameters>
61082             <parameter name="buffer" transfer-ownership="none">
61083               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61084             </parameter>
61085             <parameter name="location" transfer-ownership="none">
61086               <type name="TextIter" c:type="GtkTextIter*"/>
61087             </parameter>
61088             <parameter name="mark" transfer-ownership="none">
61089               <type name="TextMark" c:type="GtkTextMark*"/>
61090             </parameter>
61091           </parameters>
61092         </callback>
61093       </field>
61094       <field name="mark_deleted">
61095         <callback name="mark_deleted" c:type="mark_deleted">
61096           <return-value transfer-ownership="none">
61097             <type name="none" c:type="void"/>
61098           </return-value>
61099           <parameters>
61100             <parameter name="buffer" transfer-ownership="none">
61101               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61102             </parameter>
61103             <parameter name="mark" transfer-ownership="none">
61104               <type name="TextMark" c:type="GtkTextMark*"/>
61105             </parameter>
61106           </parameters>
61107         </callback>
61108       </field>
61109       <field name="apply_tag">
61110         <callback name="apply_tag" c:type="apply_tag">
61111           <return-value transfer-ownership="none">
61112             <type name="none" c:type="void"/>
61113           </return-value>
61114           <parameters>
61115             <parameter name="buffer" transfer-ownership="none">
61116               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61117             </parameter>
61118             <parameter name="tag" transfer-ownership="none">
61119               <type name="TextTag" c:type="GtkTextTag*"/>
61120             </parameter>
61121             <parameter name="start_char" transfer-ownership="none">
61122               <type name="TextIter" c:type="GtkTextIter*"/>
61123             </parameter>
61124             <parameter name="end_char" transfer-ownership="none">
61125               <type name="TextIter" c:type="GtkTextIter*"/>
61126             </parameter>
61127           </parameters>
61128         </callback>
61129       </field>
61130       <field name="remove_tag">
61131         <callback name="remove_tag" c:type="remove_tag">
61132           <return-value transfer-ownership="none">
61133             <type name="none" c:type="void"/>
61134           </return-value>
61135           <parameters>
61136             <parameter name="buffer" transfer-ownership="none">
61137               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61138             </parameter>
61139             <parameter name="tag" transfer-ownership="none">
61140               <type name="TextTag" c:type="GtkTextTag*"/>
61141             </parameter>
61142             <parameter name="start_char" transfer-ownership="none">
61143               <type name="TextIter" c:type="GtkTextIter*"/>
61144             </parameter>
61145             <parameter name="end_char" transfer-ownership="none">
61146               <type name="TextIter" c:type="GtkTextIter*"/>
61147             </parameter>
61148           </parameters>
61149         </callback>
61150       </field>
61151       <field name="begin_user_action">
61152         <callback name="begin_user_action" c:type="begin_user_action">
61153           <return-value transfer-ownership="none">
61154             <type name="none" c:type="void"/>
61155           </return-value>
61156           <parameters>
61157             <parameter name="buffer" transfer-ownership="none">
61158               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61159             </parameter>
61160           </parameters>
61161         </callback>
61162       </field>
61163       <field name="end_user_action">
61164         <callback name="end_user_action" c:type="end_user_action">
61165           <return-value transfer-ownership="none">
61166             <type name="none" c:type="void"/>
61167           </return-value>
61168           <parameters>
61169             <parameter name="buffer" transfer-ownership="none">
61170               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61171             </parameter>
61172           </parameters>
61173         </callback>
61174       </field>
61175       <field name="paste_done">
61176         <callback name="paste_done" c:type="paste_done">
61177           <return-value transfer-ownership="none">
61178             <type name="none" c:type="void"/>
61179           </return-value>
61180           <parameters>
61181             <parameter name="buffer" transfer-ownership="none">
61182               <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61183             </parameter>
61184             <parameter name="clipboard" transfer-ownership="none">
61185               <type name="Clipboard" c:type="GtkClipboard*"/>
61186             </parameter>
61187           </parameters>
61188         </callback>
61189       </field>
61190       <field name="gtk_reserved1">
61191         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
61192           <return-value transfer-ownership="none">
61193             <type name="none" c:type="void"/>
61194           </return-value>
61195         </callback>
61196       </field>
61197       <field name="gtk_reserved2">
61198         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
61199           <return-value transfer-ownership="none">
61200             <type name="none" c:type="void"/>
61201           </return-value>
61202         </callback>
61203       </field>
61204       <field name="gtk_reserved3">
61205         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
61206           <return-value transfer-ownership="none">
61207             <type name="none" c:type="void"/>
61208           </return-value>
61209         </callback>
61210       </field>
61211       <field name="gtk_reserved4">
61212         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
61213           <return-value transfer-ownership="none">
61214             <type name="none" c:type="void"/>
61215           </return-value>
61216         </callback>
61217       </field>
61218       <field name="gtk_reserved5">
61219         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
61220           <return-value transfer-ownership="none">
61221             <type name="none" c:type="void"/>
61222           </return-value>
61223         </callback>
61224       </field>
61225     </record>
61226     <callback name="TextBufferDeserializeFunc"
61227               c:type="GtkTextBufferDeserializeFunc"
61228               throws="1">
61229       <return-value transfer-ownership="none">
61230         <type name="boolean" c:type="gboolean"/>
61231       </return-value>
61232       <parameters>
61233         <parameter name="register_buffer" transfer-ownership="none">
61234           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61235         </parameter>
61236         <parameter name="content_buffer" transfer-ownership="none">
61237           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61238         </parameter>
61239         <parameter name="iter" transfer-ownership="none">
61240           <type name="TextIter" c:type="GtkTextIter*"/>
61241         </parameter>
61242         <parameter name="data" transfer-ownership="none">
61243           <array c:type="guint8*">
61244             <type name="uint8"/>
61245           </array>
61246         </parameter>
61247         <parameter name="length" transfer-ownership="none">
61248           <type name="gsize" c:type="gsize"/>
61249         </parameter>
61250         <parameter name="create_tags" transfer-ownership="none">
61251           <type name="boolean" c:type="gboolean"/>
61252         </parameter>
61253         <parameter name="user_data" transfer-ownership="none" closure="6">
61254           <type name="any" c:type="gpointer"/>
61255         </parameter>
61256       </parameters>
61257     </callback>
61258     <callback name="TextBufferSerializeFunc"
61259               c:type="GtkTextBufferSerializeFunc">
61260       <return-value transfer-ownership="full">
61261         <array c:type="guint8*">
61262           <type name="uint8"/>
61263         </array>
61264       </return-value>
61265       <parameters>
61266         <parameter name="register_buffer" transfer-ownership="none">
61267           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61268         </parameter>
61269         <parameter name="content_buffer" transfer-ownership="none">
61270           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61271         </parameter>
61272         <parameter name="start" transfer-ownership="none">
61273           <type name="TextIter" c:type="GtkTextIter*"/>
61274         </parameter>
61275         <parameter name="end" transfer-ownership="none">
61276           <type name="TextIter" c:type="GtkTextIter*"/>
61277         </parameter>
61278         <parameter name="length"
61279                    direction="out"
61280                    caller-allocates="0"
61281                    transfer-ownership="full">
61282           <type name="gsize" c:type="gsize*"/>
61283         </parameter>
61284         <parameter name="user_data" transfer-ownership="none" closure="5">
61285           <type name="any" c:type="gpointer"/>
61286         </parameter>
61287       </parameters>
61288     </callback>
61289     <enumeration name="TextBufferTargetInfo"
61290                  glib:type-name="GtkTextBufferTargetInfo"
61291                  glib:get-type="gtk_text_buffer_target_info_get_type"
61292                  c:type="GtkTextBufferTargetInfo">
61293       <member name="buffer_contents"
61294               value="-1"
61295               c:identifier="GTK_TEXT_BUFFER_TARGET_INFO_BUFFER_CONTENTS"
61296               glib:nick="buffer-contents"/>
61297       <member name="rich_text"
61298               value="-2"
61299               c:identifier="GTK_TEXT_BUFFER_TARGET_INFO_RICH_TEXT"
61300               glib:nick="rich-text"/>
61301       <member name="text"
61302               value="-3"
61303               c:identifier="GTK_TEXT_BUFFER_TARGET_INFO_TEXT"
61304               glib:nick="text"/>
61305     </enumeration>
61306     <callback name="TextCharPredicate" c:type="GtkTextCharPredicate">
61307       <return-value transfer-ownership="none">
61308         <type name="boolean" c:type="gboolean"/>
61309       </return-value>
61310       <parameters>
61311         <parameter name="ch" transfer-ownership="none">
61312           <type name="GLib.unichar" c:type="gunichar"/>
61313         </parameter>
61314         <parameter name="user_data" transfer-ownership="none" closure="1">
61315           <type name="any" c:type="gpointer"/>
61316         </parameter>
61317       </parameters>
61318     </callback>
61319     <class name="TextChildAnchor"
61320            c:type="GtkTextChildAnchor"
61321            parent="GObject.Object"
61322            glib:type-name="GtkTextChildAnchor"
61323            glib:get-type="gtk_text_child_anchor_get_type"
61324            glib:type-struct="TextChildAnchorClass">
61325       <constructor name="new" c:identifier="gtk_text_child_anchor_new">
61326         <doc xml:whitespace="preserve">Creates a new #GtkTextChildAnchor. Usually you would then insert
61327 it into a #GtkTextBuffer with gtk_text_buffer_insert_child_anchor().
61328 To perform the creation and insertion in one step, use the
61329 convenience function gtk_text_buffer_create_child_anchor().</doc>
61330         <return-value transfer-ownership="full">
61331           <doc xml:whitespace="preserve">a new #GtkTextChildAnchor</doc>
61332           <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
61333         </return-value>
61334       </constructor>
61335       <method name="get_widgets"
61336               c:identifier="gtk_text_child_anchor_get_widgets">
61337         <doc xml:whitespace="preserve">Gets a list of all widgets anchored at this child anchor.
61338 The returned list should be freed with g_list_free().</doc>
61339         <return-value transfer-ownership="container">
61340           <doc xml:whitespace="preserve">list of widgets anchored at @anchor</doc>
61341           <type name="GLib.List" c:type="GList*">
61342             <type name="Widget"/>
61343           </type>
61344         </return-value>
61345       </method>
61346       <method name="get_deleted"
61347               c:identifier="gtk_text_child_anchor_get_deleted">
61348         <doc xml:whitespace="preserve">Determines whether a child anchor has been deleted from
61349 the buffer. Keep in mind that the child anchor will be
61350 unreferenced when removed from the buffer, so you need to
61351 hold your own reference (with g_object_ref()) if you plan
61352 to use this function &amp;mdash; otherwise all deleted child anchors
61353 will also be finalized.</doc>
61354         <return-value transfer-ownership="none">
61355           <doc xml:whitespace="preserve">%TRUE if the child anchor has been deleted from its buffer</doc>
61356           <type name="boolean" c:type="gboolean"/>
61357         </return-value>
61358       </method>
61359       <method name="register_child"
61360               c:identifier="gtk_text_child_anchor_register_child">
61361         <return-value transfer-ownership="none">
61362           <type name="none" c:type="void"/>
61363         </return-value>
61364         <parameters>
61365           <parameter name="child" transfer-ownership="none">
61366             <type name="Widget" c:type="GtkWidget*"/>
61367           </parameter>
61368           <parameter name="layout" transfer-ownership="none">
61369             <type name="TextLayout" c:type="GtkTextLayout*"/>
61370           </parameter>
61371         </parameters>
61372       </method>
61373       <method name="unregister_child"
61374               c:identifier="gtk_text_child_anchor_unregister_child">
61375         <return-value transfer-ownership="none">
61376           <type name="none" c:type="void"/>
61377         </return-value>
61378         <parameters>
61379           <parameter name="child" transfer-ownership="none">
61380             <type name="Widget" c:type="GtkWidget*"/>
61381           </parameter>
61382         </parameters>
61383       </method>
61384       <method name="queue_resize"
61385               c:identifier="gtk_text_child_anchor_queue_resize">
61386         <return-value transfer-ownership="none">
61387           <type name="none" c:type="void"/>
61388         </return-value>
61389         <parameters>
61390           <parameter name="layout" transfer-ownership="none">
61391             <type name="TextLayout" c:type="GtkTextLayout*"/>
61392           </parameter>
61393         </parameters>
61394       </method>
61395       <field name="parent_instance">
61396         <type name="GObject.Object" c:type="GObject"/>
61397       </field>
61398       <field name="segment">
61399         <type name="any" c:type="gpointer"/>
61400       </field>
61401     </class>
61402     <record name="TextChildAnchorClass"
61403             c:type="GtkTextChildAnchorClass"
61404             glib:is-gtype-struct-for="TextChildAnchor">
61405       <field name="parent_class">
61406         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
61407       </field>
61408       <field name="gtk_reserved1">
61409         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
61410           <return-value transfer-ownership="none">
61411             <type name="none" c:type="void"/>
61412           </return-value>
61413         </callback>
61414       </field>
61415       <field name="gtk_reserved2">
61416         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
61417           <return-value transfer-ownership="none">
61418             <type name="none" c:type="void"/>
61419           </return-value>
61420         </callback>
61421       </field>
61422       <field name="gtk_reserved3">
61423         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
61424           <return-value transfer-ownership="none">
61425             <type name="none" c:type="void"/>
61426           </return-value>
61427         </callback>
61428       </field>
61429       <field name="gtk_reserved4">
61430         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
61431           <return-value transfer-ownership="none">
61432             <type name="none" c:type="void"/>
61433           </return-value>
61434         </callback>
61435       </field>
61436     </record>
61437     <record name="TextCursorDisplay" c:type="GtkTextCursorDisplay">
61438       <field name="x" writable="1">
61439         <type name="int" c:type="gint"/>
61440       </field>
61441       <field name="y" writable="1">
61442         <type name="int" c:type="gint"/>
61443       </field>
61444       <field name="height" writable="1">
61445         <type name="int" c:type="gint"/>
61446       </field>
61447       <field name="is_strong" writable="1" bits="1">
61448         <type name="uint" c:type="guint"/>
61449       </field>
61450       <field name="is_weak" writable="1" bits="1">
61451         <type name="uint" c:type="guint"/>
61452       </field>
61453     </record>
61454     <enumeration name="TextDirection"
61455                  glib:type-name="GtkTextDirection"
61456                  glib:get-type="gtk_text_direction_get_type"
61457                  c:type="GtkTextDirection">
61458       <member name="none"
61459               value="0"
61460               c:identifier="GTK_TEXT_DIR_NONE"
61461               glib:nick="none"/>
61462       <member name="ltr"
61463               value="1"
61464               c:identifier="GTK_TEXT_DIR_LTR"
61465               glib:nick="ltr"/>
61466       <member name="rtl"
61467               value="2"
61468               c:identifier="GTK_TEXT_DIR_RTL"
61469               glib:nick="rtl"/>
61470     </enumeration>
61471     <callback name="TextFunction" c:type="GtkTextFunction">
61472       <return-value transfer-ownership="none">
61473         <type name="none" c:type="void"/>
61474       </return-value>
61475       <parameters>
61476         <parameter name="editable" transfer-ownership="none">
61477           <type name="OldEditable" c:type="GtkOldEditable*"/>
61478         </parameter>
61479         <parameter name="time_" transfer-ownership="none">
61480           <type name="uint32" c:type="guint32"/>
61481         </parameter>
61482       </parameters>
61483     </callback>
61484     <record name="TextIter"
61485             c:type="GtkTextIter"
61486             glib:type-name="GtkTextIter"
61487             glib:get-type="gtk_text_iter_get_type">
61488       <field name="dummy1" writable="1">
61489         <type name="any" c:type="gpointer"/>
61490       </field>
61491       <field name="dummy2" writable="1">
61492         <type name="any" c:type="gpointer"/>
61493       </field>
61494       <field name="dummy3" writable="1">
61495         <type name="int" c:type="gint"/>
61496       </field>
61497       <field name="dummy4" writable="1">
61498         <type name="int" c:type="gint"/>
61499       </field>
61500       <field name="dummy5" writable="1">
61501         <type name="int" c:type="gint"/>
61502       </field>
61503       <field name="dummy6" writable="1">
61504         <type name="int" c:type="gint"/>
61505       </field>
61506       <field name="dummy7" writable="1">
61507         <type name="int" c:type="gint"/>
61508       </field>
61509       <field name="dummy8" writable="1">
61510         <type name="int" c:type="gint"/>
61511       </field>
61512       <field name="dummy9" writable="1">
61513         <type name="any" c:type="gpointer"/>
61514       </field>
61515       <field name="dummy10" writable="1">
61516         <type name="any" c:type="gpointer"/>
61517       </field>
61518       <field name="dummy11" writable="1">
61519         <type name="int" c:type="gint"/>
61520       </field>
61521       <field name="dummy12" writable="1">
61522         <type name="int" c:type="gint"/>
61523       </field>
61524       <field name="dummy13" writable="1">
61525         <type name="int" c:type="gint"/>
61526       </field>
61527       <field name="dummy14" writable="1">
61528         <type name="any" c:type="gpointer"/>
61529       </field>
61530       <method name="get_buffer" c:identifier="gtk_text_iter_get_buffer">
61531         <doc xml:whitespace="preserve">Returns the #GtkTextBuffer this iterator is associated with.</doc>
61532         <return-value transfer-ownership="none">
61533           <doc xml:whitespace="preserve">the buffer</doc>
61534           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
61535         </return-value>
61536       </method>
61537       <method name="copy" c:identifier="gtk_text_iter_copy">
61538         <doc xml:whitespace="preserve">Creates a dynamically-allocated copy of an iterator. This function
61539 is not useful in applications, because iterators can be copied with a
61540 simple assignment (&lt;literal&gt;GtkTextIter i = j;&lt;/literal&gt;). The
61541 function is used by language bindings.</doc>
61542         <return-value transfer-ownership="full">
61543           <doc xml:whitespace="preserve">a copy of the @iter, free with gtk_text_iter_free ()</doc>
61544           <type name="TextIter" c:type="GtkTextIter*"/>
61545         </return-value>
61546       </method>
61547       <method name="free" c:identifier="gtk_text_iter_free">
61548         <doc xml:whitespace="preserve">Free an iterator allocated on the heap. This function
61549 is intended for use in language bindings, and is not
61550 especially useful for applications, because iterators can
61551 simply be allocated on the stack.</doc>
61552         <return-value transfer-ownership="none">
61553           <type name="none" c:type="void"/>
61554         </return-value>
61555       </method>
61556       <method name="get_offset" c:identifier="gtk_text_iter_get_offset">
61557         <doc xml:whitespace="preserve">Returns the character offset of an iterator.
61558 Each character in a #GtkTextBuffer has an offset,
61559 starting with 0 for the first character in the buffer.
61560 Use gtk_text_buffer_get_iter_at_offset () to convert an
61561 offset back into an iterator.</doc>
61562         <return-value transfer-ownership="none">
61563           <doc xml:whitespace="preserve">a character offset</doc>
61564           <type name="int" c:type="gint"/>
61565         </return-value>
61566       </method>
61567       <method name="get_line" c:identifier="gtk_text_iter_get_line">
61568         <doc xml:whitespace="preserve">Returns the line number containing the iterator. Lines in
61569 a #GtkTextBuffer are numbered beginning with 0 for the first
61570 line in the buffer.</doc>
61571         <return-value transfer-ownership="none">
61572           <doc xml:whitespace="preserve">a line number</doc>
61573           <type name="int" c:type="gint"/>
61574         </return-value>
61575       </method>
61576       <method name="get_line_offset"
61577               c:identifier="gtk_text_iter_get_line_offset">
61578         <doc xml:whitespace="preserve">Returns the character offset of the iterator,
61579 counting from the start of a newline-terminated line.
61580 The first character on the line has offset 0.</doc>
61581         <return-value transfer-ownership="none">
61582           <doc xml:whitespace="preserve">offset from start of line</doc>
61583           <type name="int" c:type="gint"/>
61584         </return-value>
61585       </method>
61586       <method name="get_line_index"
61587               c:identifier="gtk_text_iter_get_line_index">
61588         <doc xml:whitespace="preserve">Returns the byte index of the iterator, counting
61589 from the start of a newline-terminated line.
61590 Remember that #GtkTextBuffer encodes text in
61591 UTF-8, and that characters can require a variable
61592 number of bytes to represent.</doc>
61593         <return-value transfer-ownership="none">
61594           <doc xml:whitespace="preserve">distance from start of line, in bytes</doc>
61595           <type name="int" c:type="gint"/>
61596         </return-value>
61597       </method>
61598       <method name="get_visible_line_offset"
61599               c:identifier="gtk_text_iter_get_visible_line_offset">
61600         <doc xml:whitespace="preserve">Returns the offset in characters from the start of the
61601 line to the given @iter, not counting characters that
61602 are invisible due to tags with the "invisible" flag
61603 toggled on.</doc>
61604         <return-value transfer-ownership="none">
61605           <doc xml:whitespace="preserve">offset in visible characters from the start of the line</doc>
61606           <type name="int" c:type="gint"/>
61607         </return-value>
61608       </method>
61609       <method name="get_visible_line_index"
61610               c:identifier="gtk_text_iter_get_visible_line_index">
61611         <doc xml:whitespace="preserve">Returns the number of bytes from the start of the
61612 line to the given @iter, not counting bytes that
61613 are invisible due to tags with the "invisible" flag
61614 toggled on.</doc>
61615         <return-value transfer-ownership="none">
61616           <doc xml:whitespace="preserve">byte index of @iter with respect to the start of the line</doc>
61617           <type name="int" c:type="gint"/>
61618         </return-value>
61619       </method>
61620       <method name="get_char" c:identifier="gtk_text_iter_get_char">
61621         <doc xml:whitespace="preserve">Returns the Unicode character at this iterator.  (Equivalent to
61622 operator* on a C++ iterator.)  If the element at this iterator is a
61623 non-character element, such as an image embedded in the buffer, the
61624 Unicode "unknown" character 0xFFFC is returned. If invoked on
61625 the end iterator, zero is returned; zero is not a valid Unicode character.
61626 So you can write a loop which ends when gtk_text_iter_get_char ()
61627 returns 0.</doc>
61628         <return-value transfer-ownership="full">
61629           <doc xml:whitespace="preserve">a Unicode character, or 0 if @iter is not dereferenceable</doc>
61630           <type name="GLib.unichar" c:type="gunichar"/>
61631         </return-value>
61632       </method>
61633       <method name="get_slice" c:identifier="gtk_text_iter_get_slice">
61634         <doc xml:whitespace="preserve">Returns the text in the given range. A "slice" is an array of
61635 characters encoded in UTF-8 format, including the Unicode "unknown"
61636 character 0xFFFC for iterable non-character elements in the buffer,
61637 such as images.  Because images are encoded in the slice, byte and
61638 character offsets in the returned array will correspond to byte
61639 offsets in the text buffer. Note that 0xFFFC can occur in normal
61640 text as well, so it is not a reliable indicator that a pixbuf or
61641 widget is in the buffer.</doc>
61642         <return-value transfer-ownership="full">
61643           <doc xml:whitespace="preserve">slice of text from the buffer</doc>
61644           <type name="utf8" c:type="gchar*"/>
61645         </return-value>
61646         <parameters>
61647           <parameter name="end" transfer-ownership="none">
61648             <doc xml:whitespace="preserve">iterator at end of a range</doc>
61649             <type name="TextIter" c:type="GtkTextIter*"/>
61650           </parameter>
61651         </parameters>
61652       </method>
61653       <method name="get_text" c:identifier="gtk_text_iter_get_text">
61654         <doc xml:whitespace="preserve">Returns &lt;emphasis&gt;text&lt;/emphasis&gt; in the given range.  If the range
61655 contains non-text elements such as images, the character and byte
61656 offsets in the returned string will not correspond to character and
61657 byte offsets in the buffer. If you want offsets to correspond, see
61658 gtk_text_iter_get_slice ().</doc>
61659         <return-value transfer-ownership="full">
61660           <doc xml:whitespace="preserve">array of characters from the buffer</doc>
61661           <type name="utf8" c:type="gchar*"/>
61662         </return-value>
61663         <parameters>
61664           <parameter name="end" transfer-ownership="none">
61665             <doc xml:whitespace="preserve">iterator at end of a range</doc>
61666             <type name="TextIter" c:type="GtkTextIter*"/>
61667           </parameter>
61668         </parameters>
61669       </method>
61670       <method name="get_visible_slice"
61671               c:identifier="gtk_text_iter_get_visible_slice">
61672         <doc xml:whitespace="preserve">Like gtk_text_iter_get_slice (), but invisible text is not included.
61673 Invisible text is usually invisible because a #GtkTextTag with the
61674 "invisible" attribute turned on has been applied to it.</doc>
61675         <return-value transfer-ownership="full">
61676           <doc xml:whitespace="preserve">slice of text from the buffer</doc>
61677           <type name="utf8" c:type="gchar*"/>
61678         </return-value>
61679         <parameters>
61680           <parameter name="end" transfer-ownership="none">
61681             <doc xml:whitespace="preserve">iterator at end of range</doc>
61682             <type name="TextIter" c:type="GtkTextIter*"/>
61683           </parameter>
61684         </parameters>
61685       </method>
61686       <method name="get_visible_text"
61687               c:identifier="gtk_text_iter_get_visible_text">
61688         <doc xml:whitespace="preserve">Like gtk_text_iter_get_text (), but invisible text is not included.
61689 Invisible text is usually invisible because a #GtkTextTag with the
61690 "invisible" attribute turned on has been applied to it.</doc>
61691         <return-value transfer-ownership="full">
61692           <doc xml:whitespace="preserve">string containing visible text in the range</doc>
61693           <type name="utf8" c:type="gchar*"/>
61694         </return-value>
61695         <parameters>
61696           <parameter name="end" transfer-ownership="none">
61697             <doc xml:whitespace="preserve">iterator at end of range</doc>
61698             <type name="TextIter" c:type="GtkTextIter*"/>
61699           </parameter>
61700         </parameters>
61701       </method>
61702       <method name="get_pixbuf" c:identifier="gtk_text_iter_get_pixbuf">
61703         <doc xml:whitespace="preserve">If the element at @iter is a pixbuf, the pixbuf is returned
61704 (with no new reference count added). Otherwise,
61705 %NULL is returned.</doc>
61706         <return-value transfer-ownership="none">
61707           <doc xml:whitespace="preserve">the pixbuf at @iter</doc>
61708           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
61709         </return-value>
61710       </method>
61711       <method name="get_marks" c:identifier="gtk_text_iter_get_marks">
61712         <doc xml:whitespace="preserve">Returns a list of all #GtkTextMark at this location. Because marks
61713 are not iterable (they don't take up any "space" in the buffer,
61714 they are just marks in between iterable locations), multiple marks
61715 can exist in the same place. The returned list is not in any
61716 meaningful order.</doc>
61717         <return-value transfer-ownership="container">
61718           <doc xml:whitespace="preserve">list of #GtkTextMark</doc>
61719           <type name="GLib.SList" c:type="GSList*">
61720             <type name="TextMark"/>
61721           </type>
61722         </return-value>
61723       </method>
61724       <method name="get_child_anchor"
61725               c:identifier="gtk_text_iter_get_child_anchor">
61726         <doc xml:whitespace="preserve">If the location at @iter contains a child anchor, the
61727 anchor is returned (with no new reference count added). Otherwise,
61728 %NULL is returned.</doc>
61729         <return-value transfer-ownership="full">
61730           <doc xml:whitespace="preserve">the anchor at @iter</doc>
61731           <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
61732         </return-value>
61733       </method>
61734       <method name="get_toggled_tags"
61735               c:identifier="gtk_text_iter_get_toggled_tags">
61736         <doc xml:whitespace="preserve">Returns a list of #GtkTextTag that are toggled on or off at this
61737 point.  (If @toggled_on is %TRUE, the list contains tags that are
61738 toggled on.) If a tag is toggled on at @iter, then some non-empty
61739 range of characters following @iter has that tag applied to it.  If
61740 a tag is toggled off, then some non-empty range following @iter
61741 does &lt;emphasis&gt;not&lt;/emphasis&gt; have the tag applied to it.</doc>
61742         <return-value transfer-ownership="container">
61743           <doc xml:whitespace="preserve">tags toggled at this point</doc>
61744           <type name="GLib.SList" c:type="GSList*">
61745             <type name="TextTag"/>
61746           </type>
61747         </return-value>
61748         <parameters>
61749           <parameter name="toggled_on" transfer-ownership="none">
61750             <doc xml:whitespace="preserve">%TRUE to get toggled-on tags</doc>
61751             <type name="boolean" c:type="gboolean"/>
61752           </parameter>
61753         </parameters>
61754       </method>
61755       <method name="begins_tag" c:identifier="gtk_text_iter_begins_tag">
61756         <doc xml:whitespace="preserve">Returns %TRUE if @tag is toggled on at exactly this point. If @tag
61757 is %NULL, returns %TRUE if any tag is toggled on at this point. Note
61758 that the gtk_text_iter_begins_tag () returns %TRUE if @iter is the
61759 &lt;emphasis&gt;start&lt;/emphasis&gt; of the tagged range;
61760 gtk_text_iter_has_tag () tells you whether an iterator is
61761 &lt;emphasis&gt;within&lt;/emphasis&gt; a tagged range.</doc>
61762         <return-value transfer-ownership="none">
61763           <doc xml:whitespace="preserve">whether @iter is the start of a range tagged with @tag</doc>
61764           <type name="boolean" c:type="gboolean"/>
61765         </return-value>
61766         <parameters>
61767           <parameter name="tag" transfer-ownership="none" allow-none="1">
61768             <doc xml:whitespace="preserve">a #GtkTextTag, or %NULL</doc>
61769             <type name="TextTag" c:type="GtkTextTag*"/>
61770           </parameter>
61771         </parameters>
61772       </method>
61773       <method name="ends_tag" c:identifier="gtk_text_iter_ends_tag">
61774         <doc xml:whitespace="preserve">Returns %TRUE if @tag is toggled off at exactly this point. If @tag
61775 is %NULL, returns %TRUE if any tag is toggled off at this point. Note
61776 that the gtk_text_iter_ends_tag () returns %TRUE if @iter is the
61777 &lt;emphasis&gt;end&lt;/emphasis&gt; of the tagged range;
61778 gtk_text_iter_has_tag () tells you whether an iterator is
61779 &lt;emphasis&gt;within&lt;/emphasis&gt; a tagged range.</doc>
61780         <return-value transfer-ownership="none">
61781           <doc xml:whitespace="preserve">whether @iter is the end of a range tagged with @tag</doc>
61782           <type name="boolean" c:type="gboolean"/>
61783         </return-value>
61784         <parameters>
61785           <parameter name="tag" transfer-ownership="none" allow-none="1">
61786             <doc xml:whitespace="preserve">a #GtkTextTag, or %NULL</doc>
61787             <type name="TextTag" c:type="GtkTextTag*"/>
61788           </parameter>
61789         </parameters>
61790       </method>
61791       <method name="toggles_tag" c:identifier="gtk_text_iter_toggles_tag">
61792         <doc xml:whitespace="preserve">This is equivalent to (gtk_text_iter_begins_tag () ||
61793 gtk_text_iter_ends_tag ()), i.e. it tells you whether a range with</doc>
61794         <return-value transfer-ownership="none">
61795           <doc xml:whitespace="preserve">whether @tag is toggled on or off at @iter</doc>
61796           <type name="boolean" c:type="gboolean"/>
61797         </return-value>
61798         <parameters>
61799           <parameter name="tag" transfer-ownership="none" allow-none="1">
61800             <doc xml:whitespace="preserve">a #GtkTextTag, or %NULL</doc>
61801             <type name="TextTag" c:type="GtkTextTag*"/>
61802           </parameter>
61803         </parameters>
61804       </method>
61805       <method name="has_tag" c:identifier="gtk_text_iter_has_tag">
61806         <doc xml:whitespace="preserve">Returns %TRUE if @iter is within a range tagged with @tag.</doc>
61807         <return-value transfer-ownership="none">
61808           <doc xml:whitespace="preserve">whether @iter is tagged with @tag</doc>
61809           <type name="boolean" c:type="gboolean"/>
61810         </return-value>
61811         <parameters>
61812           <parameter name="tag" transfer-ownership="none">
61813             <doc xml:whitespace="preserve">a #GtkTextTag</doc>
61814             <type name="TextTag" c:type="GtkTextTag*"/>
61815           </parameter>
61816         </parameters>
61817       </method>
61818       <method name="get_tags" c:identifier="gtk_text_iter_get_tags">
61819         <doc xml:whitespace="preserve">Returns a list of tags that apply to @iter, in ascending order of
61820 priority (highest-priority tags are last). The #GtkTextTag in the
61821 list don't have a reference added, but you have to free the list
61822 itself.</doc>
61823         <return-value transfer-ownership="container">
61824           <doc xml:whitespace="preserve">list of #GtkTextTag</doc>
61825           <type name="GLib.SList" c:type="GSList*">
61826             <type name="TextTag"/>
61827           </type>
61828         </return-value>
61829       </method>
61830       <method name="editable" c:identifier="gtk_text_iter_editable">
61831         <doc xml:whitespace="preserve">Returns whether the character at @iter is within an editable region
61832 of text.  Non-editable text is "locked" and can't be changed by the
61833 user via #GtkTextView. This function is simply a convenience
61834 wrapper around gtk_text_iter_get_attributes (). If no tags applied
61835 to this text affect editability, @default_setting will be returned.
61836 You don't want to use this function to decide whether text can be
61837 inserted at @iter, because for insertion you don't want to know
61838 whether the char at @iter is inside an editable range, you want to
61839 know whether a new character inserted at @iter would be inside an
61840 editable range. Use gtk_text_iter_can_insert() to handle this
61841 case.</doc>
61842         <return-value transfer-ownership="none">
61843           <doc xml:whitespace="preserve">whether @iter is inside an editable range</doc>
61844           <type name="boolean" c:type="gboolean"/>
61845         </return-value>
61846         <parameters>
61847           <parameter name="default_setting" transfer-ownership="none">
61848             <doc xml:whitespace="preserve">%TRUE if text is editable by default</doc>
61849             <type name="boolean" c:type="gboolean"/>
61850           </parameter>
61851         </parameters>
61852       </method>
61853       <method name="can_insert" c:identifier="gtk_text_iter_can_insert">
61854         <doc xml:whitespace="preserve">Considering the default editability of the buffer, and tags that
61855 affect editability, determines whether text inserted at @iter would
61856 be editable. If text inserted at @iter would be editable then the
61857 user should be allowed to insert text at @iter.
61858 gtk_text_buffer_insert_interactive() uses this function to decide
61859 whether insertions are allowed at a given position.</doc>
61860         <return-value transfer-ownership="none">
61861           <doc xml:whitespace="preserve">whether text inserted at @iter would be editable</doc>
61862           <type name="boolean" c:type="gboolean"/>
61863         </return-value>
61864         <parameters>
61865           <parameter name="default_editability" transfer-ownership="none">
61866             <doc xml:whitespace="preserve">%TRUE if text is editable by default</doc>
61867             <type name="boolean" c:type="gboolean"/>
61868           </parameter>
61869         </parameters>
61870       </method>
61871       <method name="starts_word" c:identifier="gtk_text_iter_starts_word">
61872         <doc xml:whitespace="preserve">Determines whether @iter begins a natural-language word.  Word
61873 breaks are determined by Pango and should be correct for nearly any
61874 language (if not, the correct fix would be to the Pango word break
61875 algorithms).</doc>
61876         <return-value transfer-ownership="none">
61877           <doc xml:whitespace="preserve">%TRUE if @iter is at the start of a word</doc>
61878           <type name="boolean" c:type="gboolean"/>
61879         </return-value>
61880       </method>
61881       <method name="ends_word" c:identifier="gtk_text_iter_ends_word">
61882         <doc xml:whitespace="preserve">Determines whether @iter ends a natural-language word.  Word breaks
61883 are determined by Pango and should be correct for nearly any
61884 language (if not, the correct fix would be to the Pango word break
61885 algorithms).</doc>
61886         <return-value transfer-ownership="none">
61887           <doc xml:whitespace="preserve">%TRUE if @iter is at the end of a word</doc>
61888           <type name="boolean" c:type="gboolean"/>
61889         </return-value>
61890       </method>
61891       <method name="inside_word" c:identifier="gtk_text_iter_inside_word">
61892         <doc xml:whitespace="preserve">Determines whether @iter is inside a natural-language word (as
61893 opposed to say inside some whitespace).  Word breaks are determined
61894 by Pango and should be correct for nearly any language (if not, the
61895 correct fix would be to the Pango word break algorithms).</doc>
61896         <return-value transfer-ownership="none">
61897           <doc xml:whitespace="preserve">%TRUE if @iter is inside a word</doc>
61898           <type name="boolean" c:type="gboolean"/>
61899         </return-value>
61900       </method>
61901       <method name="starts_sentence"
61902               c:identifier="gtk_text_iter_starts_sentence">
61903         <doc xml:whitespace="preserve">Determines whether @iter begins a sentence.  Sentence boundaries are
61904 determined by Pango and should be correct for nearly any language
61905 (if not, the correct fix would be to the Pango text boundary
61906 algorithms).</doc>
61907         <return-value transfer-ownership="none">
61908           <doc xml:whitespace="preserve">%TRUE if @iter is at the start of a sentence.</doc>
61909           <type name="boolean" c:type="gboolean"/>
61910         </return-value>
61911       </method>
61912       <method name="ends_sentence" c:identifier="gtk_text_iter_ends_sentence">
61913         <doc xml:whitespace="preserve">Determines whether @iter ends a sentence.  Sentence boundaries are
61914 determined by Pango and should be correct for nearly any language
61915 (if not, the correct fix would be to the Pango text boundary
61916 algorithms).</doc>
61917         <return-value transfer-ownership="none">
61918           <doc xml:whitespace="preserve">%TRUE if @iter is at the end of a sentence.</doc>
61919           <type name="boolean" c:type="gboolean"/>
61920         </return-value>
61921       </method>
61922       <method name="inside_sentence"
61923               c:identifier="gtk_text_iter_inside_sentence">
61924         <doc xml:whitespace="preserve">Determines whether @iter is inside a sentence (as opposed to in
61925 between two sentences, e.g. after a period and before the first
61926 letter of the next sentence).  Sentence boundaries are determined
61927 by Pango and should be correct for nearly any language (if not, the
61928 correct fix would be to the Pango text boundary algorithms).</doc>
61929         <return-value transfer-ownership="none">
61930           <doc xml:whitespace="preserve">%TRUE if @iter is inside a sentence.</doc>
61931           <type name="boolean" c:type="gboolean"/>
61932         </return-value>
61933       </method>
61934       <method name="starts_line" c:identifier="gtk_text_iter_starts_line">
61935         <doc xml:whitespace="preserve">Returns %TRUE if @iter begins a paragraph,
61936 i.e. if gtk_text_iter_get_line_offset () would return 0.
61937 However this function is potentially more efficient than
61938 gtk_text_iter_get_line_offset () because it doesn't have to compute
61939 the offset, it just has to see whether it's 0.</doc>
61940         <return-value transfer-ownership="none">
61941           <doc xml:whitespace="preserve">whether @iter begins a line</doc>
61942           <type name="boolean" c:type="gboolean"/>
61943         </return-value>
61944       </method>
61945       <method name="ends_line" c:identifier="gtk_text_iter_ends_line">
61946         <doc xml:whitespace="preserve">Returns %TRUE if @iter points to the start of the paragraph
61947 delimiter characters for a line (delimiters will be either a
61948 newline, a carriage return, a carriage return followed by a
61949 newline, or a Unicode paragraph separator character). Note that an
61950 iterator pointing to the \n of a \r\n pair will not be counted as
61951 the end of a line, the line ends before the \r. The end iterator is
61952 considered to be at the end of a line, even though there are no
61953 paragraph delimiter chars there.</doc>
61954         <return-value transfer-ownership="none">
61955           <doc xml:whitespace="preserve">whether @iter is at the end of a line</doc>
61956           <type name="boolean" c:type="gboolean"/>
61957         </return-value>
61958       </method>
61959       <method name="is_cursor_position"
61960               c:identifier="gtk_text_iter_is_cursor_position">
61961         <doc xml:whitespace="preserve">See gtk_text_iter_forward_cursor_position() or #PangoLogAttr or
61962 pango_break() for details on what a cursor position is.</doc>
61963         <return-value transfer-ownership="none">
61964           <doc xml:whitespace="preserve">%TRUE if the cursor can be placed at @iter</doc>
61965           <type name="boolean" c:type="gboolean"/>
61966         </return-value>
61967       </method>
61968       <method name="get_chars_in_line"
61969               c:identifier="gtk_text_iter_get_chars_in_line">
61970         <doc xml:whitespace="preserve">Returns the number of characters in the line containing @iter,
61971 including the paragraph delimiters.</doc>
61972         <return-value transfer-ownership="none">
61973           <doc xml:whitespace="preserve">number of characters in the line</doc>
61974           <type name="int" c:type="gint"/>
61975         </return-value>
61976       </method>
61977       <method name="get_bytes_in_line"
61978               c:identifier="gtk_text_iter_get_bytes_in_line">
61979         <doc xml:whitespace="preserve">Returns the number of bytes in the line containing @iter,
61980 including the paragraph delimiters.</doc>
61981         <return-value transfer-ownership="none">
61982           <doc xml:whitespace="preserve">number of bytes in the line</doc>
61983           <type name="int" c:type="gint"/>
61984         </return-value>
61985       </method>
61986       <method name="get_attributes"
61987               c:identifier="gtk_text_iter_get_attributes">
61988         <doc xml:whitespace="preserve">Computes the effect of any tags applied to this spot in the
61989 text. The @values parameter should be initialized to the default
61990 settings you wish to use if no tags are in effect. You'd typically
61991 obtain the defaults from gtk_text_view_get_default_attributes().
61992 gtk_text_iter_get_attributes () will modify @values, applying the
61993 effects of any tags present at @iter. If any tags affected @values,
61994 the function returns %TRUE.</doc>
61995         <return-value transfer-ownership="none">
61996           <doc xml:whitespace="preserve">%TRUE if @values was modified</doc>
61997           <type name="boolean" c:type="gboolean"/>
61998         </return-value>
61999         <parameters>
62000           <parameter name="values" transfer-ownership="none">
62001             <doc xml:whitespace="preserve">a #GtkTextAttributes to be filled in</doc>
62002             <type name="TextAttributes" c:type="GtkTextAttributes*"/>
62003           </parameter>
62004         </parameters>
62005       </method>
62006       <method name="get_language" c:identifier="gtk_text_iter_get_language">
62007         <doc xml:whitespace="preserve">A convenience wrapper around gtk_text_iter_get_attributes (),
62008 which returns the language in effect at @iter. If no tags affecting
62009 language apply to @iter, the return value is identical to that of
62010 gtk_get_default_language ().</doc>
62011         <return-value transfer-ownership="full">
62012           <doc xml:whitespace="preserve">language in effect at @iter</doc>
62013           <type name="Pango.Language" c:type="PangoLanguage*"/>
62014         </return-value>
62015       </method>
62016       <method name="is_end" c:identifier="gtk_text_iter_is_end">
62017         <doc xml:whitespace="preserve">Returns %TRUE if @iter is the end iterator, i.e. one past the last
62018 dereferenceable iterator in the buffer. gtk_text_iter_is_end () is
62019 the most efficient way to check whether an iterator is the end
62020 iterator.</doc>
62021         <return-value transfer-ownership="none">
62022           <doc xml:whitespace="preserve">whether @iter is the end iterator</doc>
62023           <type name="boolean" c:type="gboolean"/>
62024         </return-value>
62025       </method>
62026       <method name="is_start" c:identifier="gtk_text_iter_is_start">
62027         <doc xml:whitespace="preserve">Returns %TRUE if @iter is the first iterator in the buffer, that is
62028 if @iter has a character offset of 0.</doc>
62029         <return-value transfer-ownership="none">
62030           <doc xml:whitespace="preserve">whether @iter is the first in the buffer</doc>
62031           <type name="boolean" c:type="gboolean"/>
62032         </return-value>
62033       </method>
62034       <method name="forward_char" c:identifier="gtk_text_iter_forward_char">
62035         <doc xml:whitespace="preserve">Moves @iter forward by one character offset. Note that images
62036 embedded in the buffer occupy 1 character slot, so
62037 gtk_text_iter_forward_char () may actually move onto an image instead
62038 of a character, if you have images in your buffer.  If @iter is the
62039 end iterator or one character before it, @iter will now point at
62040 the end iterator, and gtk_text_iter_forward_char () returns %FALSE for
62041 convenience when writing loops.</doc>
62042         <return-value transfer-ownership="none">
62043           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
62044           <type name="boolean" c:type="gboolean"/>
62045         </return-value>
62046       </method>
62047       <method name="backward_char" c:identifier="gtk_text_iter_backward_char">
62048         <doc xml:whitespace="preserve">Moves backward by one character offset. Returns %TRUE if movement
62049 was possible; if @iter was the first in the buffer (character
62050 offset 0), gtk_text_iter_backward_char () returns %FALSE for convenience when
62051 writing loops.</doc>
62052         <return-value transfer-ownership="none">
62053           <doc xml:whitespace="preserve">whether movement was possible</doc>
62054           <type name="boolean" c:type="gboolean"/>
62055         </return-value>
62056       </method>
62057       <method name="forward_chars" c:identifier="gtk_text_iter_forward_chars">
62058         <doc xml:whitespace="preserve">Moves @count characters if possible (if @count would move past the
62059 start or end of the buffer, moves to the start or end of the
62060 buffer). The return value indicates whether the new position of
62061 (the last iterator in the buffer is not dereferenceable). If @count
62062 is 0, the function does nothing and returns %FALSE.</doc>
62063         <return-value transfer-ownership="none">
62064           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
62065           <type name="boolean" c:type="gboolean"/>
62066         </return-value>
62067         <parameters>
62068           <parameter name="count" transfer-ownership="none">
62069             <doc xml:whitespace="preserve">number of characters to move, may be negative</doc>
62070             <type name="int" c:type="gint"/>
62071           </parameter>
62072         </parameters>
62073       </method>
62074       <method name="backward_chars"
62075               c:identifier="gtk_text_iter_backward_chars">
62076         <doc xml:whitespace="preserve">Moves @count characters backward, if possible (if @count would move
62077 past the start or end of the buffer, moves to the start or end of
62078 the buffer).  The return value indicates whether the iterator moved
62079 onto a dereferenceable position; if the iterator didn't move, or
62080 moved onto the end iterator, then %FALSE is returned. If @count is 0,
62081 the function does nothing and returns %FALSE.</doc>
62082         <return-value transfer-ownership="none">
62083           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
62084           <type name="boolean" c:type="gboolean"/>
62085         </return-value>
62086         <parameters>
62087           <parameter name="count" transfer-ownership="none">
62088             <doc xml:whitespace="preserve">number of characters to move</doc>
62089             <type name="int" c:type="gint"/>
62090           </parameter>
62091         </parameters>
62092       </method>
62093       <method name="forward_line" c:identifier="gtk_text_iter_forward_line">
62094         <doc xml:whitespace="preserve">Moves @iter to the start of the next line. If the iter is already on the
62095 last line of the buffer, moves the iter to the end of the current line.
62096 If after the operation, the iter is at the end of the buffer and not
62097 dereferencable, returns %FALSE. Otherwise, returns %TRUE.</doc>
62098         <return-value transfer-ownership="none">
62099           <doc xml:whitespace="preserve">whether @iter can be dereferenced</doc>
62100           <type name="boolean" c:type="gboolean"/>
62101         </return-value>
62102       </method>
62103       <method name="backward_line" c:identifier="gtk_text_iter_backward_line">
62104         <doc xml:whitespace="preserve">Moves @iter to the start of the previous line. Returns %TRUE if
62105 function returns %FALSE. Therefore if @iter was already on line 0,
62106 but not at the start of the line, @iter is snapped to the start of
62107 the line and the function returns %TRUE. (Note that this implies that
62108 in a loop calling this function, the line number may not change on
62109 every iteration, if your first iteration is on line 0.)</doc>
62110         <return-value transfer-ownership="none">
62111           <doc xml:whitespace="preserve">whether @iter moved</doc>
62112           <type name="boolean" c:type="gboolean"/>
62113         </return-value>
62114       </method>
62115       <method name="forward_lines" c:identifier="gtk_text_iter_forward_lines">
62116         <doc xml:whitespace="preserve">Moves @count lines forward, if possible (if @count would move
62117 past the start or end of the buffer, moves to the start or end of
62118 the buffer).  The return value indicates whether the iterator moved
62119 onto a dereferenceable position; if the iterator didn't move, or
62120 moved onto the end iterator, then %FALSE is returned. If @count is 0,
62121 the function does nothing and returns %FALSE. If @count is negative,
62122 moves backward by 0 - @count lines.</doc>
62123         <return-value transfer-ownership="none">
62124           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
62125           <type name="boolean" c:type="gboolean"/>
62126         </return-value>
62127         <parameters>
62128           <parameter name="count" transfer-ownership="none">
62129             <doc xml:whitespace="preserve">number of lines to move forward</doc>
62130             <type name="int" c:type="gint"/>
62131           </parameter>
62132         </parameters>
62133       </method>
62134       <method name="backward_lines"
62135               c:identifier="gtk_text_iter_backward_lines">
62136         <doc xml:whitespace="preserve">Moves @count lines backward, if possible (if @count would move
62137 past the start or end of the buffer, moves to the start or end of
62138 the buffer).  The return value indicates whether the iterator moved
62139 onto a dereferenceable position; if the iterator didn't move, or
62140 moved onto the end iterator, then %FALSE is returned. If @count is 0,
62141 the function does nothing and returns %FALSE. If @count is negative,
62142 moves forward by 0 - @count lines.</doc>
62143         <return-value transfer-ownership="none">
62144           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
62145           <type name="boolean" c:type="gboolean"/>
62146         </return-value>
62147         <parameters>
62148           <parameter name="count" transfer-ownership="none">
62149             <doc xml:whitespace="preserve">number of lines to move backward</doc>
62150             <type name="int" c:type="gint"/>
62151           </parameter>
62152         </parameters>
62153       </method>
62154       <method name="forward_word_end"
62155               c:identifier="gtk_text_iter_forward_word_end">
62156         <doc xml:whitespace="preserve">Moves forward to the next word end. (If @iter is currently on a
62157 word end, moves forward to the next one after that.) Word breaks
62158 are determined by Pango and should be correct for nearly any
62159 language (if not, the correct fix would be to the Pango word break
62160 algorithms).</doc>
62161         <return-value transfer-ownership="none">
62162           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
62163           <type name="boolean" c:type="gboolean"/>
62164         </return-value>
62165       </method>
62166       <method name="backward_word_start"
62167               c:identifier="gtk_text_iter_backward_word_start">
62168         <doc xml:whitespace="preserve">Calls gtk_text_iter_backward_word_start() up to @count times.</doc>
62169         <return-value transfer-ownership="none">
62170           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
62171           <type name="boolean" c:type="gboolean"/>
62172         </return-value>
62173       </method>
62174       <method name="forward_word_ends"
62175               c:identifier="gtk_text_iter_forward_word_ends">
62176         <doc xml:whitespace="preserve">Calls gtk_text_iter_forward_word_end() up to @count times.</doc>
62177         <return-value transfer-ownership="none">
62178           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
62179           <type name="boolean" c:type="gboolean"/>
62180         </return-value>
62181         <parameters>
62182           <parameter name="count" transfer-ownership="none">
62183             <doc xml:whitespace="preserve">number of times to move</doc>
62184             <type name="int" c:type="gint"/>
62185           </parameter>
62186         </parameters>
62187       </method>
62188       <method name="backward_word_starts"
62189               c:identifier="gtk_text_iter_backward_word_starts">
62190         <return-value transfer-ownership="none">
62191           <type name="boolean" c:type="gboolean"/>
62192         </return-value>
62193         <parameters>
62194           <parameter name="count" transfer-ownership="none">
62195             <type name="int" c:type="gint"/>
62196           </parameter>
62197         </parameters>
62198       </method>
62199       <method name="forward_visible_line"
62200               c:identifier="gtk_text_iter_forward_visible_line"
62201               version="2.8">
62202         <doc xml:whitespace="preserve">Moves @iter to the start of the next visible line. Returns %TRUE if there
62203 was a next line to move to, and %FALSE if @iter was simply moved to
62204 the end of the buffer and is now not dereferenceable, or if @iter was
62205 already at the end of the buffer.</doc>
62206         <return-value transfer-ownership="none">
62207           <doc xml:whitespace="preserve">whether @iter can be dereferenced</doc>
62208           <type name="boolean" c:type="gboolean"/>
62209         </return-value>
62210       </method>
62211       <method name="backward_visible_line"
62212               c:identifier="gtk_text_iter_backward_visible_line"
62213               version="2.8">
62214         <doc xml:whitespace="preserve">Moves @iter to the start of the previous visible line. Returns %TRUE if
62215 function returns %FALSE. Therefore if @iter was already on line 0,
62216 but not at the start of the line, @iter is snapped to the start of
62217 the line and the function returns %TRUE. (Note that this implies that
62218 in a loop calling this function, the line number may not change on
62219 every iteration, if your first iteration is on line 0.)</doc>
62220         <return-value transfer-ownership="none">
62221           <doc xml:whitespace="preserve">whether @iter moved</doc>
62222           <type name="boolean" c:type="gboolean"/>
62223         </return-value>
62224       </method>
62225       <method name="forward_visible_lines"
62226               c:identifier="gtk_text_iter_forward_visible_lines"
62227               version="2.8">
62228         <doc xml:whitespace="preserve">Moves @count visible lines forward, if possible (if @count would move
62229 past the start or end of the buffer, moves to the start or end of
62230 the buffer).  The return value indicates whether the iterator moved
62231 onto a dereferenceable position; if the iterator didn't move, or
62232 moved onto the end iterator, then %FALSE is returned. If @count is 0,
62233 the function does nothing and returns %FALSE. If @count is negative,
62234 moves backward by 0 - @count lines.</doc>
62235         <return-value transfer-ownership="none">
62236           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
62237           <type name="boolean" c:type="gboolean"/>
62238         </return-value>
62239         <parameters>
62240           <parameter name="count" transfer-ownership="none">
62241             <doc xml:whitespace="preserve">number of lines to move forward</doc>
62242             <type name="int" c:type="gint"/>
62243           </parameter>
62244         </parameters>
62245       </method>
62246       <method name="backward_visible_lines"
62247               c:identifier="gtk_text_iter_backward_visible_lines"
62248               version="2.8">
62249         <doc xml:whitespace="preserve">Moves @count visible lines backward, if possible (if @count would move
62250 past the start or end of the buffer, moves to the start or end of
62251 the buffer).  The return value indicates whether the iterator moved
62252 onto a dereferenceable position; if the iterator didn't move, or
62253 moved onto the end iterator, then %FALSE is returned. If @count is 0,
62254 the function does nothing and returns %FALSE. If @count is negative,
62255 moves forward by 0 - @count lines.</doc>
62256         <return-value transfer-ownership="none">
62257           <doc xml:whitespace="preserve">whether @iter moved and is dereferenceable</doc>
62258           <type name="boolean" c:type="gboolean"/>
62259         </return-value>
62260         <parameters>
62261           <parameter name="count" transfer-ownership="none">
62262             <doc xml:whitespace="preserve">number of lines to move backward</doc>
62263             <type name="int" c:type="gint"/>
62264           </parameter>
62265         </parameters>
62266       </method>
62267       <method name="forward_visible_word_end"
62268               c:identifier="gtk_text_iter_forward_visible_word_end"
62269               version="2.4">
62270         <doc xml:whitespace="preserve">Moves forward to the next visible word end. (If @iter is currently on a
62271 word end, moves forward to the next one after that.) Word breaks
62272 are determined by Pango and should be correct for nearly any
62273 language (if not, the correct fix would be to the Pango word break
62274 algorithms).</doc>
62275         <return-value transfer-ownership="none">
62276           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
62277           <type name="boolean" c:type="gboolean"/>
62278         </return-value>
62279       </method>
62280       <method name="backward_visible_word_start"
62281               c:identifier="gtk_text_iter_backward_visible_word_start"
62282               version="2.4">
62283         <doc xml:whitespace="preserve">Calls gtk_text_iter_backward_visible_word_start() up to @count times.</doc>
62284         <return-value transfer-ownership="none">
62285           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
62286           <type name="boolean" c:type="gboolean"/>
62287         </return-value>
62288       </method>
62289       <method name="forward_visible_word_ends"
62290               c:identifier="gtk_text_iter_forward_visible_word_ends"
62291               version="2.4">
62292         <doc xml:whitespace="preserve">Calls gtk_text_iter_forward_visible_word_end() up to @count times.</doc>
62293         <return-value transfer-ownership="none">
62294           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
62295           <type name="boolean" c:type="gboolean"/>
62296         </return-value>
62297         <parameters>
62298           <parameter name="count" transfer-ownership="none">
62299             <doc xml:whitespace="preserve">number of times to move</doc>
62300             <type name="int" c:type="gint"/>
62301           </parameter>
62302         </parameters>
62303       </method>
62304       <method name="backward_visible_word_starts"
62305               c:identifier="gtk_text_iter_backward_visible_word_starts">
62306         <return-value transfer-ownership="none">
62307           <type name="boolean" c:type="gboolean"/>
62308         </return-value>
62309         <parameters>
62310           <parameter name="count" transfer-ownership="none">
62311             <type name="int" c:type="gint"/>
62312           </parameter>
62313         </parameters>
62314       </method>
62315       <method name="forward_sentence_end"
62316               c:identifier="gtk_text_iter_forward_sentence_end">
62317         <doc xml:whitespace="preserve">Moves forward to the next sentence end. (If @iter is at the end of
62318 a sentence, moves to the next end of sentence.)  Sentence
62319 boundaries are determined by Pango and should be correct for nearly
62320 any language (if not, the correct fix would be to the Pango text
62321 boundary algorithms).</doc>
62322         <return-value transfer-ownership="none">
62323           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
62324           <type name="boolean" c:type="gboolean"/>
62325         </return-value>
62326       </method>
62327       <method name="backward_sentence_start"
62328               c:identifier="gtk_text_iter_backward_sentence_start">
62329         <doc xml:whitespace="preserve">Moves backward to the previous sentence start; if @iter is already at
62330 the start of a sentence, moves backward to the next one.  Sentence
62331 boundaries are determined by Pango and should be correct for nearly
62332 any language (if not, the correct fix would be to the Pango text
62333 boundary algorithms).</doc>
62334         <return-value transfer-ownership="none">
62335           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
62336           <type name="boolean" c:type="gboolean"/>
62337         </return-value>
62338       </method>
62339       <method name="forward_sentence_ends"
62340               c:identifier="gtk_text_iter_forward_sentence_ends">
62341         <doc xml:whitespace="preserve">Calls gtk_text_iter_forward_sentence_end() @count times (or until
62342 gtk_text_iter_forward_sentence_end() returns %FALSE). If @count is
62343 negative, moves backward instead of forward.</doc>
62344         <return-value transfer-ownership="none">
62345           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
62346           <type name="boolean" c:type="gboolean"/>
62347         </return-value>
62348         <parameters>
62349           <parameter name="count" transfer-ownership="none">
62350             <doc xml:whitespace="preserve">number of sentences to move</doc>
62351             <type name="int" c:type="gint"/>
62352           </parameter>
62353         </parameters>
62354       </method>
62355       <method name="backward_sentence_starts"
62356               c:identifier="gtk_text_iter_backward_sentence_starts">
62357         <doc xml:whitespace="preserve">Calls gtk_text_iter_backward_sentence_start() up to @count times,
62358 or until it returns %FALSE. If @count is negative, moves forward
62359 instead of backward.</doc>
62360         <return-value transfer-ownership="none">
62361           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not the end iterator</doc>
62362           <type name="boolean" c:type="gboolean"/>
62363         </return-value>
62364         <parameters>
62365           <parameter name="count" transfer-ownership="none">
62366             <doc xml:whitespace="preserve">number of sentences to move</doc>
62367             <type name="int" c:type="gint"/>
62368           </parameter>
62369         </parameters>
62370       </method>
62371       <method name="forward_cursor_position"
62372               c:identifier="gtk_text_iter_forward_cursor_position">
62373         <doc xml:whitespace="preserve">Moves @iter forward by a single cursor position. Cursor positions
62374 are (unsurprisingly) positions where the cursor can appear. Perhaps
62375 surprisingly, there may not be a cursor position between all
62376 characters. The most common example for European languages would be
62377 a carriage return/newline sequence. For some Unicode characters,
62378 the equivalent of say the letter "a" with an accent mark will be
62379 represented as two characters, first the letter then a "combining
62380 mark" that causes the accent to be rendered; so the cursor can't go
62381 between those two characters. See also the #PangoLogAttr structure and
62382 pango_break() function.</doc>
62383         <return-value transfer-ownership="none">
62384           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
62385           <type name="boolean" c:type="gboolean"/>
62386         </return-value>
62387       </method>
62388       <method name="backward_cursor_position"
62389               c:identifier="gtk_text_iter_backward_cursor_position">
62390         <doc xml:whitespace="preserve">Like gtk_text_iter_forward_cursor_position(), but moves backward.</doc>
62391         <return-value transfer-ownership="none">
62392           <doc xml:whitespace="preserve">%TRUE if we moved</doc>
62393           <type name="boolean" c:type="gboolean"/>
62394         </return-value>
62395       </method>
62396       <method name="forward_cursor_positions"
62397               c:identifier="gtk_text_iter_forward_cursor_positions">
62398         <doc xml:whitespace="preserve">Moves up to @count cursor positions. See
62399 gtk_text_iter_forward_cursor_position() for details.</doc>
62400         <return-value transfer-ownership="none">
62401           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
62402           <type name="boolean" c:type="gboolean"/>
62403         </return-value>
62404         <parameters>
62405           <parameter name="count" transfer-ownership="none">
62406             <doc xml:whitespace="preserve">number of positions to move</doc>
62407             <type name="int" c:type="gint"/>
62408           </parameter>
62409         </parameters>
62410       </method>
62411       <method name="backward_cursor_positions"
62412               c:identifier="gtk_text_iter_backward_cursor_positions">
62413         <doc xml:whitespace="preserve">Moves up to @count cursor positions. See
62414 gtk_text_iter_forward_cursor_position() for details.</doc>
62415         <return-value transfer-ownership="none">
62416           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
62417           <type name="boolean" c:type="gboolean"/>
62418         </return-value>
62419         <parameters>
62420           <parameter name="count" transfer-ownership="none">
62421             <doc xml:whitespace="preserve">number of positions to move</doc>
62422             <type name="int" c:type="gint"/>
62423           </parameter>
62424         </parameters>
62425       </method>
62426       <method name="forward_visible_cursor_position"
62427               c:identifier="gtk_text_iter_forward_visible_cursor_position"
62428               version="2.4">
62429         <doc xml:whitespace="preserve">Moves @iter forward to the next visible cursor position. See 
62430 gtk_text_iter_forward_cursor_position() for details.</doc>
62431         <return-value transfer-ownership="none">
62432           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
62433           <type name="boolean" c:type="gboolean"/>
62434         </return-value>
62435       </method>
62436       <method name="backward_visible_cursor_position"
62437               c:identifier="gtk_text_iter_backward_visible_cursor_position"
62438               version="2.4">
62439         <doc xml:whitespace="preserve">Moves @iter forward to the previous visible cursor position. See 
62440 gtk_text_iter_backward_cursor_position() for details.</doc>
62441         <return-value transfer-ownership="none">
62442           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
62443           <type name="boolean" c:type="gboolean"/>
62444         </return-value>
62445       </method>
62446       <method name="forward_visible_cursor_positions"
62447               c:identifier="gtk_text_iter_forward_visible_cursor_positions"
62448               version="2.4">
62449         <doc xml:whitespace="preserve">Moves up to @count visible cursor positions. See
62450 gtk_text_iter_forward_cursor_position() for details.</doc>
62451         <return-value transfer-ownership="none">
62452           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
62453           <type name="boolean" c:type="gboolean"/>
62454         </return-value>
62455         <parameters>
62456           <parameter name="count" transfer-ownership="none">
62457             <doc xml:whitespace="preserve">number of positions to move</doc>
62458             <type name="int" c:type="gint"/>
62459           </parameter>
62460         </parameters>
62461       </method>
62462       <method name="backward_visible_cursor_positions"
62463               c:identifier="gtk_text_iter_backward_visible_cursor_positions"
62464               version="2.4">
62465         <doc xml:whitespace="preserve">Moves up to @count visible cursor positions. See
62466 gtk_text_iter_backward_cursor_position() for details.</doc>
62467         <return-value transfer-ownership="none">
62468           <doc xml:whitespace="preserve">%TRUE if we moved and the new position is dereferenceable</doc>
62469           <type name="boolean" c:type="gboolean"/>
62470         </return-value>
62471         <parameters>
62472           <parameter name="count" transfer-ownership="none">
62473             <doc xml:whitespace="preserve">number of positions to move</doc>
62474             <type name="int" c:type="gint"/>
62475           </parameter>
62476         </parameters>
62477       </method>
62478       <method name="set_offset" c:identifier="gtk_text_iter_set_offset">
62479         <doc xml:whitespace="preserve">Sets @iter to point to @char_offset. @char_offset counts from the start
62480 of the entire text buffer, starting with 0.</doc>
62481         <return-value transfer-ownership="none">
62482           <type name="none" c:type="void"/>
62483         </return-value>
62484         <parameters>
62485           <parameter name="char_offset" transfer-ownership="none">
62486             <doc xml:whitespace="preserve">a character number</doc>
62487             <type name="int" c:type="gint"/>
62488           </parameter>
62489         </parameters>
62490       </method>
62491       <method name="set_line" c:identifier="gtk_text_iter_set_line">
62492         <doc xml:whitespace="preserve">Moves iterator @iter to the start of the line @line_number.  If
62493 buffer, moves @iter to the start of the last line in the buffer.</doc>
62494         <return-value transfer-ownership="none">
62495           <type name="none" c:type="void"/>
62496         </return-value>
62497         <parameters>
62498           <parameter name="line_number" transfer-ownership="none">
62499             <doc xml:whitespace="preserve">line number (counted from 0)</doc>
62500             <type name="int" c:type="gint"/>
62501           </parameter>
62502         </parameters>
62503       </method>
62504       <method name="set_line_offset"
62505               c:identifier="gtk_text_iter_set_line_offset">
62506         <doc xml:whitespace="preserve">Moves @iter within a line, to a new &lt;emphasis&gt;character&lt;/emphasis&gt;
62507 (not byte) offset. The given character offset must be less than or
62508 equal to the number of characters in the line; if equal, @iter
62509 moves to the start of the next line. See
62510 gtk_text_iter_set_line_index() if you have a byte index rather than
62511 a character offset.</doc>
62512         <return-value transfer-ownership="none">
62513           <type name="none" c:type="void"/>
62514         </return-value>
62515         <parameters>
62516           <parameter name="char_on_line" transfer-ownership="none">
62517             <doc xml:whitespace="preserve">a character offset relative to the start of @iter's current line</doc>
62518             <type name="int" c:type="gint"/>
62519           </parameter>
62520         </parameters>
62521       </method>
62522       <method name="set_line_index"
62523               c:identifier="gtk_text_iter_set_line_index">
62524         <doc xml:whitespace="preserve">Same as gtk_text_iter_set_line_offset(), but works with a
62525 &lt;emphasis&gt;byte&lt;/emphasis&gt; index. The given byte index must be at
62526 the start of a character, it can't be in the middle of a UTF-8
62527 encoded character.</doc>
62528         <return-value transfer-ownership="none">
62529           <type name="none" c:type="void"/>
62530         </return-value>
62531         <parameters>
62532           <parameter name="byte_on_line" transfer-ownership="none">
62533             <doc xml:whitespace="preserve">a byte index relative to the start of @iter's current line</doc>
62534             <type name="int" c:type="gint"/>
62535           </parameter>
62536         </parameters>
62537       </method>
62538       <method name="forward_to_end"
62539               c:identifier="gtk_text_iter_forward_to_end">
62540         <doc xml:whitespace="preserve">Moves @iter forward to the "end iterator," which points one past the last
62541 valid character in the buffer. gtk_text_iter_get_char() called on the
62542 end iterator returns 0, which is convenient for writing loops.</doc>
62543         <return-value transfer-ownership="none">
62544           <type name="none" c:type="void"/>
62545         </return-value>
62546       </method>
62547       <method name="forward_to_line_end"
62548               c:identifier="gtk_text_iter_forward_to_line_end">
62549         <doc xml:whitespace="preserve">Moves the iterator to point to the paragraph delimiter characters,
62550 which will be either a newline, a carriage return, a carriage
62551 return/newline in sequence, or the Unicode paragraph separator
62552 character. If the iterator is already at the paragraph delimiter
62553 characters, moves to the paragraph delimiter characters for the
62554 next line. If @iter is on the last line in the buffer, which does
62555 not end in paragraph delimiters, moves to the end iterator (end of
62556 the last line), and returns %FALSE.</doc>
62557         <return-value transfer-ownership="none">
62558           <doc xml:whitespace="preserve">%TRUE if we moved and the new location is not the end iterator</doc>
62559           <type name="boolean" c:type="gboolean"/>
62560         </return-value>
62561       </method>
62562       <method name="set_visible_line_offset"
62563               c:identifier="gtk_text_iter_set_visible_line_offset">
62564         <doc xml:whitespace="preserve">Like gtk_text_iter_set_line_offset(), but the offset is in visible
62565 characters, i.e. text with a tag making it invisible is not
62566 counted in the offset.</doc>
62567         <return-value transfer-ownership="none">
62568           <type name="none" c:type="void"/>
62569         </return-value>
62570         <parameters>
62571           <parameter name="char_on_line" transfer-ownership="none">
62572             <doc xml:whitespace="preserve">a character offset</doc>
62573             <type name="int" c:type="gint"/>
62574           </parameter>
62575         </parameters>
62576       </method>
62577       <method name="set_visible_line_index"
62578               c:identifier="gtk_text_iter_set_visible_line_index">
62579         <doc xml:whitespace="preserve">Like gtk_text_iter_set_line_index(), but the index is in visible
62580 bytes, i.e. text with a tag making it invisible is not counted
62581 in the index.</doc>
62582         <return-value transfer-ownership="none">
62583           <type name="none" c:type="void"/>
62584         </return-value>
62585         <parameters>
62586           <parameter name="byte_on_line" transfer-ownership="none">
62587             <doc xml:whitespace="preserve">a byte index</doc>
62588             <type name="int" c:type="gint"/>
62589           </parameter>
62590         </parameters>
62591       </method>
62592       <method name="forward_to_tag_toggle"
62593               c:identifier="gtk_text_iter_forward_to_tag_toggle">
62594         <doc xml:whitespace="preserve">Moves forward to the next toggle (on or off) of the
62595 #GtkTextTag @tag, or to the next toggle of any tag if
62596 returns %FALSE, otherwise %TRUE. Does not return toggles
62597 located at @iter, only toggles after @iter. Sets @iter to
62598 the location of the toggle, or to the end of the buffer
62599 if no toggle is found.</doc>
62600         <return-value transfer-ownership="none">
62601           <doc xml:whitespace="preserve">whether we found a tag toggle after @iter</doc>
62602           <type name="boolean" c:type="gboolean"/>
62603         </return-value>
62604         <parameters>
62605           <parameter name="tag" transfer-ownership="none" allow-none="1">
62606             <doc xml:whitespace="preserve">a #GtkTextTag, or %NULL</doc>
62607             <type name="TextTag" c:type="GtkTextTag*"/>
62608           </parameter>
62609         </parameters>
62610       </method>
62611       <method name="backward_to_tag_toggle"
62612               c:identifier="gtk_text_iter_backward_to_tag_toggle">
62613         <doc xml:whitespace="preserve">Moves backward to the next toggle (on or off) of the
62614 #GtkTextTag @tag, or to the next toggle of any tag if
62615 returns %FALSE, otherwise %TRUE. Does not return toggles
62616 located at @iter, only toggles before @iter. Sets @iter
62617 to the location of the toggle, or the start of the buffer
62618 if no toggle is found.</doc>
62619         <return-value transfer-ownership="none">
62620           <doc xml:whitespace="preserve">whether we found a tag toggle before @iter</doc>
62621           <type name="boolean" c:type="gboolean"/>
62622         </return-value>
62623         <parameters>
62624           <parameter name="tag" transfer-ownership="none" allow-none="1">
62625             <doc xml:whitespace="preserve">a #GtkTextTag, or %NULL</doc>
62626             <type name="TextTag" c:type="GtkTextTag*"/>
62627           </parameter>
62628         </parameters>
62629       </method>
62630       <method name="forward_find_char"
62631               c:identifier="gtk_text_iter_forward_find_char">
62632         <doc xml:whitespace="preserve">Advances @iter, calling @pred on each character. If
62633 If @pred never returns %TRUE, @iter is set to @limit if</doc>
62634         <return-value transfer-ownership="none">
62635           <doc xml:whitespace="preserve">whether a match was found</doc>
62636           <type name="boolean" c:type="gboolean"/>
62637         </return-value>
62638         <parameters>
62639           <parameter name="pred"
62640                      transfer-ownership="none"
62641                      scope="call"
62642                      closure="2">
62643             <doc xml:whitespace="preserve">a function to be called on each character</doc>
62644             <type name="TextCharPredicate" c:type="GtkTextCharPredicate"/>
62645           </parameter>
62646           <parameter name="user_data" transfer-ownership="none">
62647             <doc xml:whitespace="preserve">user data for @pred</doc>
62648             <type name="any" c:type="gpointer"/>
62649           </parameter>
62650           <parameter name="limit" transfer-ownership="none" allow-none="1">
62651             <doc xml:whitespace="preserve">search limit, or %NULL for none</doc>
62652             <type name="TextIter" c:type="GtkTextIter*"/>
62653           </parameter>
62654         </parameters>
62655       </method>
62656       <method name="backward_find_char"
62657               c:identifier="gtk_text_iter_backward_find_char">
62658         <doc xml:whitespace="preserve">Same as gtk_text_iter_forward_find_char(), but goes backward from @iter.</doc>
62659         <return-value transfer-ownership="none">
62660           <doc xml:whitespace="preserve">whether a match was found</doc>
62661           <type name="boolean" c:type="gboolean"/>
62662         </return-value>
62663         <parameters>
62664           <parameter name="pred"
62665                      transfer-ownership="none"
62666                      scope="call"
62667                      closure="2">
62668             <doc xml:whitespace="preserve">function to be called on each character</doc>
62669             <type name="TextCharPredicate" c:type="GtkTextCharPredicate"/>
62670           </parameter>
62671           <parameter name="user_data" transfer-ownership="none">
62672             <doc xml:whitespace="preserve">user data for @pred</doc>
62673             <type name="any" c:type="gpointer"/>
62674           </parameter>
62675           <parameter name="limit" transfer-ownership="none" allow-none="1">
62676             <doc xml:whitespace="preserve">search limit, or %NULL for none</doc>
62677             <type name="TextIter" c:type="GtkTextIter*"/>
62678           </parameter>
62679         </parameters>
62680       </method>
62681       <method name="forward_search"
62682               c:identifier="gtk_text_iter_forward_search">
62683         <doc xml:whitespace="preserve">Searches forward for @str. Any match is returned by setting
62684 first character after the match. The search will not continue past
62685 may wish to use @limit to avoid locking up your UI on large
62686 buffers.
62687 If the #GTK_TEXT_SEARCH_VISIBLE_ONLY flag is present, the match may
62688 have invisible text interspersed in @str. i.e. @str will be a
62689 possibly-noncontiguous subsequence of the matched range. similarly,
62690 if you specify #GTK_TEXT_SEARCH_TEXT_ONLY, the match may have
62691 pixbufs or child widgets mixed inside the matched range. If these
62692 flags are not given, the match must be exact; the special 0xFFFC
62693 character in @str will match embedded pixbufs or child widgets.</doc>
62694         <return-value transfer-ownership="none">
62695           <doc xml:whitespace="preserve">whether a match was found</doc>
62696           <type name="boolean" c:type="gboolean"/>
62697         </return-value>
62698         <parameters>
62699           <parameter name="str" transfer-ownership="none">
62700             <doc xml:whitespace="preserve">a search string</doc>
62701             <type name="utf8" c:type="gchar*"/>
62702           </parameter>
62703           <parameter name="flags" transfer-ownership="none">
62704             <doc xml:whitespace="preserve">flags affecting how the search is done</doc>
62705             <type name="TextSearchFlags" c:type="GtkTextSearchFlags"/>
62706           </parameter>
62707           <parameter name="match_start"
62708                      transfer-ownership="none"
62709                      allow-none="1">
62710             <doc xml:whitespace="preserve">return location for start of match, or %NULL</doc>
62711             <type name="TextIter" c:type="GtkTextIter*"/>
62712           </parameter>
62713           <parameter name="match_end" transfer-ownership="none" allow-none="1">
62714             <doc xml:whitespace="preserve">return location for end of match, or %NULL</doc>
62715             <type name="TextIter" c:type="GtkTextIter*"/>
62716           </parameter>
62717           <parameter name="limit" transfer-ownership="none" allow-none="1">
62718             <doc xml:whitespace="preserve">bound for the search, or %NULL for the end of the buffer</doc>
62719             <type name="TextIter" c:type="GtkTextIter*"/>
62720           </parameter>
62721         </parameters>
62722       </method>
62723       <method name="backward_search"
62724               c:identifier="gtk_text_iter_backward_search">
62725         <doc xml:whitespace="preserve">Same as gtk_text_iter_forward_search(), but moves backward.</doc>
62726         <return-value transfer-ownership="none">
62727           <doc xml:whitespace="preserve">whether a match was found</doc>
62728           <type name="boolean" c:type="gboolean"/>
62729         </return-value>
62730         <parameters>
62731           <parameter name="str" transfer-ownership="none">
62732             <doc xml:whitespace="preserve">search string</doc>
62733             <type name="utf8" c:type="gchar*"/>
62734           </parameter>
62735           <parameter name="flags" transfer-ownership="none">
62736             <doc xml:whitespace="preserve">bitmask of flags affecting the search</doc>
62737             <type name="TextSearchFlags" c:type="GtkTextSearchFlags"/>
62738           </parameter>
62739           <parameter name="match_start"
62740                      transfer-ownership="none"
62741                      allow-none="1">
62742             <doc xml:whitespace="preserve">return location for start of match, or %NULL</doc>
62743             <type name="TextIter" c:type="GtkTextIter*"/>
62744           </parameter>
62745           <parameter name="match_end" transfer-ownership="none" allow-none="1">
62746             <doc xml:whitespace="preserve">return location for end of match, or %NULL</doc>
62747             <type name="TextIter" c:type="GtkTextIter*"/>
62748           </parameter>
62749           <parameter name="limit" transfer-ownership="none" allow-none="1">
62750             <doc xml:whitespace="preserve">location of last possible @match_start, or %NULL for start of buffer</doc>
62751             <type name="TextIter" c:type="GtkTextIter*"/>
62752           </parameter>
62753         </parameters>
62754       </method>
62755       <method name="equal" c:identifier="gtk_text_iter_equal">
62756         <doc xml:whitespace="preserve">Tests whether two iterators are equal, using the fastest possible
62757 mechanism. This function is very fast; you can expect it to perform
62758 better than e.g. getting the character offset for each iterator and
62759 comparing the offsets yourself. Also, it's a bit faster than
62760 gtk_text_iter_compare().</doc>
62761         <return-value transfer-ownership="none">
62762           <doc xml:whitespace="preserve">%TRUE if the iterators point to the same place in the buffer</doc>
62763           <type name="boolean" c:type="gboolean"/>
62764         </return-value>
62765         <parameters>
62766           <parameter name="rhs" transfer-ownership="none">
62767             <doc xml:whitespace="preserve">another #GtkTextIter</doc>
62768             <type name="TextIter" c:type="GtkTextIter*"/>
62769           </parameter>
62770         </parameters>
62771       </method>
62772       <method name="compare" c:identifier="gtk_text_iter_compare">
62773         <doc xml:whitespace="preserve">A qsort()-style function that returns negative if @lhs is less than
62774 Ordering is in character offset order, i.e. the first character in the buffer
62775 is less than the second character in the buffer.</doc>
62776         <return-value transfer-ownership="none">
62777           <doc xml:whitespace="preserve">-1 if @lhs is less than @rhs, 1 if @lhs is greater, 0 if they are equal</doc>
62778           <type name="int" c:type="gint"/>
62779         </return-value>
62780         <parameters>
62781           <parameter name="rhs" transfer-ownership="none">
62782             <doc xml:whitespace="preserve">another #GtkTextIter</doc>
62783             <type name="TextIter" c:type="GtkTextIter*"/>
62784           </parameter>
62785         </parameters>
62786       </method>
62787       <method name="in_range" c:identifier="gtk_text_iter_in_range">
62788         <doc xml:whitespace="preserve">Checks whether @iter falls in the range [@start, @end).</doc>
62789         <return-value transfer-ownership="none">
62790           <doc xml:whitespace="preserve">%TRUE if @iter is in the range</doc>
62791           <type name="boolean" c:type="gboolean"/>
62792         </return-value>
62793         <parameters>
62794           <parameter name="start" transfer-ownership="none">
62795             <doc xml:whitespace="preserve">start of range</doc>
62796             <type name="TextIter" c:type="GtkTextIter*"/>
62797           </parameter>
62798           <parameter name="end" transfer-ownership="none">
62799             <doc xml:whitespace="preserve">end of range</doc>
62800             <type name="TextIter" c:type="GtkTextIter*"/>
62801           </parameter>
62802         </parameters>
62803       </method>
62804       <method name="order" c:identifier="gtk_text_iter_order">
62805         <doc xml:whitespace="preserve">Swaps the value of @first and @second if @second comes before
62806 in sequence. Most text buffer functions that take a range call this
62807 automatically on your behalf, so there's no real reason to call it yourself
62808 in those cases. There are some exceptions, such as gtk_text_iter_in_range(),
62809 that expect a pre-sorted range.</doc>
62810         <return-value transfer-ownership="none">
62811           <type name="none" c:type="void"/>
62812         </return-value>
62813         <parameters>
62814           <parameter name="second" transfer-ownership="none">
62815             <doc xml:whitespace="preserve">another #GtkTextIter</doc>
62816             <type name="TextIter" c:type="GtkTextIter*"/>
62817           </parameter>
62818         </parameters>
62819       </method>
62820     </record>
62821     <class name="TextLayout"
62822            c:type="GtkTextLayout"
62823            parent="GObject.Object"
62824            glib:type-name="GtkTextLayout"
62825            glib:get-type="gtk_text_layout_get_type"
62826            glib:type-struct="TextLayoutClass">
62827       <constructor name="new" c:identifier="gtk_text_layout_new">
62828         <return-value transfer-ownership="full">
62829           <type name="TextLayout" c:type="GtkTextLayout*"/>
62830         </return-value>
62831       </constructor>
62832       <virtual-method name="wrap" invoker="wrap">
62833         <return-value transfer-ownership="full">
62834           <type name="TextLineData" c:type="GtkTextLineData*"/>
62835         </return-value>
62836         <parameters>
62837           <parameter name="line" transfer-ownership="none">
62838             <type name="TextLine" c:type="GtkTextLine*"/>
62839           </parameter>
62840           <parameter name="line_data" transfer-ownership="none">
62841             <type name="TextLineData" c:type="GtkTextLineData*"/>
62842           </parameter>
62843         </parameters>
62844       </virtual-method>
62845       <virtual-method name="get_log_attrs">
62846         <return-value transfer-ownership="none">
62847           <type name="none" c:type="void"/>
62848         </return-value>
62849         <parameters>
62850           <parameter name="line" transfer-ownership="none">
62851             <type name="TextLine" c:type="GtkTextLine*"/>
62852           </parameter>
62853           <parameter name="attrs" transfer-ownership="none">
62854             <type name="Pango.LogAttr" c:type="PangoLogAttr**"/>
62855           </parameter>
62856           <parameter name="n_attrs"
62857                      direction="out"
62858                      caller-allocates="0"
62859                      transfer-ownership="full">
62860             <type name="int" c:type="gint*"/>
62861           </parameter>
62862         </parameters>
62863       </virtual-method>
62864       <virtual-method name="invalidate" invoker="invalidate">
62865         <return-value transfer-ownership="none">
62866           <type name="none" c:type="void"/>
62867         </return-value>
62868         <parameters>
62869           <parameter name="start" transfer-ownership="none">
62870             <type name="TextIter" c:type="GtkTextIter*"/>
62871           </parameter>
62872           <parameter name="end" transfer-ownership="none">
62873             <type name="TextIter" c:type="GtkTextIter*"/>
62874           </parameter>
62875         </parameters>
62876       </virtual-method>
62877       <virtual-method name="free_line_data" invoker="free_line_data">
62878         <return-value transfer-ownership="none">
62879           <type name="none" c:type="void"/>
62880         </return-value>
62881         <parameters>
62882           <parameter name="line" transfer-ownership="none">
62883             <type name="TextLine" c:type="GtkTextLine*"/>
62884           </parameter>
62885           <parameter name="line_data" transfer-ownership="none">
62886             <type name="TextLineData" c:type="GtkTextLineData*"/>
62887           </parameter>
62888         </parameters>
62889       </virtual-method>
62890       <virtual-method name="invalidate_cursors" invoker="invalidate_cursors">
62891         <return-value transfer-ownership="none">
62892           <type name="none" c:type="void"/>
62893         </return-value>
62894         <parameters>
62895           <parameter name="start" transfer-ownership="none">
62896             <type name="TextIter" c:type="GtkTextIter*"/>
62897           </parameter>
62898           <parameter name="end" transfer-ownership="none">
62899             <type name="TextIter" c:type="GtkTextIter*"/>
62900           </parameter>
62901         </parameters>
62902       </virtual-method>
62903       <method name="set_buffer" c:identifier="gtk_text_layout_set_buffer">
62904         <return-value transfer-ownership="none">
62905           <type name="none" c:type="void"/>
62906         </return-value>
62907         <parameters>
62908           <parameter name="buffer" transfer-ownership="none" allow-none="1">
62909             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
62910           </parameter>
62911         </parameters>
62912       </method>
62913       <method name="get_buffer" c:identifier="gtk_text_layout_get_buffer">
62914         <doc xml:whitespace="preserve">Gets the text buffer used by the layout. See
62915 gtk_text_layout_set_buffer().</doc>
62916         <return-value transfer-ownership="full">
62917           <doc xml:whitespace="preserve">the text buffer used by the layout.</doc>
62918           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
62919         </return-value>
62920       </method>
62921       <method name="set_default_style"
62922               c:identifier="gtk_text_layout_set_default_style">
62923         <return-value transfer-ownership="none">
62924           <type name="none" c:type="void"/>
62925         </return-value>
62926         <parameters>
62927           <parameter name="values" transfer-ownership="none">
62928             <type name="TextAttributes" c:type="GtkTextAttributes*"/>
62929           </parameter>
62930         </parameters>
62931       </method>
62932       <method name="set_contexts" c:identifier="gtk_text_layout_set_contexts">
62933         <return-value transfer-ownership="none">
62934           <type name="none" c:type="void"/>
62935         </return-value>
62936         <parameters>
62937           <parameter name="ltr_context" transfer-ownership="none">
62938             <type name="Pango.Context" c:type="PangoContext*"/>
62939           </parameter>
62940           <parameter name="rtl_context" transfer-ownership="none">
62941             <type name="Pango.Context" c:type="PangoContext*"/>
62942           </parameter>
62943         </parameters>
62944       </method>
62945       <method name="set_cursor_direction"
62946               c:identifier="gtk_text_layout_set_cursor_direction">
62947         <doc xml:whitespace="preserve">Sets which text directions (left-to-right and/or right-to-left) for
62948 which cursors will be drawn for the insertion point. The visual
62949 point at which new text is inserted depends on whether the new
62950 text is right-to-left or left-to-right, so it may be desired to
62951 make the drawn position of the cursor depend on the keyboard state.</doc>
62952         <return-value transfer-ownership="none">
62953           <type name="none" c:type="void"/>
62954         </return-value>
62955         <parameters>
62956           <parameter name="direction" transfer-ownership="none">
62957             <doc xml:whitespace="preserve">the new direction(s) for which to draw cursors. %GTK_TEXT_DIR_NONE means draw cursors for both left-to-right insertion and right-to-left insertion. (The two cursors will be visually distinguished.)</doc>
62958             <type name="TextDirection" c:type="GtkTextDirection"/>
62959           </parameter>
62960         </parameters>
62961       </method>
62962       <method name="set_overwrite_mode"
62963               c:identifier="gtk_text_layout_set_overwrite_mode">
62964         <doc xml:whitespace="preserve">Sets overwrite mode</doc>
62965         <return-value transfer-ownership="none">
62966           <type name="none" c:type="void"/>
62967         </return-value>
62968         <parameters>
62969           <parameter name="overwrite" transfer-ownership="none">
62970             <doc xml:whitespace="preserve">overwrite mode</doc>
62971             <type name="boolean" c:type="gboolean"/>
62972           </parameter>
62973         </parameters>
62974       </method>
62975       <method name="set_keyboard_direction"
62976               c:identifier="gtk_text_layout_set_keyboard_direction">
62977         <doc xml:whitespace="preserve">Sets the keyboard direction; this is used as for the bidirectional
62978 base direction for the line with the cursor if the line contains
62979 only neutral characters.</doc>
62980         <return-value transfer-ownership="none">
62981           <type name="none" c:type="void"/>
62982         </return-value>
62983         <parameters>
62984           <parameter name="keyboard_dir" transfer-ownership="none">
62985             <doc xml:whitespace="preserve">the current direction of the keyboard.</doc>
62986             <type name="TextDirection" c:type="GtkTextDirection"/>
62987           </parameter>
62988         </parameters>
62989       </method>
62990       <method name="default_style_changed"
62991               c:identifier="gtk_text_layout_default_style_changed">
62992         <return-value transfer-ownership="none">
62993           <type name="none" c:type="void"/>
62994         </return-value>
62995       </method>
62996       <method name="set_screen_width"
62997               c:identifier="gtk_text_layout_set_screen_width">
62998         <return-value transfer-ownership="none">
62999           <type name="none" c:type="void"/>
63000         </return-value>
63001         <parameters>
63002           <parameter name="width" transfer-ownership="none">
63003             <type name="int" c:type="gint"/>
63004           </parameter>
63005         </parameters>
63006       </method>
63007       <method name="set_preedit_string"
63008               c:identifier="gtk_text_layout_set_preedit_string">
63009         <doc xml:whitespace="preserve">Set the preedit string and attributes. The preedit string is a
63010 string showing text that is currently being edited and not
63011 yet committed into the buffer.</doc>
63012         <return-value transfer-ownership="none">
63013           <type name="none" c:type="void"/>
63014         </return-value>
63015         <parameters>
63016           <parameter name="preedit_string" transfer-ownership="none">
63017             <doc xml:whitespace="preserve">a string to display at the insertion point</doc>
63018             <type name="utf8" c:type="gchar*"/>
63019           </parameter>
63020           <parameter name="preedit_attrs" transfer-ownership="none">
63021             <doc xml:whitespace="preserve">a #PangoAttrList of attributes that apply to @preedit_string</doc>
63022             <type name="Pango.AttrList" c:type="PangoAttrList*"/>
63023           </parameter>
63024           <parameter name="cursor_pos" transfer-ownership="none">
63025             <doc xml:whitespace="preserve">position of cursor within preedit string in chars</doc>
63026             <type name="int" c:type="gint"/>
63027           </parameter>
63028         </parameters>
63029       </method>
63030       <method name="set_cursor_visible"
63031               c:identifier="gtk_text_layout_set_cursor_visible">
63032         <doc xml:whitespace="preserve">Sets whether the insertion cursor should be shown. Generally,
63033 widgets using #GtkTextLayout will hide the cursor when the
63034 widget does not have the input focus.</doc>
63035         <return-value transfer-ownership="none">
63036           <type name="none" c:type="void"/>
63037         </return-value>
63038         <parameters>
63039           <parameter name="cursor_visible" transfer-ownership="none">
63040             <doc xml:whitespace="preserve">If %FALSE, then the insertion cursor will not be shown, even if the text is editable.</doc>
63041             <type name="boolean" c:type="gboolean"/>
63042           </parameter>
63043         </parameters>
63044       </method>
63045       <method name="get_cursor_visible"
63046               c:identifier="gtk_text_layout_get_cursor_visible">
63047         <doc xml:whitespace="preserve">Returns whether the insertion cursor will be shown.
63048 shown, even if the text is editable.</doc>
63049         <return-value transfer-ownership="none">
63050           <doc xml:whitespace="preserve">if %FALSE, the insertion cursor will not be</doc>
63051           <type name="boolean" c:type="gboolean"/>
63052         </return-value>
63053       </method>
63054       <method name="get_size" c:identifier="gtk_text_layout_get_size">
63055         <return-value transfer-ownership="none">
63056           <type name="none" c:type="void"/>
63057         </return-value>
63058         <parameters>
63059           <parameter name="width"
63060                      direction="out"
63061                      caller-allocates="0"
63062                      transfer-ownership="full">
63063             <type name="int" c:type="gint*"/>
63064           </parameter>
63065           <parameter name="height"
63066                      direction="out"
63067                      caller-allocates="0"
63068                      transfer-ownership="full">
63069             <type name="int" c:type="gint*"/>
63070           </parameter>
63071         </parameters>
63072       </method>
63073       <method name="get_lines" c:identifier="gtk_text_layout_get_lines">
63074         <return-value transfer-ownership="container">
63075           <type name="GLib.SList" c:type="GSList*">
63076             <type name="TextLine"/>
63077           </type>
63078         </return-value>
63079         <parameters>
63080           <parameter name="top_y" transfer-ownership="none">
63081             <type name="int" c:type="gint"/>
63082           </parameter>
63083           <parameter name="bottom_y" transfer-ownership="none">
63084             <type name="int" c:type="gint"/>
63085           </parameter>
63086           <parameter name="first_line_y"
63087                      direction="out"
63088                      caller-allocates="0"
63089                      transfer-ownership="full">
63090             <type name="int" c:type="gint*"/>
63091           </parameter>
63092         </parameters>
63093       </method>
63094       <method name="wrap_loop_start"
63095               c:identifier="gtk_text_layout_wrap_loop_start">
63096         <return-value transfer-ownership="none">
63097           <type name="none" c:type="void"/>
63098         </return-value>
63099       </method>
63100       <method name="wrap_loop_end"
63101               c:identifier="gtk_text_layout_wrap_loop_end">
63102         <return-value transfer-ownership="none">
63103           <type name="none" c:type="void"/>
63104         </return-value>
63105       </method>
63106       <method name="get_line_display"
63107               c:identifier="gtk_text_layout_get_line_display">
63108         <return-value transfer-ownership="full">
63109           <type name="TextLineDisplay" c:type="GtkTextLineDisplay*"/>
63110         </return-value>
63111         <parameters>
63112           <parameter name="line" transfer-ownership="none">
63113             <type name="TextLine" c:type="GtkTextLine*"/>
63114           </parameter>
63115           <parameter name="size_only" transfer-ownership="none">
63116             <type name="boolean" c:type="gboolean"/>
63117           </parameter>
63118         </parameters>
63119       </method>
63120       <method name="free_line_display"
63121               c:identifier="gtk_text_layout_free_line_display">
63122         <return-value transfer-ownership="none">
63123           <type name="none" c:type="void"/>
63124         </return-value>
63125         <parameters>
63126           <parameter name="display" transfer-ownership="none">
63127             <type name="TextLineDisplay" c:type="GtkTextLineDisplay*"/>
63128           </parameter>
63129         </parameters>
63130       </method>
63131       <method name="get_line_at_y"
63132               c:identifier="gtk_text_layout_get_line_at_y">
63133         <doc xml:whitespace="preserve">Get the iter at the beginning of the line which is displayed
63134 at the given y.</doc>
63135         <return-value transfer-ownership="none">
63136           <type name="none" c:type="void"/>
63137         </return-value>
63138         <parameters>
63139           <parameter name="target_iter" transfer-ownership="none">
63140             <doc xml:whitespace="preserve">the iterator in which the result is stored</doc>
63141             <type name="TextIter" c:type="GtkTextIter*"/>
63142           </parameter>
63143           <parameter name="y" transfer-ownership="none">
63144             <doc xml:whitespace="preserve">the y positition</doc>
63145             <type name="int" c:type="gint"/>
63146           </parameter>
63147           <parameter name="line_top"
63148                      direction="out"
63149                      caller-allocates="0"
63150                      transfer-ownership="full">
63151             <doc xml:whitespace="preserve">location to store the y coordinate of the top of the line. (Can by %NULL)</doc>
63152             <type name="int" c:type="gint*"/>
63153           </parameter>
63154         </parameters>
63155       </method>
63156       <method name="get_iter_at_pixel"
63157               c:identifier="gtk_text_layout_get_iter_at_pixel">
63158         <return-value transfer-ownership="none">
63159           <type name="none" c:type="void"/>
63160         </return-value>
63161         <parameters>
63162           <parameter name="iter" transfer-ownership="none">
63163             <type name="TextIter" c:type="GtkTextIter*"/>
63164           </parameter>
63165           <parameter name="x" transfer-ownership="none">
63166             <type name="int" c:type="gint"/>
63167           </parameter>
63168           <parameter name="y" transfer-ownership="none">
63169             <type name="int" c:type="gint"/>
63170           </parameter>
63171         </parameters>
63172       </method>
63173       <method name="get_iter_at_position"
63174               c:identifier="gtk_text_layout_get_iter_at_position">
63175         <return-value transfer-ownership="none">
63176           <type name="none" c:type="void"/>
63177         </return-value>
63178         <parameters>
63179           <parameter name="iter" transfer-ownership="none">
63180             <type name="TextIter" c:type="GtkTextIter*"/>
63181           </parameter>
63182           <parameter name="trailing"
63183                      direction="out"
63184                      caller-allocates="0"
63185                      transfer-ownership="full">
63186             <type name="int" c:type="gint*"/>
63187           </parameter>
63188           <parameter name="x" transfer-ownership="none">
63189             <type name="int" c:type="gint"/>
63190           </parameter>
63191           <parameter name="y" transfer-ownership="none">
63192             <type name="int" c:type="gint"/>
63193           </parameter>
63194         </parameters>
63195       </method>
63196       <method name="invalidate" c:identifier="gtk_text_layout_invalidate">
63197         <return-value transfer-ownership="none">
63198           <type name="none" c:type="void"/>
63199         </return-value>
63200         <parameters>
63201           <parameter name="start" transfer-ownership="none">
63202             <type name="TextIter" c:type="GtkTextIter*"/>
63203           </parameter>
63204           <parameter name="end" transfer-ownership="none">
63205             <type name="TextIter" c:type="GtkTextIter*"/>
63206           </parameter>
63207         </parameters>
63208       </method>
63209       <method name="invalidate_cursors"
63210               c:identifier="gtk_text_layout_invalidate_cursors">
63211         <return-value transfer-ownership="none">
63212           <type name="none" c:type="void"/>
63213         </return-value>
63214         <parameters>
63215           <parameter name="start" transfer-ownership="none">
63216             <type name="TextIter" c:type="GtkTextIter*"/>
63217           </parameter>
63218           <parameter name="end" transfer-ownership="none">
63219             <type name="TextIter" c:type="GtkTextIter*"/>
63220           </parameter>
63221         </parameters>
63222       </method>
63223       <method name="free_line_data"
63224               c:identifier="gtk_text_layout_free_line_data">
63225         <return-value transfer-ownership="none">
63226           <type name="none" c:type="void"/>
63227         </return-value>
63228         <parameters>
63229           <parameter name="line" transfer-ownership="none">
63230             <type name="TextLine" c:type="GtkTextLine*"/>
63231           </parameter>
63232           <parameter name="line_data" transfer-ownership="none">
63233             <type name="TextLineData" c:type="GtkTextLineData*"/>
63234           </parameter>
63235         </parameters>
63236       </method>
63237       <method name="is_valid" c:identifier="gtk_text_layout_is_valid">
63238         <doc xml:whitespace="preserve">Check if there are any invalid regions in a #GtkTextLayout's buffer</doc>
63239         <return-value transfer-ownership="none">
63240           <doc xml:whitespace="preserve">%TRUE if any invalid regions were found</doc>
63241           <type name="boolean" c:type="gboolean"/>
63242         </return-value>
63243       </method>
63244       <method name="validate_yrange"
63245               c:identifier="gtk_text_layout_validate_yrange">
63246         <doc xml:whitespace="preserve">Ensure that a region of a #GtkTextLayout is valid. The ::changed
63247 signal will be emitted if any lines are validated.</doc>
63248         <return-value transfer-ownership="none">
63249           <type name="none" c:type="void"/>
63250         </return-value>
63251         <parameters>
63252           <parameter name="anchor_line" transfer-ownership="none">
63253             <type name="TextIter" c:type="GtkTextIter*"/>
63254           </parameter>
63255           <parameter name="y0_" transfer-ownership="none">
63256             <doc xml:whitespace="preserve">offset from the top of the line pointed to by @anchor at which to begin validation. (The offset here is in pixels after validation.)</doc>
63257             <type name="int" c:type="gint"/>
63258           </parameter>
63259           <parameter name="y1_" transfer-ownership="none">
63260             <doc xml:whitespace="preserve">offset from the top of the line pointed to by @anchor at which to end validation. (The offset here is in pixels after validation.)</doc>
63261             <type name="int" c:type="gint"/>
63262           </parameter>
63263         </parameters>
63264       </method>
63265       <method name="validate" c:identifier="gtk_text_layout_validate">
63266         <doc xml:whitespace="preserve">Validate regions of a #GtkTextLayout. The ::changed signal will
63267 be emitted for each region validated.</doc>
63268         <return-value transfer-ownership="none">
63269           <type name="none" c:type="void"/>
63270         </return-value>
63271         <parameters>
63272           <parameter name="max_pixels" transfer-ownership="none">
63273             <doc xml:whitespace="preserve">the maximum number of pixels to validate. (No more than one paragraph beyond this limit will be validated)</doc>
63274             <type name="int" c:type="gint"/>
63275           </parameter>
63276         </parameters>
63277       </method>
63278       <method name="wrap" c:identifier="gtk_text_layout_wrap">
63279         <return-value transfer-ownership="full">
63280           <type name="TextLineData" c:type="GtkTextLineData*"/>
63281         </return-value>
63282         <parameters>
63283           <parameter name="line" transfer-ownership="none">
63284             <type name="TextLine" c:type="GtkTextLine*"/>
63285           </parameter>
63286           <parameter name="line_data" transfer-ownership="none">
63287             <type name="TextLineData" c:type="GtkTextLineData*"/>
63288           </parameter>
63289         </parameters>
63290       </method>
63291       <method name="changed" c:identifier="gtk_text_layout_changed">
63292         <return-value transfer-ownership="none">
63293           <type name="none" c:type="void"/>
63294         </return-value>
63295         <parameters>
63296           <parameter name="y" transfer-ownership="none">
63297             <type name="int" c:type="gint"/>
63298           </parameter>
63299           <parameter name="old_height" transfer-ownership="none">
63300             <type name="int" c:type="gint"/>
63301           </parameter>
63302           <parameter name="new_height" transfer-ownership="none">
63303             <type name="int" c:type="gint"/>
63304           </parameter>
63305         </parameters>
63306       </method>
63307       <method name="cursors_changed"
63308               c:identifier="gtk_text_layout_cursors_changed">
63309         <return-value transfer-ownership="none">
63310           <type name="none" c:type="void"/>
63311         </return-value>
63312         <parameters>
63313           <parameter name="y" transfer-ownership="none">
63314             <type name="int" c:type="gint"/>
63315           </parameter>
63316           <parameter name="old_height" transfer-ownership="none">
63317             <type name="int" c:type="gint"/>
63318           </parameter>
63319           <parameter name="new_height" transfer-ownership="none">
63320             <type name="int" c:type="gint"/>
63321           </parameter>
63322         </parameters>
63323       </method>
63324       <method name="get_iter_location"
63325               c:identifier="gtk_text_layout_get_iter_location">
63326         <return-value transfer-ownership="none">
63327           <type name="none" c:type="void"/>
63328         </return-value>
63329         <parameters>
63330           <parameter name="iter" transfer-ownership="none">
63331             <type name="TextIter" c:type="GtkTextIter*"/>
63332           </parameter>
63333           <parameter name="rect" transfer-ownership="none">
63334             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
63335           </parameter>
63336         </parameters>
63337       </method>
63338       <method name="get_line_yrange"
63339               c:identifier="gtk_text_layout_get_line_yrange">
63340         <doc xml:whitespace="preserve">Find the range of y coordinates for the paragraph containing
63341 the given iter.</doc>
63342         <return-value transfer-ownership="none">
63343           <type name="none" c:type="void"/>
63344         </return-value>
63345         <parameters>
63346           <parameter name="iter" transfer-ownership="none">
63347             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
63348             <type name="TextIter" c:type="GtkTextIter*"/>
63349           </parameter>
63350           <parameter name="y"
63351                      direction="out"
63352                      caller-allocates="0"
63353                      transfer-ownership="full">
63354             <doc xml:whitespace="preserve">location to store the top of the paragraph in pixels, or %NULL. or %NULL.</doc>
63355             <type name="int" c:type="gint*"/>
63356           </parameter>
63357           <parameter name="height"
63358                      direction="out"
63359                      caller-allocates="0"
63360                      transfer-ownership="full">
63361             <type name="int" c:type="gint*"/>
63362           </parameter>
63363         </parameters>
63364       </method>
63365       <method name="get_cursor_locations"
63366               c:identifier="gtk_text_layout_get_cursor_locations">
63367         <doc xml:whitespace="preserve">Given an iterator within a text layout, determine the positions of the
63368 strong and weak cursors if the insertion point is at that
63369 iterator. The position of each cursor is stored as a zero-width
63370 rectangle. The strong cursor location is the location where
63371 characters of the directionality equal to the base direction of the
63372 paragraph are inserted.  The weak cursor location is the location
63373 where characters of the directionality opposite to the base
63374 direction of the paragraph are inserted.</doc>
63375         <return-value transfer-ownership="none">
63376           <type name="none" c:type="void"/>
63377         </return-value>
63378         <parameters>
63379           <parameter name="iter" transfer-ownership="none">
63380             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
63381             <type name="TextIter" c:type="GtkTextIter*"/>
63382           </parameter>
63383           <parameter name="strong_pos"
63384                      transfer-ownership="none"
63385                      allow-none="1">
63386             <doc xml:whitespace="preserve">location to store the strong cursor position (may be %NULL)</doc>
63387             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
63388           </parameter>
63389           <parameter name="weak_pos" transfer-ownership="none" allow-none="1">
63390             <doc xml:whitespace="preserve">location to store the weak cursor position (may be %NULL)</doc>
63391             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
63392           </parameter>
63393         </parameters>
63394       </method>
63395       <method name="clamp_iter_to_vrange"
63396               c:identifier="gtk_text_layout_clamp_iter_to_vrange">
63397         <doc xml:whitespace="preserve">If the iterator is not fully in the range @top &lt;= y &lt; @bottom,
63398 then, if possible, move it the minimum distance so that the
63399 iterator in this range.</doc>
63400         <return-value transfer-ownership="none">
63401           <doc xml:whitespace="preserve">%TRUE if the iterator was moved, otherwise %FALSE.</doc>
63402           <type name="boolean" c:type="gboolean"/>
63403         </return-value>
63404         <parameters>
63405           <parameter name="iter" transfer-ownership="none">
63406             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
63407             <type name="TextIter" c:type="GtkTextIter*"/>
63408           </parameter>
63409           <parameter name="top" transfer-ownership="none">
63410             <doc xml:whitespace="preserve">the top of the range</doc>
63411             <type name="int" c:type="gint"/>
63412           </parameter>
63413           <parameter name="bottom" transfer-ownership="none">
63414             <doc xml:whitespace="preserve">the bottom the range</doc>
63415             <type name="int" c:type="gint"/>
63416           </parameter>
63417         </parameters>
63418       </method>
63419       <method name="move_iter_to_line_end"
63420               c:identifier="gtk_text_layout_move_iter_to_line_end">
63421         <doc xml:whitespace="preserve">Move to the beginning or end of a display line.</doc>
63422         <return-value transfer-ownership="none">
63423           <type name="boolean" c:type="gboolean"/>
63424         </return-value>
63425         <parameters>
63426           <parameter name="iter" transfer-ownership="none">
63427             <type name="TextIter" c:type="GtkTextIter*"/>
63428           </parameter>
63429           <parameter name="direction" transfer-ownership="none">
63430             <doc xml:whitespace="preserve">if negative, move to beginning of line, otherwise</doc>
63431             <type name="int" c:type="gint"/>
63432           </parameter>
63433         </parameters>
63434       </method>
63435       <method name="move_iter_to_previous_line"
63436               c:identifier="gtk_text_layout_move_iter_to_previous_line">
63437         <doc xml:whitespace="preserve">Move the iterator to the beginning of the previous line. The lines
63438 of a wrapped paragraph are treated as distinct for this operation.</doc>
63439         <return-value transfer-ownership="none">
63440           <type name="boolean" c:type="gboolean"/>
63441         </return-value>
63442         <parameters>
63443           <parameter name="iter" transfer-ownership="none">
63444             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
63445             <type name="TextIter" c:type="GtkTextIter*"/>
63446           </parameter>
63447         </parameters>
63448       </method>
63449       <method name="move_iter_to_next_line"
63450               c:identifier="gtk_text_layout_move_iter_to_next_line">
63451         <doc xml:whitespace="preserve">Move the iterator to the beginning of the next line. The
63452 lines of a wrapped paragraph are treated as distinct for
63453 this operation.</doc>
63454         <return-value transfer-ownership="none">
63455           <type name="boolean" c:type="gboolean"/>
63456         </return-value>
63457         <parameters>
63458           <parameter name="iter" transfer-ownership="none">
63459             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
63460             <type name="TextIter" c:type="GtkTextIter*"/>
63461           </parameter>
63462         </parameters>
63463       </method>
63464       <method name="move_iter_to_x"
63465               c:identifier="gtk_text_layout_move_iter_to_x">
63466         <doc xml:whitespace="preserve">Keeping the iterator on the same line of the layout, move it to the
63467 specified X coordinate. The lines of a wrapped paragraph are
63468 treated as distinct for this operation.</doc>
63469         <return-value transfer-ownership="none">
63470           <type name="none" c:type="void"/>
63471         </return-value>
63472         <parameters>
63473           <parameter name="iter" transfer-ownership="none">
63474             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
63475             <type name="TextIter" c:type="GtkTextIter*"/>
63476           </parameter>
63477           <parameter name="x" transfer-ownership="none">
63478             <doc xml:whitespace="preserve">X coordinate</doc>
63479             <type name="int" c:type="gint"/>
63480           </parameter>
63481         </parameters>
63482       </method>
63483       <method name="move_iter_visually"
63484               c:identifier="gtk_text_layout_move_iter_visually">
63485         <doc xml:whitespace="preserve">Move the iterator a given number of characters visually, treating
63486 it as the strong cursor position. If @count is positive, then the
63487 new strong cursor position will be @count positions to the right of
63488 the old cursor position. If @count is negative then the new strong
63489 cursor position will be @count positions to the left of the old
63490 cursor position.
63491 In the presence of bidirection text, the correspondence
63492 between logical and visual order will depend on the direction
63493 of the current run, and there may be jumps when the cursor
63494 is moved off of the end of a run.</doc>
63495         <return-value transfer-ownership="none">
63496           <type name="boolean" c:type="gboolean"/>
63497         </return-value>
63498         <parameters>
63499           <parameter name="iter" transfer-ownership="none">
63500             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
63501             <type name="TextIter" c:type="GtkTextIter*"/>
63502           </parameter>
63503           <parameter name="count" transfer-ownership="none">
63504             <doc xml:whitespace="preserve">number of characters to move (negative moves left, positive moves right)</doc>
63505             <type name="int" c:type="gint"/>
63506           </parameter>
63507         </parameters>
63508       </method>
63509       <method name="iter_starts_line"
63510               c:identifier="gtk_text_layout_iter_starts_line">
63511         <doc xml:whitespace="preserve">Tests whether an iterator is at the start of a display line.</doc>
63512         <return-value transfer-ownership="none">
63513           <type name="boolean" c:type="gboolean"/>
63514         </return-value>
63515         <parameters>
63516           <parameter name="iter" transfer-ownership="none">
63517             <doc xml:whitespace="preserve">iterator to test</doc>
63518             <type name="TextIter" c:type="GtkTextIter*"/>
63519           </parameter>
63520         </parameters>
63521       </method>
63522       <method name="get_iter_at_line"
63523               c:identifier="gtk_text_layout_get_iter_at_line">
63524         <return-value transfer-ownership="none">
63525           <type name="none" c:type="void"/>
63526         </return-value>
63527         <parameters>
63528           <parameter name="iter" transfer-ownership="none">
63529             <type name="TextIter" c:type="GtkTextIter*"/>
63530           </parameter>
63531           <parameter name="line" transfer-ownership="none">
63532             <type name="TextLine" c:type="GtkTextLine*"/>
63533           </parameter>
63534           <parameter name="byte_offset" transfer-ownership="none">
63535             <type name="int" c:type="gint"/>
63536           </parameter>
63537         </parameters>
63538       </method>
63539       <method name="spew" c:identifier="gtk_text_layout_spew">
63540         <return-value transfer-ownership="none">
63541           <type name="none" c:type="void"/>
63542         </return-value>
63543       </method>
63544       <method name="draw"
63545               c:identifier="gtk_text_layout_draw"
63546               introspectable="0">
63547         <return-value transfer-ownership="none">
63548           <type name="none" c:type="void"/>
63549         </return-value>
63550         <parameters>
63551           <parameter name="widget" transfer-ownership="none">
63552             <type name="Widget" c:type="GtkWidget*"/>
63553           </parameter>
63554           <parameter name="drawable" transfer-ownership="none">
63555             <type name="Gdk.Drawable" c:type="GdkDrawable*"/>
63556           </parameter>
63557           <parameter name="cursor_gc" transfer-ownership="none">
63558             <type name="Gdk.GC" c:type="GdkGC*"/>
63559           </parameter>
63560           <parameter name="x_offset" transfer-ownership="none">
63561             <type name="int" c:type="gint"/>
63562           </parameter>
63563           <parameter name="y_offset" transfer-ownership="none">
63564             <type name="int" c:type="gint"/>
63565           </parameter>
63566           <parameter name="x" transfer-ownership="none">
63567             <type name="int" c:type="gint"/>
63568           </parameter>
63569           <parameter name="y" transfer-ownership="none">
63570             <type name="int" c:type="gint"/>
63571           </parameter>
63572           <parameter name="width" transfer-ownership="none">
63573             <type name="int" c:type="gint"/>
63574           </parameter>
63575           <parameter name="height" transfer-ownership="none">
63576             <type name="int" c:type="gint"/>
63577           </parameter>
63578           <parameter name="widgets" transfer-ownership="none">
63579             <type name="GLib.List" c:type="GList**">
63580               <type name="any" c:type="gpointer"/>
63581             </type>
63582           </parameter>
63583         </parameters>
63584       </method>
63585       <field name="parent_instance">
63586         <type name="GObject.Object" c:type="GObject"/>
63587       </field>
63588       <field name="screen_width">
63589         <type name="int" c:type="gint"/>
63590       </field>
63591       <field name="width">
63592         <type name="int" c:type="gint"/>
63593       </field>
63594       <field name="height">
63595         <type name="int" c:type="gint"/>
63596       </field>
63597       <field name="buffer">
63598         <type name="TextBuffer" c:type="GtkTextBuffer*"/>
63599       </field>
63600       <field name="default_style">
63601         <type name="TextAttributes" c:type="GtkTextAttributes*"/>
63602       </field>
63603       <field name="ltr_context">
63604         <type name="Pango.Context" c:type="PangoContext*"/>
63605       </field>
63606       <field name="rtl_context">
63607         <type name="Pango.Context" c:type="PangoContext*"/>
63608       </field>
63609       <field name="one_style_cache">
63610         <type name="TextAttributes" c:type="GtkTextAttributes*"/>
63611       </field>
63612       <field name="one_display_cache">
63613         <type name="TextLineDisplay" c:type="GtkTextLineDisplay*"/>
63614       </field>
63615       <field name="wrap_loop_count">
63616         <type name="int" c:type="gint"/>
63617       </field>
63618       <field name="cursor_visible" bits="1">
63619         <type name="uint" c:type="guint"/>
63620       </field>
63621       <field name="cursor_direction" bits="2">
63622         <type name="uint" c:type="guint"/>
63623       </field>
63624       <field name="keyboard_direction" bits="2">
63625         <type name="uint" c:type="guint"/>
63626       </field>
63627       <field name="preedit_string">
63628         <type name="utf8" c:type="gchar*"/>
63629       </field>
63630       <field name="preedit_attrs">
63631         <type name="Pango.AttrList" c:type="PangoAttrList*"/>
63632       </field>
63633       <field name="preedit_len">
63634         <type name="int" c:type="gint"/>
63635       </field>
63636       <field name="preedit_cursor">
63637         <type name="int" c:type="gint"/>
63638       </field>
63639       <field name="overwrite_mode" bits="1">
63640         <type name="uint" c:type="guint"/>
63641       </field>
63642       <glib:signal name="allocate-child">
63643         <return-value transfer-ownership="full">
63644           <type name="none" c:type="void"/>
63645         </return-value>
63646         <parameters>
63647           <parameter name="object" transfer-ownership="none">
63648             <type name="Object" c:type="GtkObject"/>
63649           </parameter>
63650           <parameter name="p0" transfer-ownership="none">
63651             <type name="int" c:type="gint"/>
63652           </parameter>
63653           <parameter name="p1" transfer-ownership="none">
63654             <type name="int" c:type="gint"/>
63655           </parameter>
63656         </parameters>
63657       </glib:signal>
63658       <glib:signal name="changed">
63659         <return-value transfer-ownership="full">
63660           <type name="none" c:type="void"/>
63661         </return-value>
63662         <parameters>
63663           <parameter name="object" transfer-ownership="none">
63664             <type name="int" c:type="gint"/>
63665           </parameter>
63666           <parameter name="p0" transfer-ownership="none">
63667             <type name="int" c:type="gint"/>
63668           </parameter>
63669           <parameter name="p1" transfer-ownership="none">
63670             <type name="int" c:type="gint"/>
63671           </parameter>
63672         </parameters>
63673       </glib:signal>
63674       <glib:signal name="invalidated">
63675         <return-value transfer-ownership="full">
63676           <type name="none" c:type="void"/>
63677         </return-value>
63678       </glib:signal>
63679     </class>
63680     <record name="TextLayoutClass"
63681             c:type="GtkTextLayoutClass"
63682             glib:is-gtype-struct-for="TextLayout">
63683       <field name="parent_class">
63684         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
63685       </field>
63686       <field name="invalidated">
63687         <callback name="invalidated" c:type="invalidated">
63688           <return-value transfer-ownership="none">
63689             <type name="none" c:type="void"/>
63690           </return-value>
63691           <parameters>
63692             <parameter name="layout" transfer-ownership="none">
63693               <type name="TextLayout" c:type="GtkTextLayout*"/>
63694             </parameter>
63695           </parameters>
63696         </callback>
63697       </field>
63698       <field name="changed">
63699         <callback name="changed" c:type="changed">
63700           <return-value transfer-ownership="none">
63701             <type name="none" c:type="void"/>
63702           </return-value>
63703           <parameters>
63704             <parameter name="layout" transfer-ownership="none">
63705               <type name="TextLayout" c:type="GtkTextLayout*"/>
63706             </parameter>
63707             <parameter name="y" transfer-ownership="none">
63708               <type name="int" c:type="gint"/>
63709             </parameter>
63710             <parameter name="old_height" transfer-ownership="none">
63711               <type name="int" c:type="gint"/>
63712             </parameter>
63713             <parameter name="new_height" transfer-ownership="none">
63714               <type name="int" c:type="gint"/>
63715             </parameter>
63716           </parameters>
63717         </callback>
63718       </field>
63719       <field name="wrap">
63720         <callback name="wrap" c:type="wrap">
63721           <return-value transfer-ownership="full">
63722             <type name="TextLineData" c:type="GtkTextLineData*"/>
63723           </return-value>
63724           <parameters>
63725             <parameter name="layout" transfer-ownership="none">
63726               <type name="TextLayout" c:type="GtkTextLayout*"/>
63727             </parameter>
63728             <parameter name="line" transfer-ownership="none">
63729               <type name="TextLine" c:type="GtkTextLine*"/>
63730             </parameter>
63731             <parameter name="line_data" transfer-ownership="none">
63732               <type name="TextLineData" c:type="GtkTextLineData*"/>
63733             </parameter>
63734           </parameters>
63735         </callback>
63736       </field>
63737       <field name="get_log_attrs">
63738         <callback name="get_log_attrs" c:type="get_log_attrs">
63739           <return-value transfer-ownership="none">
63740             <type name="none" c:type="void"/>
63741           </return-value>
63742           <parameters>
63743             <parameter name="layout" transfer-ownership="none">
63744               <type name="TextLayout" c:type="GtkTextLayout*"/>
63745             </parameter>
63746             <parameter name="line" transfer-ownership="none">
63747               <type name="TextLine" c:type="GtkTextLine*"/>
63748             </parameter>
63749             <parameter name="attrs" transfer-ownership="none">
63750               <type name="Pango.LogAttr" c:type="PangoLogAttr**"/>
63751             </parameter>
63752             <parameter name="n_attrs"
63753                        direction="out"
63754                        caller-allocates="0"
63755                        transfer-ownership="full">
63756               <type name="int" c:type="gint*"/>
63757             </parameter>
63758           </parameters>
63759         </callback>
63760       </field>
63761       <field name="invalidate">
63762         <callback name="invalidate" c:type="invalidate">
63763           <return-value transfer-ownership="none">
63764             <type name="none" c:type="void"/>
63765           </return-value>
63766           <parameters>
63767             <parameter name="layout" transfer-ownership="none">
63768               <type name="TextLayout" c:type="GtkTextLayout*"/>
63769             </parameter>
63770             <parameter name="start" transfer-ownership="none">
63771               <type name="TextIter" c:type="GtkTextIter*"/>
63772             </parameter>
63773             <parameter name="end" transfer-ownership="none">
63774               <type name="TextIter" c:type="GtkTextIter*"/>
63775             </parameter>
63776           </parameters>
63777         </callback>
63778       </field>
63779       <field name="free_line_data">
63780         <callback name="free_line_data" c:type="free_line_data">
63781           <return-value transfer-ownership="none">
63782             <type name="none" c:type="void"/>
63783           </return-value>
63784           <parameters>
63785             <parameter name="layout" transfer-ownership="none">
63786               <type name="TextLayout" c:type="GtkTextLayout*"/>
63787             </parameter>
63788             <parameter name="line" transfer-ownership="none">
63789               <type name="TextLine" c:type="GtkTextLine*"/>
63790             </parameter>
63791             <parameter name="line_data" transfer-ownership="none">
63792               <type name="TextLineData" c:type="GtkTextLineData*"/>
63793             </parameter>
63794           </parameters>
63795         </callback>
63796       </field>
63797       <field name="allocate_child">
63798         <callback name="allocate_child" c:type="allocate_child">
63799           <return-value transfer-ownership="none">
63800             <type name="none" c:type="void"/>
63801           </return-value>
63802           <parameters>
63803             <parameter name="layout" transfer-ownership="none">
63804               <type name="TextLayout" c:type="GtkTextLayout*"/>
63805             </parameter>
63806             <parameter name="child" transfer-ownership="none">
63807               <type name="Widget" c:type="GtkWidget*"/>
63808             </parameter>
63809             <parameter name="x" transfer-ownership="none">
63810               <type name="int" c:type="gint"/>
63811             </parameter>
63812             <parameter name="y" transfer-ownership="none">
63813               <type name="int" c:type="gint"/>
63814             </parameter>
63815           </parameters>
63816         </callback>
63817       </field>
63818       <field name="invalidate_cursors">
63819         <callback name="invalidate_cursors" c:type="invalidate_cursors">
63820           <return-value transfer-ownership="none">
63821             <type name="none" c:type="void"/>
63822           </return-value>
63823           <parameters>
63824             <parameter name="layout" transfer-ownership="none">
63825               <type name="TextLayout" c:type="GtkTextLayout*"/>
63826             </parameter>
63827             <parameter name="start" transfer-ownership="none">
63828               <type name="TextIter" c:type="GtkTextIter*"/>
63829             </parameter>
63830             <parameter name="end" transfer-ownership="none">
63831               <type name="TextIter" c:type="GtkTextIter*"/>
63832             </parameter>
63833           </parameters>
63834         </callback>
63835       </field>
63836       <field name="gtk_reserved1">
63837         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
63838           <return-value transfer-ownership="none">
63839             <type name="none" c:type="void"/>
63840           </return-value>
63841         </callback>
63842       </field>
63843       <field name="gtk_reserved2">
63844         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
63845           <return-value transfer-ownership="none">
63846             <type name="none" c:type="void"/>
63847           </return-value>
63848         </callback>
63849       </field>
63850       <field name="gtk_reserved3">
63851         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
63852           <return-value transfer-ownership="none">
63853             <type name="none" c:type="void"/>
63854           </return-value>
63855         </callback>
63856       </field>
63857     </record>
63858     <record name="TextLine" c:type="GtkTextLine">
63859     </record>
63860     <record name="TextLineData" c:type="GtkTextLineData">
63861     </record>
63862     <record name="TextLineDisplay" c:type="GtkTextLineDisplay">
63863       <field name="layout" writable="1">
63864         <type name="Pango.Layout" c:type="PangoLayout*"/>
63865       </field>
63866       <field name="cursors" writable="1">
63867         <type name="GLib.SList" c:type="GSList*">
63868           <type name="any" c:type="gpointer"/>
63869         </type>
63870       </field>
63871       <field name="shaped_objects" writable="1">
63872         <type name="GLib.SList" c:type="GSList*">
63873           <type name="any" c:type="gpointer"/>
63874         </type>
63875       </field>
63876       <field name="direction" writable="1">
63877         <type name="TextDirection" c:type="GtkTextDirection"/>
63878       </field>
63879       <field name="width" writable="1">
63880         <type name="int" c:type="gint"/>
63881       </field>
63882       <field name="total_width" writable="1">
63883         <type name="int" c:type="gint"/>
63884       </field>
63885       <field name="height" writable="1">
63886         <type name="int" c:type="gint"/>
63887       </field>
63888       <field name="x_offset" writable="1">
63889         <type name="int" c:type="gint"/>
63890       </field>
63891       <field name="left_margin" writable="1">
63892         <type name="int" c:type="gint"/>
63893       </field>
63894       <field name="right_margin" writable="1">
63895         <type name="int" c:type="gint"/>
63896       </field>
63897       <field name="top_margin" writable="1">
63898         <type name="int" c:type="gint"/>
63899       </field>
63900       <field name="bottom_margin" writable="1">
63901         <type name="int" c:type="gint"/>
63902       </field>
63903       <field name="insert_index" writable="1">
63904         <type name="int" c:type="gint"/>
63905       </field>
63906       <field name="size_only" writable="1">
63907         <type name="boolean" c:type="gboolean"/>
63908       </field>
63909       <field name="line" writable="1">
63910         <type name="TextLine" c:type="GtkTextLine*"/>
63911       </field>
63912       <field name="pg_bg_color" writable="1">
63913         <type name="Gdk.Color" c:type="GdkColor*"/>
63914       </field>
63915       <field name="block_cursor" writable="1">
63916         <type name="Gdk.Rectangle" c:type="GdkRectangle"/>
63917       </field>
63918       <field name="cursors_invalid" writable="1" bits="1">
63919         <type name="uint" c:type="guint"/>
63920       </field>
63921       <field name="has_block_cursor" writable="1" bits="1">
63922         <type name="uint" c:type="guint"/>
63923       </field>
63924       <field name="cursor_at_line_end" writable="1" bits="1">
63925         <type name="uint" c:type="guint"/>
63926       </field>
63927     </record>
63928     <record name="TextLogAttrCache" c:type="GtkTextLogAttrCache">
63929     </record>
63930     <class name="TextMark"
63931            c:type="GtkTextMark"
63932            parent="GObject.Object"
63933            glib:type-name="GtkTextMark"
63934            glib:get-type="gtk_text_mark_get_type"
63935            glib:type-struct="TextMarkClass">
63936       <constructor name="new" c:identifier="gtk_text_mark_new" version="2.12">
63937         <doc xml:whitespace="preserve">Creates a text mark. Add it to a buffer using gtk_text_buffer_add_mark().
63938 If @name is %NULL, the mark is anonymous; otherwise, the mark can be 
63939 retrieved by name using gtk_text_buffer_get_mark(). If a mark has left 
63940 gravity, and text is inserted at the mark's current location, the mark 
63941 will be moved to the left of the newly-inserted text. If the mark has 
63942 right gravity (@left_gravity = %FALSE), the mark will end up on the 
63943 right of newly-inserted text. The standard left-to-right cursor is a 
63944 mark with right gravity (when you type, the cursor stays on the right
63945 side of the text you're typing).</doc>
63946         <return-value transfer-ownership="full">
63947           <doc xml:whitespace="preserve">new #GtkTextMark</doc>
63948           <type name="TextMark" c:type="GtkTextMark*"/>
63949         </return-value>
63950         <parameters>
63951           <parameter name="name" transfer-ownership="none" allow-none="1">
63952             <doc xml:whitespace="preserve">mark name or %NULL</doc>
63953             <type name="utf8" c:type="gchar*"/>
63954           </parameter>
63955           <parameter name="left_gravity" transfer-ownership="none">
63956             <doc xml:whitespace="preserve">whether the mark should have left gravity</doc>
63957             <type name="boolean" c:type="gboolean"/>
63958           </parameter>
63959         </parameters>
63960       </constructor>
63961       <method name="set_visible" c:identifier="gtk_text_mark_set_visible">
63962         <doc xml:whitespace="preserve">Sets the visibility of @mark; the insertion point is normally
63963 visible, i.e. you can see it as a vertical bar. Also, the text
63964 widget uses a visible mark to indicate where a drop will occur when
63965 dragging-and-dropping text. Most other marks are not visible.
63966 Marks are not visible by default.</doc>
63967         <return-value transfer-ownership="none">
63968           <type name="none" c:type="void"/>
63969         </return-value>
63970         <parameters>
63971           <parameter name="setting" transfer-ownership="none">
63972             <doc xml:whitespace="preserve">visibility of mark</doc>
63973             <type name="boolean" c:type="gboolean"/>
63974           </parameter>
63975         </parameters>
63976       </method>
63977       <method name="get_visible" c:identifier="gtk_text_mark_get_visible">
63978         <doc xml:whitespace="preserve">Returns %TRUE if the mark is visible (i.e. a cursor is displayed
63979 for it).</doc>
63980         <return-value transfer-ownership="none">
63981           <doc xml:whitespace="preserve">%TRUE if visible</doc>
63982           <type name="boolean" c:type="gboolean"/>
63983         </return-value>
63984       </method>
63985       <method name="get_name" c:identifier="gtk_text_mark_get_name">
63986         <doc xml:whitespace="preserve">Returns the mark name; returns NULL for anonymous marks.</doc>
63987         <return-value transfer-ownership="none">
63988           <doc xml:whitespace="preserve">mark name</doc>
63989           <type name="utf8" c:type="gchar*"/>
63990         </return-value>
63991       </method>
63992       <method name="get_deleted" c:identifier="gtk_text_mark_get_deleted">
63993         <doc xml:whitespace="preserve">Returns %TRUE if the mark has been removed from its buffer
63994 with gtk_text_buffer_delete_mark(). See gtk_text_buffer_add_mark()
63995 for a way to add it to a buffer again.</doc>
63996         <return-value transfer-ownership="none">
63997           <doc xml:whitespace="preserve">whether the mark is deleted</doc>
63998           <type name="boolean" c:type="gboolean"/>
63999         </return-value>
64000       </method>
64001       <method name="get_buffer" c:identifier="gtk_text_mark_get_buffer">
64002         <doc xml:whitespace="preserve">Gets the buffer this mark is located inside,
64003 or %NULL if the mark is deleted.</doc>
64004         <return-value transfer-ownership="none">
64005           <doc xml:whitespace="preserve">the mark's #GtkTextBuffer</doc>
64006           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
64007         </return-value>
64008       </method>
64009       <method name="get_left_gravity"
64010               c:identifier="gtk_text_mark_get_left_gravity">
64011         <doc xml:whitespace="preserve">Determines whether the mark has left gravity.</doc>
64012         <return-value transfer-ownership="none">
64013           <doc xml:whitespace="preserve">%TRUE if the mark has left gravity, %FALSE otherwise</doc>
64014           <type name="boolean" c:type="gboolean"/>
64015         </return-value>
64016       </method>
64017       <property name="left-gravity"
64018                 writable="1"
64019                 construct-only="1"
64020                 transfer-ownership="none">
64021         <type name="boolean" c:type="gboolean"/>
64022       </property>
64023       <property name="name"
64024                 writable="1"
64025                 construct-only="1"
64026                 transfer-ownership="none">
64027         <type name="utf8" c:type="gchararray"/>
64028       </property>
64029       <field name="parent_instance">
64030         <type name="GObject.Object" c:type="GObject"/>
64031       </field>
64032       <field name="segment">
64033         <type name="any" c:type="gpointer"/>
64034       </field>
64035     </class>
64036     <record name="TextMarkClass"
64037             c:type="GtkTextMarkClass"
64038             glib:is-gtype-struct-for="TextMark">
64039       <field name="parent_class">
64040         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
64041       </field>
64042       <field name="gtk_reserved1">
64043         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
64044           <return-value transfer-ownership="none">
64045             <type name="none" c:type="void"/>
64046           </return-value>
64047         </callback>
64048       </field>
64049       <field name="gtk_reserved2">
64050         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
64051           <return-value transfer-ownership="none">
64052             <type name="none" c:type="void"/>
64053           </return-value>
64054         </callback>
64055       </field>
64056       <field name="gtk_reserved3">
64057         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
64058           <return-value transfer-ownership="none">
64059             <type name="none" c:type="void"/>
64060           </return-value>
64061         </callback>
64062       </field>
64063       <field name="gtk_reserved4">
64064         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
64065           <return-value transfer-ownership="none">
64066             <type name="none" c:type="void"/>
64067           </return-value>
64068         </callback>
64069       </field>
64070     </record>
64071     <record name="TextPendingScroll" c:type="GtkTextPendingScroll">
64072     </record>
64073     <bitfield name="TextSearchFlags"
64074               glib:type-name="GtkTextSearchFlags"
64075               glib:get-type="gtk_text_search_flags_get_type"
64076               c:type="GtkTextSearchFlags">
64077       <member name="visible_only"
64078               value="1"
64079               c:identifier="GTK_TEXT_SEARCH_VISIBLE_ONLY"
64080               glib:nick="visible-only"/>
64081       <member name="text_only"
64082               value="2"
64083               c:identifier="GTK_TEXT_SEARCH_TEXT_ONLY"
64084               glib:nick="text-only"/>
64085     </bitfield>
64086     <class name="TextTag"
64087            c:type="GtkTextTag"
64088            parent="GObject.Object"
64089            glib:type-name="GtkTextTag"
64090            glib:get-type="gtk_text_tag_get_type"
64091            glib:type-struct="TextTagClass">
64092       <constructor name="new" c:identifier="gtk_text_tag_new">
64093         <doc xml:whitespace="preserve">Creates a #GtkTextTag. Configure the tag using object arguments,
64094 i.e. using g_object_set().</doc>
64095         <return-value transfer-ownership="full">
64096           <doc xml:whitespace="preserve">a new #GtkTextTag</doc>
64097           <type name="TextTag" c:type="GtkTextTag*"/>
64098         </return-value>
64099         <parameters>
64100           <parameter name="name" transfer-ownership="none" allow-none="1">
64101             <doc xml:whitespace="preserve">tag name, or %NULL</doc>
64102             <type name="utf8" c:type="gchar*"/>
64103           </parameter>
64104         </parameters>
64105       </constructor>
64106       <method name="get_priority" c:identifier="gtk_text_tag_get_priority">
64107         <doc xml:whitespace="preserve">Get the tag priority.</doc>
64108         <return-value transfer-ownership="none">
64109           <doc xml:whitespace="preserve">The tag's priority.</doc>
64110           <type name="int" c:type="gint"/>
64111         </return-value>
64112       </method>
64113       <method name="set_priority" c:identifier="gtk_text_tag_set_priority">
64114         <doc xml:whitespace="preserve">Sets the priority of a #GtkTextTag. Valid priorities are
64115 start at 0 and go to one less than gtk_text_tag_table_get_size().
64116 Each tag in a table has a unique priority; setting the priority
64117 of one tag shifts the priorities of all the other tags in the
64118 table to maintain a unique priority for each tag. Higher priority
64119 tags "win" if two tags both set the same text attribute. When adding
64120 a tag to a tag table, it will be assigned the highest priority in
64121 the table by default; so normally the precedence of a set of tags
64122 is the order in which they were added to the table, or created with
64123 gtk_text_buffer_create_tag(), which adds the tag to the buffer's table
64124 automatically.</doc>
64125         <return-value transfer-ownership="none">
64126           <type name="none" c:type="void"/>
64127         </return-value>
64128         <parameters>
64129           <parameter name="priority" transfer-ownership="none">
64130             <doc xml:whitespace="preserve">the new priority</doc>
64131             <type name="int" c:type="gint"/>
64132           </parameter>
64133         </parameters>
64134       </method>
64135       <method name="event" c:identifier="gtk_text_tag_event">
64136         <doc xml:whitespace="preserve">Emits the "event" signal on the #GtkTextTag.</doc>
64137         <return-value transfer-ownership="none">
64138           <doc xml:whitespace="preserve">result of signal emission (whether the event was handled)</doc>
64139           <type name="boolean" c:type="gboolean"/>
64140         </return-value>
64141         <parameters>
64142           <parameter name="event_object" transfer-ownership="none">
64143             <doc xml:whitespace="preserve">object that received the event, such as a widget</doc>
64144             <type name="GObject.Object" c:type="GObject*"/>
64145           </parameter>
64146           <parameter name="event" transfer-ownership="none">
64147             <doc xml:whitespace="preserve">the event</doc>
64148             <type name="Gdk.Event" c:type="GdkEvent*"/>
64149           </parameter>
64150           <parameter name="iter" transfer-ownership="none">
64151             <doc xml:whitespace="preserve">location where the event was received</doc>
64152             <type name="TextIter" c:type="GtkTextIter*"/>
64153           </parameter>
64154         </parameters>
64155       </method>
64156       <property name="accumulative-margin"
64157                 version="2.12"
64158                 writable="1"
64159                 transfer-ownership="none">
64160         <doc xml:whitespace="preserve">Whether the margins accumulate or override each other.
64161 When set to %TRUE the margins of this tag are added to the margins 
64162 of any other non-accumulative margins present. When set to %FALSE 
64163 the margins override one another (the default).</doc>
64164         <type name="boolean" c:type="gboolean"/>
64165       </property>
64166       <property name="background"
64167                 readable="0"
64168                 writable="1"
64169                 transfer-ownership="none">
64170         <type name="utf8" c:type="gchararray"/>
64171       </property>
64172       <property name="background-full-height"
64173                 writable="1"
64174                 transfer-ownership="none">
64175         <type name="boolean" c:type="gboolean"/>
64176       </property>
64177       <property name="background-full-height-set"
64178                 writable="1"
64179                 transfer-ownership="none">
64180         <type name="boolean" c:type="gboolean"/>
64181       </property>
64182       <property name="background-gdk" writable="1" transfer-ownership="none">
64183         <type name="Gdk.Color" c:type="GdkColor"/>
64184       </property>
64185       <property name="background-set" writable="1" transfer-ownership="none">
64186         <type name="boolean" c:type="gboolean"/>
64187       </property>
64188       <property name="background-stipple"
64189                 writable="1"
64190                 transfer-ownership="none">
64191         <type name="Gdk.Pixmap" c:type="GdkPixmap"/>
64192       </property>
64193       <property name="background-stipple-set"
64194                 writable="1"
64195                 transfer-ownership="none">
64196         <type name="boolean" c:type="gboolean"/>
64197       </property>
64198       <property name="direction" writable="1" transfer-ownership="none">
64199         <type name="TextDirection" c:type="GtkTextDirection"/>
64200       </property>
64201       <property name="editable" writable="1" transfer-ownership="none">
64202         <type name="boolean" c:type="gboolean"/>
64203       </property>
64204       <property name="editable-set" writable="1" transfer-ownership="none">
64205         <type name="boolean" c:type="gboolean"/>
64206       </property>
64207       <property name="family" writable="1" transfer-ownership="none">
64208         <type name="utf8" c:type="gchararray"/>
64209       </property>
64210       <property name="family-set" writable="1" transfer-ownership="none">
64211         <type name="boolean" c:type="gboolean"/>
64212       </property>
64213       <property name="font" writable="1" transfer-ownership="none">
64214         <doc xml:whitespace="preserve">Font description as string, e.g. \"Sans Italic 12\". 
64215 Note that the initial value of this property depends on
64216 the internals of #PangoFontDescription.</doc>
64217         <type name="utf8" c:type="gchararray"/>
64218       </property>
64219       <property name="font-desc" writable="1" transfer-ownership="none">
64220         <type name="Pango.FontDescription" c:type="PangoFontDescription"/>
64221       </property>
64222       <property name="foreground"
64223                 readable="0"
64224                 writable="1"
64225                 transfer-ownership="none">
64226         <type name="utf8" c:type="gchararray"/>
64227       </property>
64228       <property name="foreground-gdk" writable="1" transfer-ownership="none">
64229         <type name="Gdk.Color" c:type="GdkColor"/>
64230       </property>
64231       <property name="foreground-set" writable="1" transfer-ownership="none">
64232         <type name="boolean" c:type="gboolean"/>
64233       </property>
64234       <property name="foreground-stipple"
64235                 writable="1"
64236                 transfer-ownership="none">
64237         <type name="Gdk.Pixmap" c:type="GdkPixmap"/>
64238       </property>
64239       <property name="foreground-stipple-set"
64240                 writable="1"
64241                 transfer-ownership="none">
64242         <type name="boolean" c:type="gboolean"/>
64243       </property>
64244       <property name="indent" writable="1" transfer-ownership="none">
64245         <type name="int" c:type="gint"/>
64246       </property>
64247       <property name="indent-set" writable="1" transfer-ownership="none">
64248         <type name="boolean" c:type="gboolean"/>
64249       </property>
64250       <property name="invisible"
64251                 version="2.8"
64252                 writable="1"
64253                 transfer-ownership="none">
64254         <doc xml:whitespace="preserve">Whether this text is hidden.
64255 Note that there may still be problems with the support for invisible 
64256 text, in particular when navigating programmatically inside a buffer
64257 containing invisible segments.</doc>
64258         <type name="boolean" c:type="gboolean"/>
64259       </property>
64260       <property name="invisible-set" writable="1" transfer-ownership="none">
64261         <type name="boolean" c:type="gboolean"/>
64262       </property>
64263       <property name="justification" writable="1" transfer-ownership="none">
64264         <type name="Justification" c:type="GtkJustification"/>
64265       </property>
64266       <property name="justification-set"
64267                 writable="1"
64268                 transfer-ownership="none">
64269         <type name="boolean" c:type="gboolean"/>
64270       </property>
64271       <property name="language" writable="1" transfer-ownership="none">
64272         <doc xml:whitespace="preserve">The language this text is in, as an ISO code. Pango can use this as a 
64273 hint when rendering the text. If not set, an appropriate default will be 
64274 used.
64275 Note that the initial value of this property depends on the current
64276 locale, see also gtk_get_default_language().</doc>
64277         <type name="utf8" c:type="gchararray"/>
64278       </property>
64279       <property name="language-set" writable="1" transfer-ownership="none">
64280         <type name="boolean" c:type="gboolean"/>
64281       </property>
64282       <property name="left-margin" writable="1" transfer-ownership="none">
64283         <type name="int" c:type="gint"/>
64284       </property>
64285       <property name="left-margin-set" writable="1" transfer-ownership="none">
64286         <type name="boolean" c:type="gboolean"/>
64287       </property>
64288       <property name="name"
64289                 writable="1"
64290                 construct-only="1"
64291                 transfer-ownership="none">
64292         <type name="utf8" c:type="gchararray"/>
64293       </property>
64294       <property name="paragraph-background"
64295                 version="2.8"
64296                 readable="0"
64297                 writable="1"
64298                 transfer-ownership="none">
64299         <doc xml:whitespace="preserve">The paragraph background color as a string.</doc>
64300         <type name="utf8" c:type="gchararray"/>
64301       </property>
64302       <property name="paragraph-background-gdk"
64303                 version="2.8"
64304                 writable="1"
64305                 transfer-ownership="none">
64306         <doc xml:whitespace="preserve">The paragraph background color as a as a (possibly unallocated) 
64307 #GdkColor.</doc>
64308         <type name="Gdk.Color" c:type="GdkColor"/>
64309       </property>
64310       <property name="paragraph-background-set"
64311                 writable="1"
64312                 transfer-ownership="none">
64313         <type name="boolean" c:type="gboolean"/>
64314       </property>
64315       <property name="pixels-above-lines"
64316                 writable="1"
64317                 transfer-ownership="none">
64318         <type name="int" c:type="gint"/>
64319       </property>
64320       <property name="pixels-above-lines-set"
64321                 writable="1"
64322                 transfer-ownership="none">
64323         <type name="boolean" c:type="gboolean"/>
64324       </property>
64325       <property name="pixels-below-lines"
64326                 writable="1"
64327                 transfer-ownership="none">
64328         <type name="int" c:type="gint"/>
64329       </property>
64330       <property name="pixels-below-lines-set"
64331                 writable="1"
64332                 transfer-ownership="none">
64333         <type name="boolean" c:type="gboolean"/>
64334       </property>
64335       <property name="pixels-inside-wrap"
64336                 writable="1"
64337                 transfer-ownership="none">
64338         <type name="int" c:type="gint"/>
64339       </property>
64340       <property name="pixels-inside-wrap-set"
64341                 writable="1"
64342                 transfer-ownership="none">
64343         <type name="boolean" c:type="gboolean"/>
64344       </property>
64345       <property name="right-margin" writable="1" transfer-ownership="none">
64346         <type name="int" c:type="gint"/>
64347       </property>
64348       <property name="right-margin-set" writable="1" transfer-ownership="none">
64349         <type name="boolean" c:type="gboolean"/>
64350       </property>
64351       <property name="rise" writable="1" transfer-ownership="none">
64352         <type name="int" c:type="gint"/>
64353       </property>
64354       <property name="rise-set" writable="1" transfer-ownership="none">
64355         <type name="boolean" c:type="gboolean"/>
64356       </property>
64357       <property name="scale" writable="1" transfer-ownership="none">
64358         <type name="double" c:type="gdouble"/>
64359       </property>
64360       <property name="scale-set" writable="1" transfer-ownership="none">
64361         <type name="boolean" c:type="gboolean"/>
64362       </property>
64363       <property name="size" writable="1" transfer-ownership="none">
64364         <type name="int" c:type="gint"/>
64365       </property>
64366       <property name="size-points" writable="1" transfer-ownership="none">
64367         <type name="double" c:type="gdouble"/>
64368       </property>
64369       <property name="size-set" writable="1" transfer-ownership="none">
64370         <type name="boolean" c:type="gboolean"/>
64371       </property>
64372       <property name="stretch" writable="1" transfer-ownership="none">
64373         <type name="Pango.Stretch" c:type="PangoStretch"/>
64374       </property>
64375       <property name="stretch-set" writable="1" transfer-ownership="none">
64376         <type name="boolean" c:type="gboolean"/>
64377       </property>
64378       <property name="strikethrough" writable="1" transfer-ownership="none">
64379         <type name="boolean" c:type="gboolean"/>
64380       </property>
64381       <property name="strikethrough-set"
64382                 writable="1"
64383                 transfer-ownership="none">
64384         <type name="boolean" c:type="gboolean"/>
64385       </property>
64386       <property name="style" writable="1" transfer-ownership="none">
64387         <type name="Pango.Style" c:type="PangoStyle"/>
64388       </property>
64389       <property name="style-set" writable="1" transfer-ownership="none">
64390         <type name="boolean" c:type="gboolean"/>
64391       </property>
64392       <property name="tabs" writable="1" transfer-ownership="none">
64393         <type name="Pango.TabArray" c:type="PangoTabArray"/>
64394       </property>
64395       <property name="tabs-set" writable="1" transfer-ownership="none">
64396         <type name="boolean" c:type="gboolean"/>
64397       </property>
64398       <property name="underline" writable="1" transfer-ownership="none">
64399         <type name="Pango.Underline" c:type="PangoUnderline"/>
64400       </property>
64401       <property name="underline-set" writable="1" transfer-ownership="none">
64402         <type name="boolean" c:type="gboolean"/>
64403       </property>
64404       <property name="variant" writable="1" transfer-ownership="none">
64405         <type name="Pango.Variant" c:type="PangoVariant"/>
64406       </property>
64407       <property name="variant-set" writable="1" transfer-ownership="none">
64408         <type name="boolean" c:type="gboolean"/>
64409       </property>
64410       <property name="weight" writable="1" transfer-ownership="none">
64411         <type name="int" c:type="gint"/>
64412       </property>
64413       <property name="weight-set" writable="1" transfer-ownership="none">
64414         <type name="boolean" c:type="gboolean"/>
64415       </property>
64416       <property name="wrap-mode" writable="1" transfer-ownership="none">
64417         <type name="WrapMode" c:type="GtkWrapMode"/>
64418       </property>
64419       <property name="wrap-mode-set" writable="1" transfer-ownership="none">
64420         <type name="boolean" c:type="gboolean"/>
64421       </property>
64422       <field name="parent_instance">
64423         <type name="GObject.Object" c:type="GObject"/>
64424       </field>
64425       <field name="table">
64426         <type name="TextTagTable" c:type="GtkTextTagTable*"/>
64427       </field>
64428       <field name="name">
64429         <type name="utf8" c:type="char*"/>
64430       </field>
64431       <field name="priority">
64432         <type name="int" c:type="int"/>
64433       </field>
64434       <field name="values">
64435         <type name="TextAttributes" c:type="GtkTextAttributes*"/>
64436       </field>
64437       <field name="bg_color_set" bits="1">
64438         <type name="uint" c:type="guint"/>
64439       </field>
64440       <field name="bg_stipple_set" bits="1">
64441         <type name="uint" c:type="guint"/>
64442       </field>
64443       <field name="fg_color_set" bits="1">
64444         <type name="uint" c:type="guint"/>
64445       </field>
64446       <field name="scale_set" bits="1">
64447         <type name="uint" c:type="guint"/>
64448       </field>
64449       <field name="fg_stipple_set" bits="1">
64450         <type name="uint" c:type="guint"/>
64451       </field>
64452       <field name="justification_set" bits="1">
64453         <type name="uint" c:type="guint"/>
64454       </field>
64455       <field name="left_margin_set" bits="1">
64456         <type name="uint" c:type="guint"/>
64457       </field>
64458       <field name="indent_set" bits="1">
64459         <type name="uint" c:type="guint"/>
64460       </field>
64461       <field name="rise_set" bits="1">
64462         <type name="uint" c:type="guint"/>
64463       </field>
64464       <field name="strikethrough_set" bits="1">
64465         <type name="uint" c:type="guint"/>
64466       </field>
64467       <field name="right_margin_set" bits="1">
64468         <type name="uint" c:type="guint"/>
64469       </field>
64470       <field name="pixels_above_lines_set" bits="1">
64471         <type name="uint" c:type="guint"/>
64472       </field>
64473       <field name="pixels_below_lines_set" bits="1">
64474         <type name="uint" c:type="guint"/>
64475       </field>
64476       <field name="pixels_inside_wrap_set" bits="1">
64477         <type name="uint" c:type="guint"/>
64478       </field>
64479       <field name="tabs_set" bits="1">
64480         <type name="uint" c:type="guint"/>
64481       </field>
64482       <field name="underline_set" bits="1">
64483         <type name="uint" c:type="guint"/>
64484       </field>
64485       <field name="wrap_mode_set" bits="1">
64486         <type name="uint" c:type="guint"/>
64487       </field>
64488       <field name="bg_full_height_set" bits="1">
64489         <type name="uint" c:type="guint"/>
64490       </field>
64491       <field name="invisible_set" bits="1">
64492         <type name="uint" c:type="guint"/>
64493       </field>
64494       <field name="editable_set" bits="1">
64495         <type name="uint" c:type="guint"/>
64496       </field>
64497       <field name="language_set" bits="1">
64498         <type name="uint" c:type="guint"/>
64499       </field>
64500       <field name="pg_bg_color_set" bits="1">
64501         <type name="uint" c:type="guint"/>
64502       </field>
64503       <field name="accumulative_margin" bits="1">
64504         <type name="uint" c:type="guint"/>
64505       </field>
64506       <field name="pad1" bits="1">
64507         <type name="uint" c:type="guint"/>
64508       </field>
64509       <glib:signal name="event">
64510         <doc xml:whitespace="preserve">The ::event signal is emitted when an event occurs on a region of the
64511 buffer marked with this tag.
64512 event. %FALSE to propagate the event further.</doc>
64513         <return-value transfer-ownership="full">
64514           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the</doc>
64515           <type name="boolean" c:type="gboolean"/>
64516         </return-value>
64517         <parameters>
64518           <parameter name="object" transfer-ownership="none">
64519             <doc xml:whitespace="preserve">the object the event was fired from (typically a #GtkTextView)</doc>
64520             <type name="GObject.Object" c:type="GObject"/>
64521           </parameter>
64522           <parameter name="event" transfer-ownership="none">
64523             <doc xml:whitespace="preserve">the event which triggered the signal</doc>
64524             <type name="Gdk.Event" c:type="GdkEvent"/>
64525           </parameter>
64526           <parameter name="iter" transfer-ownership="none">
64527             <doc xml:whitespace="preserve">a #GtkTextIter pointing at the location the event occured</doc>
64528             <type name="TextIter" c:type="GtkTextIter"/>
64529           </parameter>
64530         </parameters>
64531       </glib:signal>
64532     </class>
64533     <record name="TextTagClass"
64534             c:type="GtkTextTagClass"
64535             glib:is-gtype-struct-for="TextTag">
64536       <field name="parent_class">
64537         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
64538       </field>
64539       <field name="event">
64540         <callback name="event" c:type="event">
64541           <return-value transfer-ownership="none">
64542             <type name="boolean" c:type="gboolean"/>
64543           </return-value>
64544           <parameters>
64545             <parameter name="tag" transfer-ownership="none">
64546               <type name="TextTag" c:type="GtkTextTag*"/>
64547             </parameter>
64548             <parameter name="event_object" transfer-ownership="none">
64549               <type name="GObject.Object" c:type="GObject*"/>
64550             </parameter>
64551             <parameter name="event" transfer-ownership="none">
64552               <type name="Gdk.Event" c:type="GdkEvent*"/>
64553             </parameter>
64554             <parameter name="iter" transfer-ownership="none">
64555               <type name="TextIter" c:type="GtkTextIter*"/>
64556             </parameter>
64557           </parameters>
64558         </callback>
64559       </field>
64560       <field name="gtk_reserved1">
64561         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
64562           <return-value transfer-ownership="none">
64563             <type name="none" c:type="void"/>
64564           </return-value>
64565         </callback>
64566       </field>
64567       <field name="gtk_reserved2">
64568         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
64569           <return-value transfer-ownership="none">
64570             <type name="none" c:type="void"/>
64571           </return-value>
64572         </callback>
64573       </field>
64574       <field name="gtk_reserved3">
64575         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
64576           <return-value transfer-ownership="none">
64577             <type name="none" c:type="void"/>
64578           </return-value>
64579         </callback>
64580       </field>
64581       <field name="gtk_reserved4">
64582         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
64583           <return-value transfer-ownership="none">
64584             <type name="none" c:type="void"/>
64585           </return-value>
64586         </callback>
64587       </field>
64588     </record>
64589     <class name="TextTagTable"
64590            c:type="GtkTextTagTable"
64591            parent="GObject.Object"
64592            glib:type-name="GtkTextTagTable"
64593            glib:get-type="gtk_text_tag_table_get_type"
64594            glib:type-struct="TextTagTableClass">
64595       <constructor name="new" c:identifier="gtk_text_tag_table_new">
64596         <doc xml:whitespace="preserve">Creates a new #GtkTextTagTable. The table contains no tags by
64597 default.</doc>
64598         <return-value transfer-ownership="full">
64599           <doc xml:whitespace="preserve">a new #GtkTextTagTable</doc>
64600           <type name="TextTagTable" c:type="GtkTextTagTable*"/>
64601         </return-value>
64602       </constructor>
64603       <method name="add" c:identifier="gtk_text_tag_table_add">
64604         <doc xml:whitespace="preserve">Add a tag to the table. The tag is assigned the highest priority
64605 in the table.
64606 the same name as an already-added tag.</doc>
64607         <return-value transfer-ownership="none">
64608           <type name="none" c:type="void"/>
64609         </return-value>
64610         <parameters>
64611           <parameter name="tag" transfer-ownership="none">
64612             <doc xml:whitespace="preserve">a #GtkTextTag</doc>
64613             <type name="TextTag" c:type="GtkTextTag*"/>
64614           </parameter>
64615         </parameters>
64616       </method>
64617       <method name="remove" c:identifier="gtk_text_tag_table_remove">
64618         <doc xml:whitespace="preserve">Remove a tag from the table. This will remove the table's
64619 reference to the tag, so be careful - the tag will end
64620 up destroyed if you don't have a reference to it.</doc>
64621         <return-value transfer-ownership="none">
64622           <type name="none" c:type="void"/>
64623         </return-value>
64624         <parameters>
64625           <parameter name="tag" transfer-ownership="none">
64626             <doc xml:whitespace="preserve">a #GtkTextTag</doc>
64627             <type name="TextTag" c:type="GtkTextTag*"/>
64628           </parameter>
64629         </parameters>
64630       </method>
64631       <method name="lookup" c:identifier="gtk_text_tag_table_lookup">
64632         <doc xml:whitespace="preserve">Look up a named tag.</doc>
64633         <return-value transfer-ownership="none">
64634           <doc xml:whitespace="preserve">The tag, or %NULL if none by that name is in the table.</doc>
64635           <type name="TextTag" c:type="GtkTextTag*"/>
64636         </return-value>
64637         <parameters>
64638           <parameter name="name" transfer-ownership="none">
64639             <doc xml:whitespace="preserve">name of a tag</doc>
64640             <type name="utf8" c:type="gchar*"/>
64641           </parameter>
64642         </parameters>
64643       </method>
64644       <method name="foreach" c:identifier="gtk_text_tag_table_foreach">
64645         <doc xml:whitespace="preserve">Calls @func on each tag in @table, with user data @data.
64646 Note that the table may not be modified while iterating 
64647 over it (you can't add/remove tags).</doc>
64648         <return-value transfer-ownership="none">
64649           <type name="none" c:type="void"/>
64650         </return-value>
64651         <parameters>
64652           <parameter name="func"
64653                      transfer-ownership="none"
64654                      scope="call"
64655                      closure="2">
64656             <doc xml:whitespace="preserve">a function to call on each tag</doc>
64657             <type name="TextTagTableForeach" c:type="GtkTextTagTableForeach"/>
64658           </parameter>
64659           <parameter name="data" transfer-ownership="none">
64660             <doc xml:whitespace="preserve">user data</doc>
64661             <type name="any" c:type="gpointer"/>
64662           </parameter>
64663         </parameters>
64664       </method>
64665       <method name="get_size" c:identifier="gtk_text_tag_table_get_size">
64666         <doc xml:whitespace="preserve">Returns the size of the table (number of tags)</doc>
64667         <return-value transfer-ownership="none">
64668           <doc xml:whitespace="preserve">number of tags in @table</doc>
64669           <type name="int" c:type="gint"/>
64670         </return-value>
64671       </method>
64672       <field name="parent_instance">
64673         <type name="GObject.Object" c:type="GObject"/>
64674       </field>
64675       <field name="hash">
64676         <type name="GLib.HashTable" c:type="GHashTable*"/>
64677       </field>
64678       <field name="anonymous">
64679         <type name="GLib.SList" c:type="GSList*">
64680           <type name="any" c:type="gpointer"/>
64681         </type>
64682       </field>
64683       <field name="anon_count">
64684         <type name="int" c:type="gint"/>
64685       </field>
64686       <field name="buffers">
64687         <type name="GLib.SList" c:type="GSList*">
64688           <type name="any" c:type="gpointer"/>
64689         </type>
64690       </field>
64691       <glib:signal name="tag-added">
64692         <return-value transfer-ownership="full">
64693           <type name="none" c:type="void"/>
64694         </return-value>
64695         <parameters>
64696           <parameter name="object" transfer-ownership="none">
64697             <type name="TextTag" c:type="GtkTextTag"/>
64698           </parameter>
64699         </parameters>
64700       </glib:signal>
64701       <glib:signal name="tag-changed">
64702         <return-value transfer-ownership="full">
64703           <type name="none" c:type="void"/>
64704         </return-value>
64705         <parameters>
64706           <parameter name="object" transfer-ownership="none">
64707             <type name="TextTag" c:type="GtkTextTag"/>
64708           </parameter>
64709           <parameter name="p0" transfer-ownership="none">
64710             <type name="boolean" c:type="gboolean"/>
64711           </parameter>
64712         </parameters>
64713       </glib:signal>
64714       <glib:signal name="tag-removed">
64715         <return-value transfer-ownership="full">
64716           <type name="none" c:type="void"/>
64717         </return-value>
64718         <parameters>
64719           <parameter name="object" transfer-ownership="none">
64720             <type name="TextTag" c:type="GtkTextTag"/>
64721           </parameter>
64722         </parameters>
64723       </glib:signal>
64724     </class>
64725     <record name="TextTagTableClass"
64726             c:type="GtkTextTagTableClass"
64727             glib:is-gtype-struct-for="TextTagTable">
64728       <field name="parent_class">
64729         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
64730       </field>
64731       <field name="tag_changed">
64732         <callback name="tag_changed" c:type="tag_changed">
64733           <return-value transfer-ownership="none">
64734             <type name="none" c:type="void"/>
64735           </return-value>
64736           <parameters>
64737             <parameter name="table" transfer-ownership="none">
64738               <type name="TextTagTable" c:type="GtkTextTagTable*"/>
64739             </parameter>
64740             <parameter name="tag" transfer-ownership="none">
64741               <type name="TextTag" c:type="GtkTextTag*"/>
64742             </parameter>
64743             <parameter name="size_changed" transfer-ownership="none">
64744               <type name="boolean" c:type="gboolean"/>
64745             </parameter>
64746           </parameters>
64747         </callback>
64748       </field>
64749       <field name="tag_added">
64750         <callback name="tag_added" c:type="tag_added">
64751           <return-value transfer-ownership="none">
64752             <type name="none" c:type="void"/>
64753           </return-value>
64754           <parameters>
64755             <parameter name="table" transfer-ownership="none">
64756               <type name="TextTagTable" c:type="GtkTextTagTable*"/>
64757             </parameter>
64758             <parameter name="tag" transfer-ownership="none">
64759               <type name="TextTag" c:type="GtkTextTag*"/>
64760             </parameter>
64761           </parameters>
64762         </callback>
64763       </field>
64764       <field name="tag_removed">
64765         <callback name="tag_removed" c:type="tag_removed">
64766           <return-value transfer-ownership="none">
64767             <type name="none" c:type="void"/>
64768           </return-value>
64769           <parameters>
64770             <parameter name="table" transfer-ownership="none">
64771               <type name="TextTagTable" c:type="GtkTextTagTable*"/>
64772             </parameter>
64773             <parameter name="tag" transfer-ownership="none">
64774               <type name="TextTag" c:type="GtkTextTag*"/>
64775             </parameter>
64776           </parameters>
64777         </callback>
64778       </field>
64779       <field name="gtk_reserved1">
64780         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
64781           <return-value transfer-ownership="none">
64782             <type name="none" c:type="void"/>
64783           </return-value>
64784         </callback>
64785       </field>
64786       <field name="gtk_reserved2">
64787         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
64788           <return-value transfer-ownership="none">
64789             <type name="none" c:type="void"/>
64790           </return-value>
64791         </callback>
64792       </field>
64793       <field name="gtk_reserved3">
64794         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
64795           <return-value transfer-ownership="none">
64796             <type name="none" c:type="void"/>
64797           </return-value>
64798         </callback>
64799       </field>
64800       <field name="gtk_reserved4">
64801         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
64802           <return-value transfer-ownership="none">
64803             <type name="none" c:type="void"/>
64804           </return-value>
64805         </callback>
64806       </field>
64807     </record>
64808     <callback name="TextTagTableForeach" c:type="GtkTextTagTableForeach">
64809       <return-value transfer-ownership="none">
64810         <type name="none" c:type="void"/>
64811       </return-value>
64812       <parameters>
64813         <parameter name="tag" transfer-ownership="none">
64814           <type name="TextTag" c:type="GtkTextTag*"/>
64815         </parameter>
64816         <parameter name="data" transfer-ownership="none">
64817           <type name="any" c:type="gpointer"/>
64818         </parameter>
64819       </parameters>
64820     </callback>
64821     <class name="TextView"
64822            c:type="GtkTextView"
64823            parent="Container"
64824            glib:type-name="GtkTextView"
64825            glib:get-type="gtk_text_view_get_type"
64826            glib:type-struct="TextViewClass">
64827       <implements name="Atk.ImplementorIface"/>
64828       <implements name="Buildable"/>
64829       <constructor name="new" c:identifier="gtk_text_view_new">
64830         <doc xml:whitespace="preserve">Creates a new #GtkTextView. If you don't call gtk_text_view_set_buffer()
64831 before using the text view, an empty default buffer will be created
64832 for you. Get the buffer with gtk_text_view_get_buffer(). If you want
64833 to specify your own buffer, consider gtk_text_view_new_with_buffer().</doc>
64834         <return-value transfer-ownership="full">
64835           <doc xml:whitespace="preserve">a new #GtkTextView</doc>
64836           <type name="TextView" c:type="GtkWidget*"/>
64837         </return-value>
64838       </constructor>
64839       <constructor name="new_with_buffer"
64840                    c:identifier="gtk_text_view_new_with_buffer">
64841         <doc xml:whitespace="preserve">Creates a new #GtkTextView widget displaying the buffer
64842 this function is equivalent to gtk_text_view_new(). The
64843 text view adds its own reference count to the buffer; it does not
64844 take over an existing reference.</doc>
64845         <return-value transfer-ownership="full">
64846           <doc xml:whitespace="preserve">a new #GtkTextView.</doc>
64847           <type name="TextView" c:type="GtkWidget*"/>
64848         </return-value>
64849         <parameters>
64850           <parameter name="buffer" transfer-ownership="none">
64851             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
64852             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
64853           </parameter>
64854         </parameters>
64855       </constructor>
64856       <virtual-method name="move_focus">
64857         <return-value transfer-ownership="none">
64858           <type name="none" c:type="void"/>
64859         </return-value>
64860         <parameters>
64861           <parameter name="direction" transfer-ownership="none">
64862             <type name="DirectionType" c:type="GtkDirectionType"/>
64863           </parameter>
64864         </parameters>
64865       </virtual-method>
64866       <method name="set_buffer" c:identifier="gtk_text_view_set_buffer">
64867         <doc xml:whitespace="preserve">Sets @buffer as the buffer being displayed by @text_view. The previous
64868 buffer displayed by the text view is unreferenced, and a reference is
64869 added to @buffer. If you owned a reference to @buffer before passing it
64870 to this function, you must remove that reference yourself; #GtkTextView
64871 will not "adopt" it.</doc>
64872         <return-value transfer-ownership="none">
64873           <type name="none" c:type="void"/>
64874         </return-value>
64875         <parameters>
64876           <parameter name="buffer" transfer-ownership="none" allow-none="1">
64877             <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
64878             <type name="TextBuffer" c:type="GtkTextBuffer*"/>
64879           </parameter>
64880         </parameters>
64881       </method>
64882       <method name="get_buffer" c:identifier="gtk_text_view_get_buffer">
64883         <doc xml:whitespace="preserve">Returns the #GtkTextBuffer being displayed by this text view.
64884 The reference count on the buffer is not incremented; the caller
64885 of this function won't own a new reference.</doc>
64886         <return-value transfer-ownership="none">
64887           <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
64888           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
64889         </return-value>
64890       </method>
64891       <method name="scroll_to_iter"
64892               c:identifier="gtk_text_view_scroll_to_iter">
64893         <doc xml:whitespace="preserve">Scrolls @text_view so that @iter is on the screen in the position
64894 indicated by @xalign and @yalign. An alignment of 0.0 indicates
64895 left or top, 1.0 indicates right or bottom, 0.5 means center. 
64896 If @use_align is %FALSE, the text scrolls the minimal distance to 
64897 get the mark onscreen, possibly not scrolling at all. The effective 
64898 screen for purposes of this function is reduced by a margin of size 
64899 Note that this function uses the currently-computed height of the
64900 lines in the text buffer. Line heights are computed in an idle 
64901 handler; so this function may not have the desired effect if it's 
64902 called before the height computations. To avoid oddness, consider 
64903 using gtk_text_view_scroll_to_mark() which saves a point to be 
64904 scrolled to after line validation.</doc>
64905         <return-value transfer-ownership="none">
64906           <doc xml:whitespace="preserve">%TRUE if scrolling occurred</doc>
64907           <type name="boolean" c:type="gboolean"/>
64908         </return-value>
64909         <parameters>
64910           <parameter name="iter" transfer-ownership="none">
64911             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
64912             <type name="TextIter" c:type="GtkTextIter*"/>
64913           </parameter>
64914           <parameter name="within_margin" transfer-ownership="none">
64915             <doc xml:whitespace="preserve">margin as a [0.0,0.5) fraction of screen size</doc>
64916             <type name="double" c:type="gdouble"/>
64917           </parameter>
64918           <parameter name="use_align" transfer-ownership="none">
64919             <doc xml:whitespace="preserve">whether to use alignment arguments (if %FALSE, just get the mark onscreen)</doc>
64920             <type name="boolean" c:type="gboolean"/>
64921           </parameter>
64922           <parameter name="xalign" transfer-ownership="none">
64923             <doc xml:whitespace="preserve">horizontal alignment of mark within visible area</doc>
64924             <type name="double" c:type="gdouble"/>
64925           </parameter>
64926           <parameter name="yalign" transfer-ownership="none">
64927             <doc xml:whitespace="preserve">vertical alignment of mark within visible area</doc>
64928             <type name="double" c:type="gdouble"/>
64929           </parameter>
64930         </parameters>
64931       </method>
64932       <method name="scroll_to_mark"
64933               c:identifier="gtk_text_view_scroll_to_mark">
64934         <doc xml:whitespace="preserve">Scrolls @text_view so that @mark is on the screen in the position
64935 indicated by @xalign and @yalign. An alignment of 0.0 indicates
64936 left or top, 1.0 indicates right or bottom, 0.5 means center. 
64937 If @use_align is %FALSE, the text scrolls the minimal distance to 
64938 get the mark onscreen, possibly not scrolling at all. The effective 
64939 screen for purposes of this function is reduced by a margin of size</doc>
64940         <return-value transfer-ownership="none">
64941           <type name="none" c:type="void"/>
64942         </return-value>
64943         <parameters>
64944           <parameter name="mark" transfer-ownership="none">
64945             <doc xml:whitespace="preserve">a #GtkTextMark</doc>
64946             <type name="TextMark" c:type="GtkTextMark*"/>
64947           </parameter>
64948           <parameter name="within_margin" transfer-ownership="none">
64949             <doc xml:whitespace="preserve">margin as a [0.0,0.5) fraction of screen size</doc>
64950             <type name="double" c:type="gdouble"/>
64951           </parameter>
64952           <parameter name="use_align" transfer-ownership="none">
64953             <doc xml:whitespace="preserve">whether to use alignment arguments (if %FALSE, just get the mark onscreen)</doc>
64954             <type name="boolean" c:type="gboolean"/>
64955           </parameter>
64956           <parameter name="xalign" transfer-ownership="none">
64957             <doc xml:whitespace="preserve">horizontal alignment of mark within visible area</doc>
64958             <type name="double" c:type="gdouble"/>
64959           </parameter>
64960           <parameter name="yalign" transfer-ownership="none">
64961             <doc xml:whitespace="preserve">vertical alignment of mark within visible area</doc>
64962             <type name="double" c:type="gdouble"/>
64963           </parameter>
64964         </parameters>
64965       </method>
64966       <method name="scroll_mark_onscreen"
64967               c:identifier="gtk_text_view_scroll_mark_onscreen">
64968         <doc xml:whitespace="preserve">Scrolls @text_view the minimum distance such that @mark is contained
64969 within the visible area of the widget.</doc>
64970         <return-value transfer-ownership="none">
64971           <type name="none" c:type="void"/>
64972         </return-value>
64973         <parameters>
64974           <parameter name="mark" transfer-ownership="none">
64975             <doc xml:whitespace="preserve">a mark in the buffer for @text_view</doc>
64976             <type name="TextMark" c:type="GtkTextMark*"/>
64977           </parameter>
64978         </parameters>
64979       </method>
64980       <method name="move_mark_onscreen"
64981               c:identifier="gtk_text_view_move_mark_onscreen">
64982         <doc xml:whitespace="preserve">Moves a mark within the buffer so that it's
64983 located within the currently-visible text area.</doc>
64984         <return-value transfer-ownership="none">
64985           <doc xml:whitespace="preserve">%TRUE if the mark moved (wasn't already onscreen)</doc>
64986           <type name="boolean" c:type="gboolean"/>
64987         </return-value>
64988         <parameters>
64989           <parameter name="mark" transfer-ownership="none">
64990             <doc xml:whitespace="preserve">a #GtkTextMark</doc>
64991             <type name="TextMark" c:type="GtkTextMark*"/>
64992           </parameter>
64993         </parameters>
64994       </method>
64995       <method name="place_cursor_onscreen"
64996               c:identifier="gtk_text_view_place_cursor_onscreen">
64997         <doc xml:whitespace="preserve">Moves the cursor to the currently visible region of the
64998 buffer, it it isn't there already.</doc>
64999         <return-value transfer-ownership="none">
65000           <doc xml:whitespace="preserve">%TRUE if the cursor had to be moved.</doc>
65001           <type name="boolean" c:type="gboolean"/>
65002         </return-value>
65003       </method>
65004       <method name="get_visible_rect"
65005               c:identifier="gtk_text_view_get_visible_rect">
65006         <doc xml:whitespace="preserve">Fills @visible_rect with the currently-visible
65007 region of the buffer, in buffer coordinates. Convert to window coordinates
65008 with gtk_text_view_buffer_to_window_coords().</doc>
65009         <return-value transfer-ownership="none">
65010           <type name="none" c:type="void"/>
65011         </return-value>
65012         <parameters>
65013           <parameter name="visible_rect" transfer-ownership="none">
65014             <doc xml:whitespace="preserve">rectangle to fill</doc>
65015             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
65016           </parameter>
65017         </parameters>
65018       </method>
65019       <method name="set_cursor_visible"
65020               c:identifier="gtk_text_view_set_cursor_visible">
65021         <doc xml:whitespace="preserve">Toggles whether the insertion point is displayed. A buffer with no editable
65022 text probably shouldn't have a visible cursor, so you may want to turn
65023 the cursor off.</doc>
65024         <return-value transfer-ownership="none">
65025           <type name="none" c:type="void"/>
65026         </return-value>
65027         <parameters>
65028           <parameter name="setting" transfer-ownership="none">
65029             <doc xml:whitespace="preserve">whether to show the insertion cursor</doc>
65030             <type name="boolean" c:type="gboolean"/>
65031           </parameter>
65032         </parameters>
65033       </method>
65034       <method name="get_cursor_visible"
65035               c:identifier="gtk_text_view_get_cursor_visible">
65036         <doc xml:whitespace="preserve">Find out whether the cursor is being displayed.</doc>
65037         <return-value transfer-ownership="none">
65038           <doc xml:whitespace="preserve">whether the insertion mark is visible</doc>
65039           <type name="boolean" c:type="gboolean"/>
65040         </return-value>
65041       </method>
65042       <method name="get_iter_location"
65043               c:identifier="gtk_text_view_get_iter_location">
65044         <doc xml:whitespace="preserve">Gets a rectangle which roughly contains the character at @iter.
65045 The rectangle position is in buffer coordinates; use
65046 gtk_text_view_buffer_to_window_coords() to convert these
65047 coordinates to coordinates for one of the windows in the text view.</doc>
65048         <return-value transfer-ownership="none">
65049           <type name="none" c:type="void"/>
65050         </return-value>
65051         <parameters>
65052           <parameter name="iter" transfer-ownership="none">
65053             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
65054             <type name="TextIter" c:type="GtkTextIter*"/>
65055           </parameter>
65056           <parameter name="location" transfer-ownership="none">
65057             <doc xml:whitespace="preserve">bounds of the character at @iter</doc>
65058             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
65059           </parameter>
65060         </parameters>
65061       </method>
65062       <method name="get_iter_at_location"
65063               c:identifier="gtk_text_view_get_iter_at_location">
65064         <doc xml:whitespace="preserve">Retrieves the iterator at buffer coordinates @x and @y. Buffer
65065 coordinates are coordinates for the entire buffer, not just the
65066 currently-displayed portion.  If you have coordinates from an
65067 event, you have to convert those to buffer coordinates with
65068 gtk_text_view_window_to_buffer_coords().</doc>
65069         <return-value transfer-ownership="none">
65070           <type name="none" c:type="void"/>
65071         </return-value>
65072         <parameters>
65073           <parameter name="iter" transfer-ownership="none">
65074             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
65075             <type name="TextIter" c:type="GtkTextIter*"/>
65076           </parameter>
65077           <parameter name="x" transfer-ownership="none">
65078             <doc xml:whitespace="preserve">x position, in buffer coordinates</doc>
65079             <type name="int" c:type="gint"/>
65080           </parameter>
65081           <parameter name="y" transfer-ownership="none">
65082             <doc xml:whitespace="preserve">y position, in buffer coordinates</doc>
65083             <type name="int" c:type="gint"/>
65084           </parameter>
65085         </parameters>
65086       </method>
65087       <method name="get_iter_at_position"
65088               c:identifier="gtk_text_view_get_iter_at_position"
65089               version="2.6">
65090         <doc xml:whitespace="preserve">Retrieves the iterator pointing to the character at buffer 
65091 coordinates @x and @y. Buffer coordinates are coordinates for 
65092 the entire buffer, not just the currently-displayed portion.  
65093 If you have coordinates from an event, you have to convert 
65094 those to buffer coordinates with 
65095 gtk_text_view_window_to_buffer_coords().
65096 Note that this is different from gtk_text_view_get_iter_at_location(),
65097 which returns cursor locations, i.e. positions &lt;emphasis&gt;between&lt;/emphasis&gt;
65098 characters.</doc>
65099         <return-value transfer-ownership="none">
65100           <type name="none" c:type="void"/>
65101         </return-value>
65102         <parameters>
65103           <parameter name="iter" transfer-ownership="none">
65104             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
65105             <type name="TextIter" c:type="GtkTextIter*"/>
65106           </parameter>
65107           <parameter name="trailing"
65108                      direction="out"
65109                      caller-allocates="0"
65110                      transfer-ownership="full">
65111             <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>
65112             <type name="int" c:type="gint*"/>
65113           </parameter>
65114           <parameter name="x" transfer-ownership="none">
65115             <doc xml:whitespace="preserve">x position, in buffer coordinates</doc>
65116             <type name="int" c:type="gint"/>
65117           </parameter>
65118           <parameter name="y" transfer-ownership="none">
65119             <doc xml:whitespace="preserve">y position, in buffer coordinates</doc>
65120             <type name="int" c:type="gint"/>
65121           </parameter>
65122         </parameters>
65123       </method>
65124       <method name="get_line_yrange"
65125               c:identifier="gtk_text_view_get_line_yrange">
65126         <doc xml:whitespace="preserve">Gets the y coordinate of the top of the line containing @iter,
65127 and the height of the line. The coordinate is a buffer coordinate;
65128 convert to window coordinates with gtk_text_view_buffer_to_window_coords().</doc>
65129         <return-value transfer-ownership="none">
65130           <type name="none" c:type="void"/>
65131         </return-value>
65132         <parameters>
65133           <parameter name="iter" transfer-ownership="none">
65134             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
65135             <type name="TextIter" c:type="GtkTextIter*"/>
65136           </parameter>
65137           <parameter name="y"
65138                      direction="out"
65139                      caller-allocates="0"
65140                      transfer-ownership="full">
65141             <doc xml:whitespace="preserve">return location for a y coordinate</doc>
65142             <type name="int" c:type="gint*"/>
65143           </parameter>
65144           <parameter name="height"
65145                      direction="out"
65146                      caller-allocates="0"
65147                      transfer-ownership="full">
65148             <doc xml:whitespace="preserve">return location for a height</doc>
65149             <type name="int" c:type="gint*"/>
65150           </parameter>
65151         </parameters>
65152       </method>
65153       <method name="get_line_at_y" c:identifier="gtk_text_view_get_line_at_y">
65154         <doc xml:whitespace="preserve">Gets the #GtkTextIter at the start of the line containing
65155 the coordinate @y. @y is in buffer coordinates, convert from
65156 window coordinates with gtk_text_view_window_to_buffer_coords().
65157 If non-%NULL, @line_top will be filled with the coordinate of the top
65158 edge of the line.</doc>
65159         <return-value transfer-ownership="none">
65160           <type name="none" c:type="void"/>
65161         </return-value>
65162         <parameters>
65163           <parameter name="target_iter" transfer-ownership="none">
65164             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
65165             <type name="TextIter" c:type="GtkTextIter*"/>
65166           </parameter>
65167           <parameter name="y" transfer-ownership="none">
65168             <doc xml:whitespace="preserve">a y coordinate</doc>
65169             <type name="int" c:type="gint"/>
65170           </parameter>
65171           <parameter name="line_top"
65172                      direction="out"
65173                      caller-allocates="0"
65174                      transfer-ownership="full">
65175             <doc xml:whitespace="preserve">return location for top coordinate of the line</doc>
65176             <type name="int" c:type="gint*"/>
65177           </parameter>
65178         </parameters>
65179       </method>
65180       <method name="buffer_to_window_coords"
65181               c:identifier="gtk_text_view_buffer_to_window_coords">
65182         <doc xml:whitespace="preserve">Converts coordinate (@buffer_x, @buffer_y) to coordinates for the window
65183 Note that you can't convert coordinates for a nonexisting window (see 
65184 gtk_text_view_set_border_window_size()).</doc>
65185         <return-value transfer-ownership="none">
65186           <type name="none" c:type="void"/>
65187         </return-value>
65188         <parameters>
65189           <parameter name="win" transfer-ownership="none">
65190             <doc xml:whitespace="preserve">a #GtkTextWindowType except #GTK_TEXT_WINDOW_PRIVATE</doc>
65191             <type name="TextWindowType" c:type="GtkTextWindowType"/>
65192           </parameter>
65193           <parameter name="buffer_x" transfer-ownership="none">
65194             <doc xml:whitespace="preserve">buffer x coordinate</doc>
65195             <type name="int" c:type="gint"/>
65196           </parameter>
65197           <parameter name="buffer_y" transfer-ownership="none">
65198             <doc xml:whitespace="preserve">buffer y coordinate</doc>
65199             <type name="int" c:type="gint"/>
65200           </parameter>
65201           <parameter name="window_x"
65202                      direction="out"
65203                      caller-allocates="0"
65204                      transfer-ownership="full">
65205             <doc xml:whitespace="preserve">window x coordinate return location</doc>
65206             <type name="int" c:type="gint*"/>
65207           </parameter>
65208           <parameter name="window_y"
65209                      direction="out"
65210                      caller-allocates="0"
65211                      transfer-ownership="full">
65212             <doc xml:whitespace="preserve">window y coordinate return location</doc>
65213             <type name="int" c:type="gint*"/>
65214           </parameter>
65215         </parameters>
65216       </method>
65217       <method name="window_to_buffer_coords"
65218               c:identifier="gtk_text_view_window_to_buffer_coords">
65219         <doc xml:whitespace="preserve">Converts coordinates on the window identified by @win to buffer
65220 coordinates, storing the result in (@buffer_x,@buffer_y).
65221 Note that you can't convert coordinates for a nonexisting window (see 
65222 gtk_text_view_set_border_window_size()).</doc>
65223         <return-value transfer-ownership="none">
65224           <type name="none" c:type="void"/>
65225         </return-value>
65226         <parameters>
65227           <parameter name="win" transfer-ownership="none">
65228             <doc xml:whitespace="preserve">a #GtkTextWindowType except #GTK_TEXT_WINDOW_PRIVATE</doc>
65229             <type name="TextWindowType" c:type="GtkTextWindowType"/>
65230           </parameter>
65231           <parameter name="window_x" transfer-ownership="none">
65232             <doc xml:whitespace="preserve">window x coordinate</doc>
65233             <type name="int" c:type="gint"/>
65234           </parameter>
65235           <parameter name="window_y" transfer-ownership="none">
65236             <doc xml:whitespace="preserve">window y coordinate</doc>
65237             <type name="int" c:type="gint"/>
65238           </parameter>
65239           <parameter name="buffer_x"
65240                      direction="out"
65241                      caller-allocates="0"
65242                      transfer-ownership="full">
65243             <doc xml:whitespace="preserve">buffer x coordinate return location</doc>
65244             <type name="int" c:type="gint*"/>
65245           </parameter>
65246           <parameter name="buffer_y"
65247                      direction="out"
65248                      caller-allocates="0"
65249                      transfer-ownership="full">
65250             <doc xml:whitespace="preserve">buffer y coordinate return location</doc>
65251             <type name="int" c:type="gint*"/>
65252           </parameter>
65253         </parameters>
65254       </method>
65255       <method name="get_hadjustment"
65256               c:identifier="gtk_text_view_get_hadjustment"
65257               version="2.22">
65258         <doc xml:whitespace="preserve">Gets the horizontal-scrolling #GtkAdjustment.</doc>
65259         <return-value transfer-ownership="none">
65260           <doc xml:whitespace="preserve">pointer to the horizontal #GtkAdjustment</doc>
65261           <type name="Adjustment" c:type="GtkAdjustment*"/>
65262         </return-value>
65263       </method>
65264       <method name="get_vadjustment"
65265               c:identifier="gtk_text_view_get_vadjustment"
65266               version="2.22">
65267         <doc xml:whitespace="preserve">Gets the vertical-scrolling #GtkAdjustment.</doc>
65268         <return-value transfer-ownership="none">
65269           <doc xml:whitespace="preserve">pointer to the vertical #GtkAdjustment</doc>
65270           <type name="Adjustment" c:type="GtkAdjustment*"/>
65271         </return-value>
65272       </method>
65273       <method name="get_window" c:identifier="gtk_text_view_get_window">
65274         <doc xml:whitespace="preserve">Retrieves the #GdkWindow corresponding to an area of the text view;
65275 possible windows include the overall widget window, child windows
65276 on the left, right, top, bottom, and the window that displays the
65277 text buffer. Windows are %NULL and nonexistent if their width or
65278 height is 0, and are nonexistent before the widget has been
65279 realized.</doc>
65280         <return-value transfer-ownership="none">
65281           <doc xml:whitespace="preserve">a #GdkWindow, or %NULL</doc>
65282           <type name="Gdk.Window" c:type="GdkWindow*"/>
65283         </return-value>
65284         <parameters>
65285           <parameter name="win" transfer-ownership="none">
65286             <doc xml:whitespace="preserve">window to get</doc>
65287             <type name="TextWindowType" c:type="GtkTextWindowType"/>
65288           </parameter>
65289         </parameters>
65290       </method>
65291       <method name="get_window_type"
65292               c:identifier="gtk_text_view_get_window_type">
65293         <doc xml:whitespace="preserve">Usually used to find out which window an event corresponds to.
65294 If you connect to an event signal on @text_view, this function
65295 should be called on &lt;literal&gt;event-&amp;gt;window&lt;/literal&gt; to
65296 see which window it was.</doc>
65297         <return-value transfer-ownership="full">
65298           <doc xml:whitespace="preserve">the window type.</doc>
65299           <type name="TextWindowType" c:type="GtkTextWindowType"/>
65300         </return-value>
65301         <parameters>
65302           <parameter name="window" transfer-ownership="none">
65303             <doc xml:whitespace="preserve">a window type</doc>
65304             <type name="Gdk.Window" c:type="GdkWindow*"/>
65305           </parameter>
65306         </parameters>
65307       </method>
65308       <method name="set_border_window_size"
65309               c:identifier="gtk_text_view_set_border_window_size">
65310         <doc xml:whitespace="preserve">Sets the width of %GTK_TEXT_WINDOW_LEFT or %GTK_TEXT_WINDOW_RIGHT,
65311 or the height of %GTK_TEXT_WINDOW_TOP or %GTK_TEXT_WINDOW_BOTTOM.
65312 Automatically destroys the corresponding window if the size is set
65313 to 0, and creates the window if the size is set to non-zero.  This
65314 function can only be used for the "border windows," it doesn't work
65315 with #GTK_TEXT_WINDOW_WIDGET, #GTK_TEXT_WINDOW_TEXT, or
65316 #GTK_TEXT_WINDOW_PRIVATE.</doc>
65317         <return-value transfer-ownership="none">
65318           <type name="none" c:type="void"/>
65319         </return-value>
65320         <parameters>
65321           <parameter name="type" transfer-ownership="none">
65322             <doc xml:whitespace="preserve">window to affect</doc>
65323             <type name="TextWindowType" c:type="GtkTextWindowType"/>
65324           </parameter>
65325           <parameter name="size" transfer-ownership="none">
65326             <doc xml:whitespace="preserve">width or height of the window</doc>
65327             <type name="int" c:type="gint"/>
65328           </parameter>
65329         </parameters>
65330       </method>
65331       <method name="get_border_window_size"
65332               c:identifier="gtk_text_view_get_border_window_size">
65333         <doc xml:whitespace="preserve">Gets the width of the specified border window. See
65334 gtk_text_view_set_border_window_size().</doc>
65335         <return-value transfer-ownership="none">
65336           <doc xml:whitespace="preserve">width of window</doc>
65337           <type name="int" c:type="gint"/>
65338         </return-value>
65339         <parameters>
65340           <parameter name="type" transfer-ownership="none">
65341             <doc xml:whitespace="preserve">window to return size from</doc>
65342             <type name="TextWindowType" c:type="GtkTextWindowType"/>
65343           </parameter>
65344         </parameters>
65345       </method>
65346       <method name="forward_display_line"
65347               c:identifier="gtk_text_view_forward_display_line">
65348         <doc xml:whitespace="preserve">Moves the given @iter forward by one display (wrapped) line.
65349 A display line is different from a paragraph. Paragraphs are
65350 separated by newlines or other paragraph separator characters.
65351 Display lines are created by line-wrapping a paragraph. If
65352 wrapping is turned off, display lines and paragraphs will be the
65353 same. Display lines are divided differently for each view, since
65354 they depend on the view's width; paragraphs are the same in all
65355 views, since they depend on the contents of the #GtkTextBuffer.</doc>
65356         <return-value transfer-ownership="none">
65357           <doc xml:whitespace="preserve">%TRUE if @iter was moved and is not on the end iterator</doc>
65358           <type name="boolean" c:type="gboolean"/>
65359         </return-value>
65360         <parameters>
65361           <parameter name="iter" transfer-ownership="none">
65362             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
65363             <type name="TextIter" c:type="GtkTextIter*"/>
65364           </parameter>
65365         </parameters>
65366       </method>
65367       <method name="backward_display_line"
65368               c:identifier="gtk_text_view_backward_display_line">
65369         <doc xml:whitespace="preserve">Moves the given @iter backward by one display (wrapped) line.
65370 A display line is different from a paragraph. Paragraphs are
65371 separated by newlines or other paragraph separator characters.
65372 Display lines are created by line-wrapping a paragraph. If
65373 wrapping is turned off, display lines and paragraphs will be the
65374 same. Display lines are divided differently for each view, since
65375 they depend on the view's width; paragraphs are the same in all
65376 views, since they depend on the contents of the #GtkTextBuffer.</doc>
65377         <return-value transfer-ownership="none">
65378           <doc xml:whitespace="preserve">%TRUE if @iter was moved and is not on the end iterator</doc>
65379           <type name="boolean" c:type="gboolean"/>
65380         </return-value>
65381         <parameters>
65382           <parameter name="iter" transfer-ownership="none">
65383             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
65384             <type name="TextIter" c:type="GtkTextIter*"/>
65385           </parameter>
65386         </parameters>
65387       </method>
65388       <method name="forward_display_line_end"
65389               c:identifier="gtk_text_view_forward_display_line_end">
65390         <doc xml:whitespace="preserve">Moves the given @iter forward to the next display line end.
65391 A display line is different from a paragraph. Paragraphs are
65392 separated by newlines or other paragraph separator characters.
65393 Display lines are created by line-wrapping a paragraph. If
65394 wrapping is turned off, display lines and paragraphs will be the
65395 same. Display lines are divided differently for each view, since
65396 they depend on the view's width; paragraphs are the same in all
65397 views, since they depend on the contents of the #GtkTextBuffer.</doc>
65398         <return-value transfer-ownership="none">
65399           <doc xml:whitespace="preserve">%TRUE if @iter was moved and is not on the end iterator</doc>
65400           <type name="boolean" c:type="gboolean"/>
65401         </return-value>
65402         <parameters>
65403           <parameter name="iter" transfer-ownership="none">
65404             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
65405             <type name="TextIter" c:type="GtkTextIter*"/>
65406           </parameter>
65407         </parameters>
65408       </method>
65409       <method name="backward_display_line_start"
65410               c:identifier="gtk_text_view_backward_display_line_start">
65411         <doc xml:whitespace="preserve">Moves the given @iter backward to the next display line start.
65412 A display line is different from a paragraph. Paragraphs are
65413 separated by newlines or other paragraph separator characters.
65414 Display lines are created by line-wrapping a paragraph. If
65415 wrapping is turned off, display lines and paragraphs will be the
65416 same. Display lines are divided differently for each view, since
65417 they depend on the view's width; paragraphs are the same in all
65418 views, since they depend on the contents of the #GtkTextBuffer.</doc>
65419         <return-value transfer-ownership="none">
65420           <doc xml:whitespace="preserve">%TRUE if @iter was moved and is not on the end iterator</doc>
65421           <type name="boolean" c:type="gboolean"/>
65422         </return-value>
65423         <parameters>
65424           <parameter name="iter" transfer-ownership="none">
65425             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
65426             <type name="TextIter" c:type="GtkTextIter*"/>
65427           </parameter>
65428         </parameters>
65429       </method>
65430       <method name="starts_display_line"
65431               c:identifier="gtk_text_view_starts_display_line">
65432         <doc xml:whitespace="preserve">Determines whether @iter is at the start of a display line.
65433 See gtk_text_view_forward_display_line() for an explanation of
65434 display lines vs. paragraphs.</doc>
65435         <return-value transfer-ownership="none">
65436           <doc xml:whitespace="preserve">%TRUE if @iter begins a wrapped line</doc>
65437           <type name="boolean" c:type="gboolean"/>
65438         </return-value>
65439         <parameters>
65440           <parameter name="iter" transfer-ownership="none">
65441             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
65442             <type name="TextIter" c:type="GtkTextIter*"/>
65443           </parameter>
65444         </parameters>
65445       </method>
65446       <method name="move_visually" c:identifier="gtk_text_view_move_visually">
65447         <doc xml:whitespace="preserve">Move the iterator a given number of characters visually, treating
65448 it as the strong cursor position. If @count is positive, then the
65449 new strong cursor position will be @count positions to the right of
65450 the old cursor position. If @count is negative then the new strong
65451 cursor position will be @count positions to the left of the old
65452 cursor position.
65453 In the presence of bi-directional text, the correspondence
65454 between logical and visual order will depend on the direction
65455 of the current run, and there may be jumps when the cursor
65456 is moved off of the end of a run.</doc>
65457         <return-value transfer-ownership="none">
65458           <doc xml:whitespace="preserve">%TRUE if @iter moved and is not on the end iterator</doc>
65459           <type name="boolean" c:type="gboolean"/>
65460         </return-value>
65461         <parameters>
65462           <parameter name="iter" transfer-ownership="none">
65463             <doc xml:whitespace="preserve">a #GtkTextIter</doc>
65464             <type name="TextIter" c:type="GtkTextIter*"/>
65465           </parameter>
65466           <parameter name="count" transfer-ownership="none">
65467             <doc xml:whitespace="preserve">number of characters to move (negative moves left, positive moves right)</doc>
65468             <type name="int" c:type="gint"/>
65469           </parameter>
65470         </parameters>
65471       </method>
65472       <method name="im_context_filter_keypress"
65473               c:identifier="gtk_text_view_im_context_filter_keypress"
65474               version="2.22">
65475         <doc xml:whitespace="preserve">Allow the #GtkTextView input method to internally handle key press
65476 and release events. If this function returns %TRUE, then no further
65477 processing should be done for this key event. See
65478 gtk_im_context_filter_keypress().
65479 Note that you are expected to call this function from your handler
65480 when overriding key event handling. This is needed in the case when
65481 you need to insert your own key handling between the input method
65482 and the default key event handling of the #GtkTextView.
65483 |[
65484 static gboolean
65485 gtk_foo_bar_key_press_event (GtkWidget   *widget,
65486 GdkEventKey *event)
65487 {
65488 if ((key-&gt;keyval == GDK_Return || key-&gt;keyval == GDK_KP_Enter))
65489 {
65490 if (gtk_text_view_im_context_filter_keypress (GTK_TEXT_VIEW (view), event))
65491 return TRUE;
65492 }
65493 /&amp;ast; Do some stuff &amp;ast;/
65494 return GTK_WIDGET_CLASS (gtk_foo_bar_parent_class)-&gt;key_press_event (widget, event);
65495 }
65496 ]|</doc>
65497         <return-value transfer-ownership="none">
65498           <doc xml:whitespace="preserve">%TRUE if the input method handled the key event.</doc>
65499           <type name="boolean" c:type="gboolean"/>
65500         </return-value>
65501         <parameters>
65502           <parameter name="event" transfer-ownership="none">
65503             <doc xml:whitespace="preserve">the key event</doc>
65504             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
65505           </parameter>
65506         </parameters>
65507       </method>
65508       <method name="reset_im_context"
65509               c:identifier="gtk_text_view_reset_im_context"
65510               version="2.22">
65511         <doc xml:whitespace="preserve">Reset the input method context of the text view if needed.
65512 This can be necessary in the case where modifying the buffer
65513 would confuse on-going input method behavior.</doc>
65514         <return-value transfer-ownership="none">
65515           <type name="none" c:type="void"/>
65516         </return-value>
65517       </method>
65518       <method name="add_child_at_anchor"
65519               c:identifier="gtk_text_view_add_child_at_anchor">
65520         <doc xml:whitespace="preserve">Adds a child widget in the text buffer, at the given @anchor.</doc>
65521         <return-value transfer-ownership="none">
65522           <type name="none" c:type="void"/>
65523         </return-value>
65524         <parameters>
65525           <parameter name="child" transfer-ownership="none">
65526             <doc xml:whitespace="preserve">a #GtkWidget</doc>
65527             <type name="Widget" c:type="GtkWidget*"/>
65528           </parameter>
65529           <parameter name="anchor" transfer-ownership="none">
65530             <doc xml:whitespace="preserve">a #GtkTextChildAnchor in the #GtkTextBuffer for @text_view</doc>
65531             <type name="TextChildAnchor" c:type="GtkTextChildAnchor*"/>
65532           </parameter>
65533         </parameters>
65534       </method>
65535       <method name="add_child_in_window"
65536               c:identifier="gtk_text_view_add_child_in_window">
65537         <doc xml:whitespace="preserve">Adds a child at fixed coordinates in one of the text widget's
65538 windows. The window must have nonzero size (see
65539 gtk_text_view_set_border_window_size()). Note that the child
65540 coordinates are given relative to the #GdkWindow in question, and
65541 that these coordinates have no sane relationship to scrolling. When
65542 placing a child in #GTK_TEXT_WINDOW_WIDGET, scrolling is
65543 irrelevant, the child floats above all scrollable areas. But when
65544 placing a child in one of the scrollable windows (border windows or
65545 text window), you'll need to compute the child's correct position
65546 in buffer coordinates any time scrolling occurs or buffer changes
65547 occur, and then call gtk_text_view_move_child() to update the
65548 child's position. Unfortunately there's no good way to detect that
65549 scrolling has occurred, using the current API; a possible hack
65550 would be to update all child positions when the scroll adjustments
65551 change or the text buffer changes. See bug 64518 on
65552 bugzilla.gnome.org for status of fixing this issue.</doc>
65553         <return-value transfer-ownership="none">
65554           <type name="none" c:type="void"/>
65555         </return-value>
65556         <parameters>
65557           <parameter name="child" transfer-ownership="none">
65558             <doc xml:whitespace="preserve">a #GtkWidget</doc>
65559             <type name="Widget" c:type="GtkWidget*"/>
65560           </parameter>
65561           <parameter name="which_window" transfer-ownership="none">
65562             <doc xml:whitespace="preserve">which window the child should appear in</doc>
65563             <type name="TextWindowType" c:type="GtkTextWindowType"/>
65564           </parameter>
65565           <parameter name="xpos" transfer-ownership="none">
65566             <doc xml:whitespace="preserve">X position of child in window coordinates</doc>
65567             <type name="int" c:type="gint"/>
65568           </parameter>
65569           <parameter name="ypos" transfer-ownership="none">
65570             <doc xml:whitespace="preserve">Y position of child in window coordinates</doc>
65571             <type name="int" c:type="gint"/>
65572           </parameter>
65573         </parameters>
65574       </method>
65575       <method name="move_child" c:identifier="gtk_text_view_move_child">
65576         <doc xml:whitespace="preserve">Updates the position of a child, as for gtk_text_view_add_child_in_window().</doc>
65577         <return-value transfer-ownership="none">
65578           <type name="none" c:type="void"/>
65579         </return-value>
65580         <parameters>
65581           <parameter name="child" transfer-ownership="none">
65582             <doc xml:whitespace="preserve">child widget already added to the text view</doc>
65583             <type name="Widget" c:type="GtkWidget*"/>
65584           </parameter>
65585           <parameter name="xpos" transfer-ownership="none">
65586             <doc xml:whitespace="preserve">new X position in window coordinates</doc>
65587             <type name="int" c:type="gint"/>
65588           </parameter>
65589           <parameter name="ypos" transfer-ownership="none">
65590             <doc xml:whitespace="preserve">new Y position in window coordinates</doc>
65591             <type name="int" c:type="gint"/>
65592           </parameter>
65593         </parameters>
65594       </method>
65595       <method name="set_wrap_mode" c:identifier="gtk_text_view_set_wrap_mode">
65596         <doc xml:whitespace="preserve">Sets the line wrapping for the view.</doc>
65597         <return-value transfer-ownership="none">
65598           <type name="none" c:type="void"/>
65599         </return-value>
65600         <parameters>
65601           <parameter name="wrap_mode" transfer-ownership="none">
65602             <doc xml:whitespace="preserve">a #GtkWrapMode</doc>
65603             <type name="WrapMode" c:type="GtkWrapMode"/>
65604           </parameter>
65605         </parameters>
65606       </method>
65607       <method name="get_wrap_mode" c:identifier="gtk_text_view_get_wrap_mode">
65608         <doc xml:whitespace="preserve">Gets the line wrapping for the view.</doc>
65609         <return-value transfer-ownership="full">
65610           <doc xml:whitespace="preserve">the line wrap setting</doc>
65611           <type name="WrapMode" c:type="GtkWrapMode"/>
65612         </return-value>
65613       </method>
65614       <method name="set_editable" c:identifier="gtk_text_view_set_editable">
65615         <doc xml:whitespace="preserve">Sets the default editability of the #GtkTextView. You can override
65616 this default setting with tags in the buffer, using the "editable"
65617 attribute of tags.</doc>
65618         <return-value transfer-ownership="none">
65619           <type name="none" c:type="void"/>
65620         </return-value>
65621         <parameters>
65622           <parameter name="setting" transfer-ownership="none">
65623             <doc xml:whitespace="preserve">whether it's editable</doc>
65624             <type name="boolean" c:type="gboolean"/>
65625           </parameter>
65626         </parameters>
65627       </method>
65628       <method name="get_editable" c:identifier="gtk_text_view_get_editable">
65629         <doc xml:whitespace="preserve">Returns the default editability of the #GtkTextView. Tags in the
65630 buffer may override this setting for some ranges of text.</doc>
65631         <return-value transfer-ownership="none">
65632           <doc xml:whitespace="preserve">whether text is editable by default</doc>
65633           <type name="boolean" c:type="gboolean"/>
65634         </return-value>
65635       </method>
65636       <method name="set_overwrite"
65637               c:identifier="gtk_text_view_set_overwrite"
65638               version="2.4">
65639         <doc xml:whitespace="preserve">Changes the #GtkTextView overwrite mode.</doc>
65640         <return-value transfer-ownership="none">
65641           <type name="none" c:type="void"/>
65642         </return-value>
65643         <parameters>
65644           <parameter name="overwrite" transfer-ownership="none">
65645             <doc xml:whitespace="preserve">%TRUE to turn on overwrite mode, %FALSE to turn it off</doc>
65646             <type name="boolean" c:type="gboolean"/>
65647           </parameter>
65648         </parameters>
65649       </method>
65650       <method name="get_overwrite"
65651               c:identifier="gtk_text_view_get_overwrite"
65652               version="2.4">
65653         <doc xml:whitespace="preserve">Returns whether the #GtkTextView is in overwrite mode or not.</doc>
65654         <return-value transfer-ownership="none">
65655           <doc xml:whitespace="preserve">whether @text_view is in overwrite mode or not.</doc>
65656           <type name="boolean" c:type="gboolean"/>
65657         </return-value>
65658       </method>
65659       <method name="set_accepts_tab"
65660               c:identifier="gtk_text_view_set_accepts_tab"
65661               version="2.4">
65662         <doc xml:whitespace="preserve">Sets the behavior of the text widget when the Tab key is pressed. 
65663 If @accepts_tab is %TRUE, a tab character is inserted. If @accepts_tab 
65664 is %FALSE the keyboard focus is moved to the next widget in the focus 
65665 chain.</doc>
65666         <return-value transfer-ownership="none">
65667           <type name="none" c:type="void"/>
65668         </return-value>
65669         <parameters>
65670           <parameter name="accepts_tab" transfer-ownership="none">
65671             <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>
65672             <type name="boolean" c:type="gboolean"/>
65673           </parameter>
65674         </parameters>
65675       </method>
65676       <method name="get_accepts_tab"
65677               c:identifier="gtk_text_view_get_accepts_tab"
65678               version="2.4">
65679         <doc xml:whitespace="preserve">Returns whether pressing the Tab key inserts a tab characters.
65680 gtk_text_view_set_accepts_tab().
65681 %FALSE if pressing the Tab key moves the keyboard focus.</doc>
65682         <return-value transfer-ownership="none">
65683           <doc xml:whitespace="preserve">%TRUE if pressing the Tab key inserts a tab character,</doc>
65684           <type name="boolean" c:type="gboolean"/>
65685         </return-value>
65686       </method>
65687       <method name="set_pixels_above_lines"
65688               c:identifier="gtk_text_view_set_pixels_above_lines">
65689         <doc xml:whitespace="preserve">Sets the default number of blank pixels above paragraphs in @text_view.
65690 Tags in the buffer for @text_view may override the defaults.</doc>
65691         <return-value transfer-ownership="none">
65692           <type name="none" c:type="void"/>
65693         </return-value>
65694         <parameters>
65695           <parameter name="pixels_above_lines" transfer-ownership="none">
65696             <doc xml:whitespace="preserve">pixels above paragraphs</doc>
65697             <type name="int" c:type="gint"/>
65698           </parameter>
65699         </parameters>
65700       </method>
65701       <method name="get_pixels_above_lines"
65702               c:identifier="gtk_text_view_get_pixels_above_lines">
65703         <doc xml:whitespace="preserve">Gets the default number of pixels to put above paragraphs.</doc>
65704         <return-value transfer-ownership="none">
65705           <doc xml:whitespace="preserve">default number of pixels above paragraphs</doc>
65706           <type name="int" c:type="gint"/>
65707         </return-value>
65708       </method>
65709       <method name="set_pixels_below_lines"
65710               c:identifier="gtk_text_view_set_pixels_below_lines">
65711         <doc xml:whitespace="preserve">Sets the default number of pixels of blank space
65712 to put below paragraphs in @text_view. May be overridden
65713 by tags applied to @text_view's buffer.</doc>
65714         <return-value transfer-ownership="none">
65715           <type name="none" c:type="void"/>
65716         </return-value>
65717         <parameters>
65718           <parameter name="pixels_below_lines" transfer-ownership="none">
65719             <doc xml:whitespace="preserve">pixels below paragraphs</doc>
65720             <type name="int" c:type="gint"/>
65721           </parameter>
65722         </parameters>
65723       </method>
65724       <method name="get_pixels_below_lines"
65725               c:identifier="gtk_text_view_get_pixels_below_lines">
65726         <doc xml:whitespace="preserve">Gets the value set by gtk_text_view_set_pixels_below_lines().</doc>
65727         <return-value transfer-ownership="none">
65728           <doc xml:whitespace="preserve">default number of blank pixels below paragraphs</doc>
65729           <type name="int" c:type="gint"/>
65730         </return-value>
65731       </method>
65732       <method name="set_pixels_inside_wrap"
65733               c:identifier="gtk_text_view_set_pixels_inside_wrap">
65734         <doc xml:whitespace="preserve">Sets the default number of pixels of blank space to leave between
65735 display/wrapped lines within a paragraph. May be overridden by
65736 tags in @text_view's buffer.</doc>
65737         <return-value transfer-ownership="none">
65738           <type name="none" c:type="void"/>
65739         </return-value>
65740         <parameters>
65741           <parameter name="pixels_inside_wrap" transfer-ownership="none">
65742             <doc xml:whitespace="preserve">default number of pixels between wrapped lines</doc>
65743             <type name="int" c:type="gint"/>
65744           </parameter>
65745         </parameters>
65746       </method>
65747       <method name="get_pixels_inside_wrap"
65748               c:identifier="gtk_text_view_get_pixels_inside_wrap">
65749         <doc xml:whitespace="preserve">Gets the value set by gtk_text_view_set_pixels_inside_wrap().</doc>
65750         <return-value transfer-ownership="none">
65751           <doc xml:whitespace="preserve">default number of pixels of blank space between wrapped lines</doc>
65752           <type name="int" c:type="gint"/>
65753         </return-value>
65754       </method>
65755       <method name="set_justification"
65756               c:identifier="gtk_text_view_set_justification">
65757         <doc xml:whitespace="preserve">Sets the default justification of text in @text_view.
65758 Tags in the view's buffer may override the default.</doc>
65759         <return-value transfer-ownership="none">
65760           <type name="none" c:type="void"/>
65761         </return-value>
65762         <parameters>
65763           <parameter name="justification" transfer-ownership="none">
65764             <doc xml:whitespace="preserve">justification</doc>
65765             <type name="Justification" c:type="GtkJustification"/>
65766           </parameter>
65767         </parameters>
65768       </method>
65769       <method name="get_justification"
65770               c:identifier="gtk_text_view_get_justification">
65771         <doc xml:whitespace="preserve">Gets the default justification of paragraphs in @text_view.
65772 Tags in the buffer may override the default.</doc>
65773         <return-value transfer-ownership="full">
65774           <doc xml:whitespace="preserve">default justification</doc>
65775           <type name="Justification" c:type="GtkJustification"/>
65776         </return-value>
65777       </method>
65778       <method name="set_left_margin"
65779               c:identifier="gtk_text_view_set_left_margin">
65780         <doc xml:whitespace="preserve">Sets the default left margin for text in @text_view.
65781 Tags in the buffer may override the default.</doc>
65782         <return-value transfer-ownership="none">
65783           <type name="none" c:type="void"/>
65784         </return-value>
65785         <parameters>
65786           <parameter name="left_margin" transfer-ownership="none">
65787             <doc xml:whitespace="preserve">left margin in pixels</doc>
65788             <type name="int" c:type="gint"/>
65789           </parameter>
65790         </parameters>
65791       </method>
65792       <method name="get_left_margin"
65793               c:identifier="gtk_text_view_get_left_margin">
65794         <doc xml:whitespace="preserve">Gets the default left margin size of paragraphs in the @text_view.
65795 Tags in the buffer may override the default.</doc>
65796         <return-value transfer-ownership="none">
65797           <doc xml:whitespace="preserve">left margin in pixels</doc>
65798           <type name="int" c:type="gint"/>
65799         </return-value>
65800       </method>
65801       <method name="set_right_margin"
65802               c:identifier="gtk_text_view_set_right_margin">
65803         <doc xml:whitespace="preserve">Sets the default right margin for text in the text view.
65804 Tags in the buffer may override the default.</doc>
65805         <return-value transfer-ownership="none">
65806           <type name="none" c:type="void"/>
65807         </return-value>
65808         <parameters>
65809           <parameter name="right_margin" transfer-ownership="none">
65810             <doc xml:whitespace="preserve">right margin in pixels</doc>
65811             <type name="int" c:type="gint"/>
65812           </parameter>
65813         </parameters>
65814       </method>
65815       <method name="get_right_margin"
65816               c:identifier="gtk_text_view_get_right_margin">
65817         <doc xml:whitespace="preserve">Gets the default right margin for text in @text_view. Tags
65818 in the buffer may override the default.</doc>
65819         <return-value transfer-ownership="none">
65820           <doc xml:whitespace="preserve">right margin in pixels</doc>
65821           <type name="int" c:type="gint"/>
65822         </return-value>
65823       </method>
65824       <method name="set_indent" c:identifier="gtk_text_view_set_indent">
65825         <doc xml:whitespace="preserve">Sets the default indentation for paragraphs in @text_view.
65826 Tags in the buffer may override the default.</doc>
65827         <return-value transfer-ownership="none">
65828           <type name="none" c:type="void"/>
65829         </return-value>
65830         <parameters>
65831           <parameter name="indent" transfer-ownership="none">
65832             <doc xml:whitespace="preserve">indentation in pixels</doc>
65833             <type name="int" c:type="gint"/>
65834           </parameter>
65835         </parameters>
65836       </method>
65837       <method name="get_indent" c:identifier="gtk_text_view_get_indent">
65838         <doc xml:whitespace="preserve">Gets the default indentation of paragraphs in @text_view.
65839 Tags in the view's buffer may override the default.
65840 The indentation may be negative.</doc>
65841         <return-value transfer-ownership="none">
65842           <doc xml:whitespace="preserve">number of pixels of indentation</doc>
65843           <type name="int" c:type="gint"/>
65844         </return-value>
65845       </method>
65846       <method name="set_tabs" c:identifier="gtk_text_view_set_tabs">
65847         <doc xml:whitespace="preserve">Sets the default tab stops for paragraphs in @text_view.
65848 Tags in the buffer may override the default.</doc>
65849         <return-value transfer-ownership="none">
65850           <type name="none" c:type="void"/>
65851         </return-value>
65852         <parameters>
65853           <parameter name="tabs" transfer-ownership="none">
65854             <doc xml:whitespace="preserve">tabs as a #PangoTabArray</doc>
65855             <type name="Pango.TabArray" c:type="PangoTabArray*"/>
65856           </parameter>
65857         </parameters>
65858       </method>
65859       <method name="get_tabs" c:identifier="gtk_text_view_get_tabs">
65860         <doc xml:whitespace="preserve">Gets the default tabs for @text_view. Tags in the buffer may
65861 override the defaults. The returned array will be %NULL if
65862 "standard" (8-space) tabs are used. Free the return value
65863 with pango_tab_array_free().
65864 tabs are used; must be freed with pango_tab_array_free().</doc>
65865         <return-value transfer-ownership="full">
65866           <doc xml:whitespace="preserve">copy of default tab array, or %NULL if "standard"</doc>
65867           <type name="Pango.TabArray" c:type="PangoTabArray*"/>
65868         </return-value>
65869       </method>
65870       <method name="get_default_attributes"
65871               c:identifier="gtk_text_view_get_default_attributes">
65872         <doc xml:whitespace="preserve">Obtains a copy of the default text attributes. These are the
65873 attributes used for text unless a tag overrides them.
65874 You'd typically pass the default attributes in to
65875 gtk_text_iter_get_attributes() in order to get the
65876 attributes in effect at a given text position.
65877 The return value is a copy owned by the caller of this function,
65878 and should be freed.</doc>
65879         <return-value transfer-ownership="full">
65880           <doc xml:whitespace="preserve">a new #GtkTextAttributes</doc>
65881           <type name="TextAttributes" c:type="GtkTextAttributes*"/>
65882         </return-value>
65883       </method>
65884       <property name="accepts-tab" writable="1" transfer-ownership="none">
65885         <type name="boolean" c:type="gboolean"/>
65886       </property>
65887       <property name="buffer" writable="1" transfer-ownership="none">
65888         <type name="TextBuffer" c:type="GtkTextBuffer"/>
65889       </property>
65890       <property name="cursor-visible" writable="1" transfer-ownership="none">
65891         <type name="boolean" c:type="gboolean"/>
65892       </property>
65893       <property name="editable" writable="1" transfer-ownership="none">
65894         <type name="boolean" c:type="gboolean"/>
65895       </property>
65896       <property name="im-module"
65897                 version="2.16"
65898                 writable="1"
65899                 transfer-ownership="none">
65900         <doc xml:whitespace="preserve">Which IM (input method) module should be used for this entry. 
65901 See #GtkIMContext.
65902 Setting this to a non-%NULL value overrides the
65903 system-wide IM module setting. See the GtkSettings 
65904 #GtkSettings:gtk-im-module property.</doc>
65905         <type name="utf8" c:type="gchararray"/>
65906       </property>
65907       <property name="indent" writable="1" transfer-ownership="none">
65908         <type name="int" c:type="gint"/>
65909       </property>
65910       <property name="justification" writable="1" transfer-ownership="none">
65911         <type name="Justification" c:type="GtkJustification"/>
65912       </property>
65913       <property name="left-margin" writable="1" transfer-ownership="none">
65914         <type name="int" c:type="gint"/>
65915       </property>
65916       <property name="overwrite" writable="1" transfer-ownership="none">
65917         <type name="boolean" c:type="gboolean"/>
65918       </property>
65919       <property name="pixels-above-lines"
65920                 writable="1"
65921                 transfer-ownership="none">
65922         <type name="int" c:type="gint"/>
65923       </property>
65924       <property name="pixels-below-lines"
65925                 writable="1"
65926                 transfer-ownership="none">
65927         <type name="int" c:type="gint"/>
65928       </property>
65929       <property name="pixels-inside-wrap"
65930                 writable="1"
65931                 transfer-ownership="none">
65932         <type name="int" c:type="gint"/>
65933       </property>
65934       <property name="right-margin" writable="1" transfer-ownership="none">
65935         <type name="int" c:type="gint"/>
65936       </property>
65937       <property name="tabs" writable="1" transfer-ownership="none">
65938         <type name="Pango.TabArray" c:type="PangoTabArray"/>
65939       </property>
65940       <property name="wrap-mode" writable="1" transfer-ownership="none">
65941         <type name="WrapMode" c:type="GtkWrapMode"/>
65942       </property>
65943       <field name="parent_instance">
65944         <type name="Container" c:type="GtkContainer"/>
65945       </field>
65946       <field name="layout">
65947         <type name="any" c:type="any*"/>
65948       </field>
65949       <field name="buffer">
65950         <type name="TextBuffer" c:type="GtkTextBuffer*"/>
65951       </field>
65952       <field name="selection_drag_handler">
65953         <type name="uint" c:type="guint"/>
65954       </field>
65955       <field name="scroll_timeout">
65956         <type name="uint" c:type="guint"/>
65957       </field>
65958       <field name="pixels_above_lines">
65959         <type name="int" c:type="gint"/>
65960       </field>
65961       <field name="pixels_below_lines">
65962         <type name="int" c:type="gint"/>
65963       </field>
65964       <field name="pixels_inside_wrap">
65965         <type name="int" c:type="gint"/>
65966       </field>
65967       <field name="wrap_mode">
65968         <type name="WrapMode" c:type="GtkWrapMode"/>
65969       </field>
65970       <field name="justify">
65971         <type name="Justification" c:type="GtkJustification"/>
65972       </field>
65973       <field name="left_margin">
65974         <type name="int" c:type="gint"/>
65975       </field>
65976       <field name="right_margin">
65977         <type name="int" c:type="gint"/>
65978       </field>
65979       <field name="indent">
65980         <type name="int" c:type="gint"/>
65981       </field>
65982       <field name="tabs">
65983         <type name="Pango.TabArray" c:type="PangoTabArray*"/>
65984       </field>
65985       <field name="editable" bits="1">
65986         <type name="uint" c:type="guint"/>
65987       </field>
65988       <field name="overwrite_mode" bits="1">
65989         <type name="uint" c:type="guint"/>
65990       </field>
65991       <field name="cursor_visible" bits="1">
65992         <type name="uint" c:type="guint"/>
65993       </field>
65994       <field name="need_im_reset" bits="1">
65995         <type name="uint" c:type="guint"/>
65996       </field>
65997       <field name="accepts_tab" bits="1">
65998         <type name="uint" c:type="guint"/>
65999       </field>
66000       <field name="width_changed" bits="1">
66001         <type name="uint" c:type="guint"/>
66002       </field>
66003       <field name="onscreen_validated" bits="1">
66004         <type name="uint" c:type="guint"/>
66005       </field>
66006       <field name="mouse_cursor_obscured" bits="1">
66007         <type name="uint" c:type="guint"/>
66008       </field>
66009       <field name="text_window">
66010         <type name="TextWindow" c:type="GtkTextWindow*"/>
66011       </field>
66012       <field name="left_window">
66013         <type name="TextWindow" c:type="GtkTextWindow*"/>
66014       </field>
66015       <field name="right_window">
66016         <type name="TextWindow" c:type="GtkTextWindow*"/>
66017       </field>
66018       <field name="top_window">
66019         <type name="TextWindow" c:type="GtkTextWindow*"/>
66020       </field>
66021       <field name="bottom_window">
66022         <type name="TextWindow" c:type="GtkTextWindow*"/>
66023       </field>
66024       <field name="hadjustment">
66025         <type name="Adjustment" c:type="GtkAdjustment*"/>
66026       </field>
66027       <field name="vadjustment">
66028         <type name="Adjustment" c:type="GtkAdjustment*"/>
66029       </field>
66030       <field name="xoffset">
66031         <type name="int" c:type="gint"/>
66032       </field>
66033       <field name="yoffset">
66034         <type name="int" c:type="gint"/>
66035       </field>
66036       <field name="width">
66037         <type name="int" c:type="gint"/>
66038       </field>
66039       <field name="height">
66040         <type name="int" c:type="gint"/>
66041       </field>
66042       <field name="virtual_cursor_x">
66043         <type name="int" c:type="gint"/>
66044       </field>
66045       <field name="virtual_cursor_y">
66046         <type name="int" c:type="gint"/>
66047       </field>
66048       <field name="first_para_mark">
66049         <type name="TextMark" c:type="GtkTextMark*"/>
66050       </field>
66051       <field name="first_para_pixels">
66052         <type name="int" c:type="gint"/>
66053       </field>
66054       <field name="dnd_mark">
66055         <type name="TextMark" c:type="GtkTextMark*"/>
66056       </field>
66057       <field name="blink_timeout">
66058         <type name="uint" c:type="guint"/>
66059       </field>
66060       <field name="first_validate_idle">
66061         <type name="uint" c:type="guint"/>
66062       </field>
66063       <field name="incremental_validate_idle">
66064         <type name="uint" c:type="guint"/>
66065       </field>
66066       <field name="im_context">
66067         <type name="IMContext" c:type="GtkIMContext*"/>
66068       </field>
66069       <field name="popup_menu">
66070         <type name="Widget" c:type="GtkWidget*"/>
66071       </field>
66072       <field name="drag_start_x">
66073         <type name="int" c:type="gint"/>
66074       </field>
66075       <field name="drag_start_y">
66076         <type name="int" c:type="gint"/>
66077       </field>
66078       <field name="children">
66079         <type name="GLib.SList" c:type="GSList*">
66080           <type name="any" c:type="gpointer"/>
66081         </type>
66082       </field>
66083       <field name="pending_scroll">
66084         <type name="TextPendingScroll" c:type="GtkTextPendingScroll*"/>
66085       </field>
66086       <field name="pending_place_cursor_button">
66087         <type name="int" c:type="gint"/>
66088       </field>
66089       <glib:signal name="backspace">
66090         <doc xml:whitespace="preserve">The ::backspace signal is a 
66091 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
66092 which gets emitted when the user asks for it.
66093 The default bindings for this signal are
66094 Backspace and Shift-Backspace.</doc>
66095         <return-value transfer-ownership="full">
66096           <type name="none" c:type="void"/>
66097         </return-value>
66098       </glib:signal>
66099       <glib:signal name="copy-clipboard">
66100         <doc xml:whitespace="preserve">The ::copy-clipboard signal is a 
66101 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
66102 which gets emitted to copy the selection to the clipboard.
66103 The default bindings for this signal are
66104 Ctrl-c and Ctrl-Insert.</doc>
66105         <return-value transfer-ownership="full">
66106           <type name="none" c:type="void"/>
66107         </return-value>
66108       </glib:signal>
66109       <glib:signal name="cut-clipboard">
66110         <doc xml:whitespace="preserve">The ::cut-clipboard signal is a 
66111 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
66112 which gets emitted to cut the selection to the clipboard.
66113 The default bindings for this signal are
66114 Ctrl-x and Shift-Delete.</doc>
66115         <return-value transfer-ownership="full">
66116           <type name="none" c:type="void"/>
66117         </return-value>
66118       </glib:signal>
66119       <glib:signal name="delete-from-cursor">
66120         <doc xml:whitespace="preserve">The ::delete-from-cursor signal is a 
66121 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
66122 which gets emitted when the user initiates a text deletion.
66123 If the @type is %GTK_DELETE_CHARS, GTK+ deletes the selection
66124 if there is one, otherwise it deletes the requested number
66125 of characters.
66126 The default bindings for this signal are
66127 Delete for deleting a character, Ctrl-Delete for 
66128 deleting a word and Ctrl-Backspace for deleting a word 
66129 backwords.</doc>
66130         <return-value transfer-ownership="full">
66131           <type name="none" c:type="void"/>
66132         </return-value>
66133         <parameters>
66134           <parameter name="type" transfer-ownership="none">
66135             <doc xml:whitespace="preserve">the granularity of the deletion, as a #GtkDeleteType</doc>
66136             <type name="DeleteType" c:type="GtkDeleteType"/>
66137           </parameter>
66138           <parameter name="count" transfer-ownership="none">
66139             <doc xml:whitespace="preserve">the number of @type units to delete</doc>
66140             <type name="int" c:type="gint"/>
66141           </parameter>
66142         </parameters>
66143       </glib:signal>
66144       <glib:signal name="insert-at-cursor">
66145         <doc xml:whitespace="preserve">The ::insert-at-cursor signal is a
66146 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
66147 which gets emitted when the user initiates the insertion of a 
66148 fixed string at the cursor.
66149 This signal has no default bindings.</doc>
66150         <return-value transfer-ownership="full">
66151           <type name="none" c:type="void"/>
66152         </return-value>
66153         <parameters>
66154           <parameter name="string" transfer-ownership="none">
66155             <doc xml:whitespace="preserve">the string to insert</doc>
66156             <type name="utf8" c:type="gchararray"/>
66157           </parameter>
66158         </parameters>
66159       </glib:signal>
66160       <glib:signal name="move-cursor">
66161         <doc xml:whitespace="preserve">The ::move-cursor signal is a 
66162 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
66163 which gets emitted when the user initiates a cursor movement. 
66164 If the cursor is not visible in @text_view, this signal causes
66165 the viewport to be moved instead.
66166 Applications should not connect to it, but may emit it with 
66167 g_signal_emit_by_name() if they need to control the cursor
66168 programmatically.
66169 The default bindings for this signal come in two variants,
66170 the variant with the Shift modifier extends the selection,
66171 the variant without the Shift modifer does not.
66172 There are too many key combinations to list them all here.
66173 &lt;itemizedlist&gt;
66174 &lt;listitem&gt;Arrow keys move by individual characters/lines&lt;/listitem&gt;
66175 &lt;listitem&gt;Ctrl-arrow key combinations move by words/paragraphs&lt;/listitem&gt;
66176 &lt;listitem&gt;Home/End keys move to the ends of the buffer&lt;/listitem&gt;
66177 &lt;listitem&gt;PageUp/PageDown keys move vertically by pages&lt;/listitem&gt;
66178 &lt;listitem&gt;Ctrl-PageUp/PageDown keys move horizontally by pages&lt;/listitem&gt;
66179 &lt;/itemizedlist&gt;</doc>
66180         <return-value transfer-ownership="full">
66181           <type name="none" c:type="void"/>
66182         </return-value>
66183         <parameters>
66184           <parameter name="step" transfer-ownership="none">
66185             <doc xml:whitespace="preserve">the granularity of the move, as a #GtkMovementStep</doc>
66186             <type name="MovementStep" c:type="GtkMovementStep"/>
66187           </parameter>
66188           <parameter name="count" transfer-ownership="none">
66189             <doc xml:whitespace="preserve">the number of @step units to move</doc>
66190             <type name="int" c:type="gint"/>
66191           </parameter>
66192           <parameter name="extend_selection" transfer-ownership="none">
66193             <doc xml:whitespace="preserve">%TRUE if the move should extend the selection</doc>
66194             <type name="boolean" c:type="gboolean"/>
66195           </parameter>
66196         </parameters>
66197       </glib:signal>
66198       <glib:signal name="move-viewport">
66199         <doc xml:whitespace="preserve">The ::move-viewport signal is a 
66200 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
66201 which can be bound to key combinations to allow the user
66202 to move the viewport, i.e. change what part of the text view
66203 is visible in a containing scrolled window.
66204 There are no default bindings for this signal.</doc>
66205         <return-value transfer-ownership="full">
66206           <type name="none" c:type="void"/>
66207         </return-value>
66208         <parameters>
66209           <parameter name="step" transfer-ownership="none">
66210             <doc xml:whitespace="preserve">the granularity of the move, as a #GtkMovementStep</doc>
66211             <type name="ScrollStep" c:type="GtkScrollStep"/>
66212           </parameter>
66213           <parameter name="count" transfer-ownership="none">
66214             <doc xml:whitespace="preserve">the number of @step units to move</doc>
66215             <type name="int" c:type="gint"/>
66216           </parameter>
66217         </parameters>
66218       </glib:signal>
66219       <glib:signal name="page-horizontally">
66220         <doc xml:whitespace="preserve">The ::page-horizontally signal is a 
66221 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
66222 which can be bound to key combinations to allow the user
66223 to initiate horizontal cursor movement by pages.  
66224 This signal should not be used anymore, instead use the
66225 #GtkTextview::move-cursor signal with the #GTK_MOVEMENT_HORIZONTAL_PAGES
66226 granularity.</doc>
66227         <return-value transfer-ownership="full">
66228           <type name="none" c:type="void"/>
66229         </return-value>
66230         <parameters>
66231           <parameter name="count" transfer-ownership="none">
66232             <doc xml:whitespace="preserve">the number of @step units to move</doc>
66233             <type name="int" c:type="gint"/>
66234           </parameter>
66235           <parameter name="extend_selection" transfer-ownership="none">
66236             <doc xml:whitespace="preserve">%TRUE if the move should extend the selection</doc>
66237             <type name="boolean" c:type="gboolean"/>
66238           </parameter>
66239         </parameters>
66240       </glib:signal>
66241       <glib:signal name="paste-clipboard">
66242         <doc xml:whitespace="preserve">The ::paste-clipboard signal is a 
66243 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
66244 which gets emitted to paste the contents of the clipboard 
66245 into the text view.
66246 The default bindings for this signal are
66247 Ctrl-v and Shift-Insert.</doc>
66248         <return-value transfer-ownership="full">
66249           <type name="none" c:type="void"/>
66250         </return-value>
66251       </glib:signal>
66252       <glib:signal name="populate-popup">
66253         <doc xml:whitespace="preserve">The ::populate-popup signal gets emitted before showing the 
66254 context menu of the text view.
66255 If you need to add items to the context menu, connect
66256 to this signal and append your menuitems to the @menu.</doc>
66257         <return-value transfer-ownership="full">
66258           <type name="none" c:type="void"/>
66259         </return-value>
66260         <parameters>
66261           <parameter name="menu" transfer-ownership="none">
66262             <doc xml:whitespace="preserve">the menu that is being populated</doc>
66263             <type name="Menu" c:type="GtkMenu"/>
66264           </parameter>
66265         </parameters>
66266       </glib:signal>
66267       <glib:signal name="preedit-changed" version="2.20">
66268         <doc xml:whitespace="preserve">If an input method is used, the typed text will not immediately
66269 be committed to the buffer. So if you are interested in the text,
66270 connect to this signal.
66271 This signal is only emitted if the text at the given position
66272 is actually editable.</doc>
66273         <return-value transfer-ownership="full">
66274           <type name="none" c:type="void"/>
66275         </return-value>
66276         <parameters>
66277           <parameter name="preedit" transfer-ownership="none">
66278             <doc xml:whitespace="preserve">the current preedit string</doc>
66279             <type name="utf8" c:type="gchararray"/>
66280           </parameter>
66281         </parameters>
66282       </glib:signal>
66283       <glib:signal name="select-all">
66284         <doc xml:whitespace="preserve">The ::select-all signal is a 
66285 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
66286 which gets emitted to select or unselect the complete
66287 contents of the text view.
66288 The default bindings for this signal are Ctrl-a and Ctrl-/ 
66289 for selecting and Shift-Ctrl-a and Ctrl-\ for unselecting.</doc>
66290         <return-value transfer-ownership="full">
66291           <type name="none" c:type="void"/>
66292         </return-value>
66293         <parameters>
66294           <parameter name="select" transfer-ownership="none">
66295             <doc xml:whitespace="preserve">%TRUE to select, %FALSE to unselect</doc>
66296             <type name="boolean" c:type="gboolean"/>
66297           </parameter>
66298         </parameters>
66299       </glib:signal>
66300       <glib:signal name="set-anchor">
66301         <doc xml:whitespace="preserve">The ::set-anchor signal is a
66302 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
66303 which gets emitted when the user initiates setting the "anchor" 
66304 mark. The "anchor" mark gets placed at the same position as the
66305 "insert" mark.
66306 This signal has no default bindings.</doc>
66307         <return-value transfer-ownership="full">
66308           <type name="none" c:type="void"/>
66309         </return-value>
66310       </glib:signal>
66311       <glib:signal name="set-scroll-adjustments">
66312         <return-value transfer-ownership="full">
66313           <type name="none" c:type="void"/>
66314         </return-value>
66315         <parameters>
66316           <parameter name="object" transfer-ownership="none">
66317             <type name="Adjustment" c:type="GtkAdjustment"/>
66318           </parameter>
66319           <parameter name="p0" transfer-ownership="none">
66320             <type name="Adjustment" c:type="GtkAdjustment"/>
66321           </parameter>
66322         </parameters>
66323       </glib:signal>
66324       <glib:signal name="toggle-cursor-visible">
66325         <doc xml:whitespace="preserve">The ::toggle-cursor-visible signal is a 
66326 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
66327 which gets emitted to toggle the visibility of the cursor.
66328 The default binding for this signal is F7.</doc>
66329         <return-value transfer-ownership="full">
66330           <type name="none" c:type="void"/>
66331         </return-value>
66332       </glib:signal>
66333       <glib:signal name="toggle-overwrite">
66334         <doc xml:whitespace="preserve">The ::toggle-overwrite signal is a 
66335 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt; 
66336 which gets emitted to toggle the overwrite mode of the text view.
66337 The default bindings for this signal is Insert.</doc>
66338         <return-value transfer-ownership="full">
66339           <type name="none" c:type="void"/>
66340         </return-value>
66341       </glib:signal>
66342     </class>
66343     <record name="TextViewClass"
66344             c:type="GtkTextViewClass"
66345             glib:is-gtype-struct-for="TextView">
66346       <field name="parent_class">
66347         <type name="ContainerClass" c:type="GtkContainerClass"/>
66348       </field>
66349       <field name="set_scroll_adjustments">
66350         <callback name="set_scroll_adjustments"
66351                   c:type="set_scroll_adjustments">
66352           <return-value transfer-ownership="none">
66353             <type name="none" c:type="void"/>
66354           </return-value>
66355           <parameters>
66356             <parameter name="text_view" transfer-ownership="none">
66357               <type name="TextView" c:type="GtkTextView*"/>
66358             </parameter>
66359             <parameter name="hadjustment" transfer-ownership="none">
66360               <type name="Adjustment" c:type="GtkAdjustment*"/>
66361             </parameter>
66362             <parameter name="vadjustment" transfer-ownership="none">
66363               <type name="Adjustment" c:type="GtkAdjustment*"/>
66364             </parameter>
66365           </parameters>
66366         </callback>
66367       </field>
66368       <field name="populate_popup">
66369         <callback name="populate_popup" c:type="populate_popup">
66370           <return-value transfer-ownership="none">
66371             <type name="none" c:type="void"/>
66372           </return-value>
66373           <parameters>
66374             <parameter name="text_view" transfer-ownership="none">
66375               <type name="TextView" c:type="GtkTextView*"/>
66376             </parameter>
66377             <parameter name="menu" transfer-ownership="none">
66378               <type name="Menu" c:type="GtkMenu*"/>
66379             </parameter>
66380           </parameters>
66381         </callback>
66382       </field>
66383       <field name="move_cursor">
66384         <callback name="move_cursor" c:type="move_cursor">
66385           <return-value transfer-ownership="none">
66386             <type name="none" c:type="void"/>
66387           </return-value>
66388           <parameters>
66389             <parameter name="text_view" transfer-ownership="none">
66390               <type name="TextView" c:type="GtkTextView*"/>
66391             </parameter>
66392             <parameter name="step" transfer-ownership="none">
66393               <type name="MovementStep" c:type="GtkMovementStep"/>
66394             </parameter>
66395             <parameter name="count" transfer-ownership="none">
66396               <type name="int" c:type="gint"/>
66397             </parameter>
66398             <parameter name="extend_selection" transfer-ownership="none">
66399               <type name="boolean" c:type="gboolean"/>
66400             </parameter>
66401           </parameters>
66402         </callback>
66403       </field>
66404       <field name="page_horizontally">
66405         <callback name="page_horizontally" c:type="page_horizontally">
66406           <return-value transfer-ownership="none">
66407             <type name="none" c:type="void"/>
66408           </return-value>
66409           <parameters>
66410             <parameter name="text_view" transfer-ownership="none">
66411               <type name="TextView" c:type="GtkTextView*"/>
66412             </parameter>
66413             <parameter name="count" transfer-ownership="none">
66414               <type name="int" c:type="gint"/>
66415             </parameter>
66416             <parameter name="extend_selection" transfer-ownership="none">
66417               <type name="boolean" c:type="gboolean"/>
66418             </parameter>
66419           </parameters>
66420         </callback>
66421       </field>
66422       <field name="set_anchor">
66423         <callback name="set_anchor" c:type="set_anchor">
66424           <return-value transfer-ownership="none">
66425             <type name="none" c:type="void"/>
66426           </return-value>
66427           <parameters>
66428             <parameter name="text_view" transfer-ownership="none">
66429               <type name="TextView" c:type="GtkTextView*"/>
66430             </parameter>
66431           </parameters>
66432         </callback>
66433       </field>
66434       <field name="insert_at_cursor">
66435         <callback name="insert_at_cursor" c:type="insert_at_cursor">
66436           <return-value transfer-ownership="none">
66437             <type name="none" c:type="void"/>
66438           </return-value>
66439           <parameters>
66440             <parameter name="text_view" transfer-ownership="none">
66441               <type name="TextView" c:type="GtkTextView*"/>
66442             </parameter>
66443             <parameter name="str" transfer-ownership="none">
66444               <type name="utf8" c:type="gchar*"/>
66445             </parameter>
66446           </parameters>
66447         </callback>
66448       </field>
66449       <field name="delete_from_cursor">
66450         <callback name="delete_from_cursor" c:type="delete_from_cursor">
66451           <return-value transfer-ownership="none">
66452             <type name="none" c:type="void"/>
66453           </return-value>
66454           <parameters>
66455             <parameter name="text_view" transfer-ownership="none">
66456               <type name="TextView" c:type="GtkTextView*"/>
66457             </parameter>
66458             <parameter name="type" transfer-ownership="none">
66459               <type name="DeleteType" c:type="GtkDeleteType"/>
66460             </parameter>
66461             <parameter name="count" transfer-ownership="none">
66462               <type name="int" c:type="gint"/>
66463             </parameter>
66464           </parameters>
66465         </callback>
66466       </field>
66467       <field name="backspace">
66468         <callback name="backspace" c:type="backspace">
66469           <return-value transfer-ownership="none">
66470             <type name="none" c:type="void"/>
66471           </return-value>
66472           <parameters>
66473             <parameter name="text_view" transfer-ownership="none">
66474               <type name="TextView" c:type="GtkTextView*"/>
66475             </parameter>
66476           </parameters>
66477         </callback>
66478       </field>
66479       <field name="cut_clipboard">
66480         <callback name="cut_clipboard" c:type="cut_clipboard">
66481           <return-value transfer-ownership="none">
66482             <type name="none" c:type="void"/>
66483           </return-value>
66484           <parameters>
66485             <parameter name="text_view" transfer-ownership="none">
66486               <type name="TextView" c:type="GtkTextView*"/>
66487             </parameter>
66488           </parameters>
66489         </callback>
66490       </field>
66491       <field name="copy_clipboard">
66492         <callback name="copy_clipboard" c:type="copy_clipboard">
66493           <return-value transfer-ownership="none">
66494             <type name="none" c:type="void"/>
66495           </return-value>
66496           <parameters>
66497             <parameter name="text_view" transfer-ownership="none">
66498               <type name="TextView" c:type="GtkTextView*"/>
66499             </parameter>
66500           </parameters>
66501         </callback>
66502       </field>
66503       <field name="paste_clipboard">
66504         <callback name="paste_clipboard" c:type="paste_clipboard">
66505           <return-value transfer-ownership="none">
66506             <type name="none" c:type="void"/>
66507           </return-value>
66508           <parameters>
66509             <parameter name="text_view" transfer-ownership="none">
66510               <type name="TextView" c:type="GtkTextView*"/>
66511             </parameter>
66512           </parameters>
66513         </callback>
66514       </field>
66515       <field name="toggle_overwrite">
66516         <callback name="toggle_overwrite" c:type="toggle_overwrite">
66517           <return-value transfer-ownership="none">
66518             <type name="none" c:type="void"/>
66519           </return-value>
66520           <parameters>
66521             <parameter name="text_view" transfer-ownership="none">
66522               <type name="TextView" c:type="GtkTextView*"/>
66523             </parameter>
66524           </parameters>
66525         </callback>
66526       </field>
66527       <field name="move_focus">
66528         <callback name="move_focus" c:type="move_focus">
66529           <return-value transfer-ownership="none">
66530             <type name="none" c:type="void"/>
66531           </return-value>
66532           <parameters>
66533             <parameter name="text_view" transfer-ownership="none">
66534               <type name="TextView" c:type="GtkTextView*"/>
66535             </parameter>
66536             <parameter name="direction" transfer-ownership="none">
66537               <type name="DirectionType" c:type="GtkDirectionType"/>
66538             </parameter>
66539           </parameters>
66540         </callback>
66541       </field>
66542       <field name="gtk_reserved1">
66543         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
66544           <return-value transfer-ownership="none">
66545             <type name="none" c:type="void"/>
66546           </return-value>
66547         </callback>
66548       </field>
66549       <field name="gtk_reserved2">
66550         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
66551           <return-value transfer-ownership="none">
66552             <type name="none" c:type="void"/>
66553           </return-value>
66554         </callback>
66555       </field>
66556       <field name="gtk_reserved3">
66557         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
66558           <return-value transfer-ownership="none">
66559             <type name="none" c:type="void"/>
66560           </return-value>
66561         </callback>
66562       </field>
66563       <field name="gtk_reserved4">
66564         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
66565           <return-value transfer-ownership="none">
66566             <type name="none" c:type="void"/>
66567           </return-value>
66568         </callback>
66569       </field>
66570       <field name="gtk_reserved5">
66571         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
66572           <return-value transfer-ownership="none">
66573             <type name="none" c:type="void"/>
66574           </return-value>
66575         </callback>
66576       </field>
66577       <field name="gtk_reserved6">
66578         <callback name="gtk_reserved6" c:type="_gtk_reserved6">
66579           <return-value transfer-ownership="none">
66580             <type name="none" c:type="void"/>
66581           </return-value>
66582         </callback>
66583       </field>
66584       <field name="gtk_reserved7">
66585         <callback name="gtk_reserved7" c:type="_gtk_reserved7">
66586           <return-value transfer-ownership="none">
66587             <type name="none" c:type="void"/>
66588           </return-value>
66589         </callback>
66590       </field>
66591     </record>
66592     <record name="TextWindow" c:type="GtkTextWindow">
66593     </record>
66594     <enumeration name="TextWindowType"
66595                  glib:type-name="GtkTextWindowType"
66596                  glib:get-type="gtk_text_window_type_get_type"
66597                  c:type="GtkTextWindowType">
66598       <member name="private"
66599               value="0"
66600               c:identifier="GTK_TEXT_WINDOW_PRIVATE"
66601               glib:nick="private"/>
66602       <member name="widget"
66603               value="1"
66604               c:identifier="GTK_TEXT_WINDOW_WIDGET"
66605               glib:nick="widget"/>
66606       <member name="text"
66607               value="2"
66608               c:identifier="GTK_TEXT_WINDOW_TEXT"
66609               glib:nick="text"/>
66610       <member name="left"
66611               value="3"
66612               c:identifier="GTK_TEXT_WINDOW_LEFT"
66613               glib:nick="left"/>
66614       <member name="right"
66615               value="4"
66616               c:identifier="GTK_TEXT_WINDOW_RIGHT"
66617               glib:nick="right"/>
66618       <member name="top"
66619               value="5"
66620               c:identifier="GTK_TEXT_WINDOW_TOP"
66621               glib:nick="top"/>
66622       <member name="bottom"
66623               value="6"
66624               c:identifier="GTK_TEXT_WINDOW_BOTTOM"
66625               glib:nick="bottom"/>
66626     </enumeration>
66627     <record name="ThemeEngine" c:type="GtkThemeEngine">
66628     </record>
66629     <class name="TipsQuery"
66630            c:type="GtkTipsQuery"
66631            parent="Label"
66632            glib:type-name="GtkTipsQuery"
66633            glib:get-type="gtk_tips_query_get_type"
66634            glib:type-struct="TipsQueryClass">
66635       <implements name="Atk.ImplementorIface"/>
66636       <implements name="Buildable"/>
66637       <constructor name="new" c:identifier="gtk_tips_query_new">
66638         <return-value transfer-ownership="full">
66639           <type name="TipsQuery" c:type="GtkWidget*"/>
66640         </return-value>
66641       </constructor>
66642       <method name="start_query" c:identifier="gtk_tips_query_start_query">
66643         <return-value transfer-ownership="none">
66644           <type name="none" c:type="void"/>
66645         </return-value>
66646       </method>
66647       <method name="stop_query" c:identifier="gtk_tips_query_stop_query">
66648         <return-value transfer-ownership="none">
66649           <type name="none" c:type="void"/>
66650         </return-value>
66651       </method>
66652       <method name="set_caller" c:identifier="gtk_tips_query_set_caller">
66653         <return-value transfer-ownership="none">
66654           <type name="none" c:type="void"/>
66655         </return-value>
66656         <parameters>
66657           <parameter name="caller" transfer-ownership="none">
66658             <type name="Widget" c:type="GtkWidget*"/>
66659           </parameter>
66660         </parameters>
66661       </method>
66662       <method name="set_labels" c:identifier="gtk_tips_query_set_labels">
66663         <return-value transfer-ownership="none">
66664           <type name="none" c:type="void"/>
66665         </return-value>
66666         <parameters>
66667           <parameter name="label_inactive" transfer-ownership="none">
66668             <type name="utf8" c:type="gchar*"/>
66669           </parameter>
66670           <parameter name="label_no_tip" transfer-ownership="none">
66671             <type name="utf8" c:type="gchar*"/>
66672           </parameter>
66673         </parameters>
66674       </method>
66675       <property name="caller" writable="1" transfer-ownership="none">
66676         <type name="Widget" c:type="GtkWidget"/>
66677       </property>
66678       <property name="emit-always" writable="1" transfer-ownership="none">
66679         <type name="boolean" c:type="gboolean"/>
66680       </property>
66681       <property name="label-inactive" writable="1" transfer-ownership="none">
66682         <type name="utf8" c:type="gchararray"/>
66683       </property>
66684       <property name="label-no-tip" writable="1" transfer-ownership="none">
66685         <type name="utf8" c:type="gchararray"/>
66686       </property>
66687       <field name="label">
66688         <type name="Label" c:type="GtkLabel"/>
66689       </field>
66690       <field name="emit_always" bits="1">
66691         <type name="uint" c:type="guint"/>
66692       </field>
66693       <field name="in_query" bits="1">
66694         <type name="uint" c:type="guint"/>
66695       </field>
66696       <field name="label_inactive">
66697         <type name="utf8" c:type="gchar*"/>
66698       </field>
66699       <field name="label_no_tip">
66700         <type name="utf8" c:type="gchar*"/>
66701       </field>
66702       <field name="caller">
66703         <type name="Widget" c:type="GtkWidget*"/>
66704       </field>
66705       <field name="last_crossed">
66706         <type name="Widget" c:type="GtkWidget*"/>
66707       </field>
66708       <field name="query_cursor">
66709         <type name="Gdk.Cursor" c:type="GdkCursor*"/>
66710       </field>
66711       <glib:signal name="start-query">
66712         <return-value transfer-ownership="full">
66713           <type name="none" c:type="void"/>
66714         </return-value>
66715       </glib:signal>
66716       <glib:signal name="stop-query">
66717         <return-value transfer-ownership="full">
66718           <type name="none" c:type="void"/>
66719         </return-value>
66720       </glib:signal>
66721       <glib:signal name="widget-entered">
66722         <return-value transfer-ownership="full">
66723           <type name="none" c:type="void"/>
66724         </return-value>
66725         <parameters>
66726           <parameter name="object" transfer-ownership="none">
66727             <type name="Widget" c:type="GtkWidget"/>
66728           </parameter>
66729           <parameter name="p0" transfer-ownership="none">
66730             <type name="utf8" c:type="gchararray"/>
66731           </parameter>
66732           <parameter name="p1" transfer-ownership="none">
66733             <type name="utf8" c:type="gchararray"/>
66734           </parameter>
66735         </parameters>
66736       </glib:signal>
66737       <glib:signal name="widget-selected">
66738         <return-value transfer-ownership="full">
66739           <type name="boolean" c:type="gboolean"/>
66740         </return-value>
66741         <parameters>
66742           <parameter name="object" transfer-ownership="none">
66743             <type name="Widget" c:type="GtkWidget"/>
66744           </parameter>
66745           <parameter name="p0" transfer-ownership="none">
66746             <type name="utf8" c:type="gchararray"/>
66747           </parameter>
66748           <parameter name="p1" transfer-ownership="none">
66749             <type name="utf8" c:type="gchararray"/>
66750           </parameter>
66751           <parameter name="p2" transfer-ownership="none">
66752             <type name="Gdk.Event" c:type="GdkEvent"/>
66753           </parameter>
66754         </parameters>
66755       </glib:signal>
66756     </class>
66757     <record name="TipsQueryClass"
66758             c:type="GtkTipsQueryClass"
66759             glib:is-gtype-struct-for="TipsQuery">
66760       <field name="parent_class">
66761         <type name="LabelClass" c:type="GtkLabelClass"/>
66762       </field>
66763       <field name="start_query">
66764         <callback name="start_query" c:type="start_query">
66765           <return-value transfer-ownership="none">
66766             <type name="none" c:type="void"/>
66767           </return-value>
66768           <parameters>
66769             <parameter name="tips_query" transfer-ownership="none">
66770               <type name="TipsQuery" c:type="GtkTipsQuery*"/>
66771             </parameter>
66772           </parameters>
66773         </callback>
66774       </field>
66775       <field name="stop_query">
66776         <callback name="stop_query" c:type="stop_query">
66777           <return-value transfer-ownership="none">
66778             <type name="none" c:type="void"/>
66779           </return-value>
66780           <parameters>
66781             <parameter name="tips_query" transfer-ownership="none">
66782               <type name="TipsQuery" c:type="GtkTipsQuery*"/>
66783             </parameter>
66784           </parameters>
66785         </callback>
66786       </field>
66787       <field name="widget_entered">
66788         <callback name="widget_entered" c:type="widget_entered">
66789           <return-value transfer-ownership="none">
66790             <type name="none" c:type="void"/>
66791           </return-value>
66792           <parameters>
66793             <parameter name="tips_query" transfer-ownership="none">
66794               <type name="TipsQuery" c:type="GtkTipsQuery*"/>
66795             </parameter>
66796             <parameter name="widget" transfer-ownership="none">
66797               <type name="Widget" c:type="GtkWidget*"/>
66798             </parameter>
66799             <parameter name="tip_text" transfer-ownership="none">
66800               <type name="utf8" c:type="gchar*"/>
66801             </parameter>
66802             <parameter name="tip_private" transfer-ownership="none">
66803               <type name="utf8" c:type="gchar*"/>
66804             </parameter>
66805           </parameters>
66806         </callback>
66807       </field>
66808       <field name="widget_selected">
66809         <callback name="widget_selected" c:type="widget_selected">
66810           <return-value transfer-ownership="none">
66811             <type name="int" c:type="gint"/>
66812           </return-value>
66813           <parameters>
66814             <parameter name="tips_query" transfer-ownership="none">
66815               <type name="TipsQuery" c:type="GtkTipsQuery*"/>
66816             </parameter>
66817             <parameter name="widget" transfer-ownership="none">
66818               <type name="Widget" c:type="GtkWidget*"/>
66819             </parameter>
66820             <parameter name="tip_text" transfer-ownership="none">
66821               <type name="utf8" c:type="gchar*"/>
66822             </parameter>
66823             <parameter name="tip_private" transfer-ownership="none">
66824               <type name="utf8" c:type="gchar*"/>
66825             </parameter>
66826             <parameter name="event" transfer-ownership="none">
66827               <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
66828             </parameter>
66829           </parameters>
66830         </callback>
66831       </field>
66832       <field name="gtk_reserved1">
66833         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
66834           <return-value transfer-ownership="none">
66835             <type name="none" c:type="void"/>
66836           </return-value>
66837         </callback>
66838       </field>
66839       <field name="gtk_reserved2">
66840         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
66841           <return-value transfer-ownership="none">
66842             <type name="none" c:type="void"/>
66843           </return-value>
66844         </callback>
66845       </field>
66846       <field name="gtk_reserved3">
66847         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
66848           <return-value transfer-ownership="none">
66849             <type name="none" c:type="void"/>
66850           </return-value>
66851         </callback>
66852       </field>
66853       <field name="gtk_reserved4">
66854         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
66855           <return-value transfer-ownership="none">
66856             <type name="none" c:type="void"/>
66857           </return-value>
66858         </callback>
66859       </field>
66860     </record>
66861     <class name="ToggleAction"
66862            c:type="GtkToggleAction"
66863            parent="Action"
66864            glib:type-name="GtkToggleAction"
66865            glib:get-type="gtk_toggle_action_get_type"
66866            glib:type-struct="ToggleActionClass">
66867       <implements name="Buildable"/>
66868       <constructor name="new"
66869                    c:identifier="gtk_toggle_action_new"
66870                    version="2.4">
66871         <doc xml:whitespace="preserve">Creates a new #GtkToggleAction object. To add the action to
66872 a #GtkActionGroup and set the accelerator for the action,
66873 call gtk_action_group_add_action_with_accel().</doc>
66874         <return-value transfer-ownership="full">
66875           <doc xml:whitespace="preserve">a new #GtkToggleAction</doc>
66876           <type name="ToggleAction" c:type="GtkToggleAction*"/>
66877         </return-value>
66878         <parameters>
66879           <parameter name="name" transfer-ownership="none">
66880             <doc xml:whitespace="preserve">A unique name for the action</doc>
66881             <type name="utf8" c:type="gchar*"/>
66882           </parameter>
66883           <parameter name="label" transfer-ownership="none" allow-none="1">
66884             <doc xml:whitespace="preserve">The label displayed in menu items and on buttons, or %NULL</doc>
66885             <type name="utf8" c:type="gchar*"/>
66886           </parameter>
66887           <parameter name="tooltip" transfer-ownership="none" allow-none="1">
66888             <doc xml:whitespace="preserve">A tooltip for the action, or %NULL</doc>
66889             <type name="utf8" c:type="gchar*"/>
66890           </parameter>
66891           <parameter name="stock_id" transfer-ownership="none">
66892             <doc xml:whitespace="preserve">The stock icon to display in widgets representing the action, or %NULL</doc>
66893             <type name="utf8" c:type="gchar*"/>
66894           </parameter>
66895         </parameters>
66896       </constructor>
66897       <method name="toggled"
66898               c:identifier="gtk_toggle_action_toggled"
66899               version="2.4">
66900         <doc xml:whitespace="preserve">Emits the "toggled" signal on the toggle action.</doc>
66901         <return-value transfer-ownership="none">
66902           <type name="none" c:type="void"/>
66903         </return-value>
66904       </method>
66905       <method name="set_active"
66906               c:identifier="gtk_toggle_action_set_active"
66907               version="2.4">
66908         <doc xml:whitespace="preserve">Sets the checked state on the toggle action.</doc>
66909         <return-value transfer-ownership="none">
66910           <type name="none" c:type="void"/>
66911         </return-value>
66912         <parameters>
66913           <parameter name="is_active" transfer-ownership="none">
66914             <doc xml:whitespace="preserve">whether the action should be checked or not</doc>
66915             <type name="boolean" c:type="gboolean"/>
66916           </parameter>
66917         </parameters>
66918       </method>
66919       <method name="get_active"
66920               c:identifier="gtk_toggle_action_get_active"
66921               version="2.4">
66922         <doc xml:whitespace="preserve">Returns the checked state of the toggle action.</doc>
66923         <return-value transfer-ownership="none">
66924           <doc xml:whitespace="preserve">the checked state of the toggle action</doc>
66925           <type name="boolean" c:type="gboolean"/>
66926         </return-value>
66927       </method>
66928       <method name="set_draw_as_radio"
66929               c:identifier="gtk_toggle_action_set_draw_as_radio"
66930               version="2.4">
66931         <doc xml:whitespace="preserve">Sets whether the action should have proxies like a radio action.</doc>
66932         <return-value transfer-ownership="none">
66933           <type name="none" c:type="void"/>
66934         </return-value>
66935         <parameters>
66936           <parameter name="draw_as_radio" transfer-ownership="none">
66937             <doc xml:whitespace="preserve">whether the action should have proxies like a radio action</doc>
66938             <type name="boolean" c:type="gboolean"/>
66939           </parameter>
66940         </parameters>
66941       </method>
66942       <method name="get_draw_as_radio"
66943               c:identifier="gtk_toggle_action_get_draw_as_radio"
66944               version="2.4">
66945         <doc xml:whitespace="preserve">Returns whether the action should have proxies like a radio action.</doc>
66946         <return-value transfer-ownership="none">
66947           <doc xml:whitespace="preserve">whether the action should have proxies like a radio action.</doc>
66948           <type name="boolean" c:type="gboolean"/>
66949         </return-value>
66950       </method>
66951       <property name="active"
66952                 version="2.10"
66953                 writable="1"
66954                 transfer-ownership="none">
66955         <doc xml:whitespace="preserve">If the toggle action should be active in or not.</doc>
66956         <type name="boolean" c:type="gboolean"/>
66957       </property>
66958       <property name="draw-as-radio" writable="1" transfer-ownership="none">
66959         <doc xml:whitespace="preserve">Whether the proxies for this action look like radio action proxies.
66960 This is an appearance property and thus only applies if 
66961 #GtkActivatable:use-action-appearance is %TRUE.</doc>
66962         <type name="boolean" c:type="gboolean"/>
66963       </property>
66964       <field name="parent">
66965         <type name="Action" c:type="GtkAction"/>
66966       </field>
66967       <field name="private_data">
66968         <type name="ToggleActionPrivate" c:type="GtkToggleActionPrivate*"/>
66969       </field>
66970       <glib:signal name="toggled">
66971         <return-value transfer-ownership="full">
66972           <type name="none" c:type="void"/>
66973         </return-value>
66974       </glib:signal>
66975     </class>
66976     <record name="ToggleActionClass"
66977             c:type="GtkToggleActionClass"
66978             glib:is-gtype-struct-for="ToggleAction">
66979       <field name="parent_class">
66980         <type name="ActionClass" c:type="GtkActionClass"/>
66981       </field>
66982       <field name="toggled">
66983         <callback name="toggled" c:type="toggled">
66984           <return-value transfer-ownership="none">
66985             <type name="none" c:type="void"/>
66986           </return-value>
66987           <parameters>
66988             <parameter name="action" transfer-ownership="none">
66989               <type name="ToggleAction" c:type="GtkToggleAction*"/>
66990             </parameter>
66991           </parameters>
66992         </callback>
66993       </field>
66994       <field name="gtk_reserved1">
66995         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
66996           <return-value transfer-ownership="none">
66997             <type name="none" c:type="void"/>
66998           </return-value>
66999         </callback>
67000       </field>
67001       <field name="gtk_reserved2">
67002         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
67003           <return-value transfer-ownership="none">
67004             <type name="none" c:type="void"/>
67005           </return-value>
67006         </callback>
67007       </field>
67008       <field name="gtk_reserved3">
67009         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
67010           <return-value transfer-ownership="none">
67011             <type name="none" c:type="void"/>
67012           </return-value>
67013         </callback>
67014       </field>
67015       <field name="gtk_reserved4">
67016         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
67017           <return-value transfer-ownership="none">
67018             <type name="none" c:type="void"/>
67019           </return-value>
67020         </callback>
67021       </field>
67022     </record>
67023     <record name="ToggleActionEntry" c:type="GtkToggleActionEntry">
67024       <field name="name" writable="1">
67025         <type name="utf8" c:type="gchar*"/>
67026       </field>
67027       <field name="stock_id" writable="1">
67028         <type name="utf8" c:type="gchar*"/>
67029       </field>
67030       <field name="label" writable="1">
67031         <type name="utf8" c:type="gchar*"/>
67032       </field>
67033       <field name="accelerator" writable="1">
67034         <type name="utf8" c:type="gchar*"/>
67035       </field>
67036       <field name="tooltip" writable="1">
67037         <type name="utf8" c:type="gchar*"/>
67038       </field>
67039       <field name="callback" writable="1">
67040         <type name="GObject.Callback" c:type="GCallback"/>
67041       </field>
67042       <field name="is_active" writable="1">
67043         <type name="boolean" c:type="gboolean"/>
67044       </field>
67045     </record>
67046     <record name="ToggleActionPrivate" c:type="GtkToggleActionPrivate">
67047     </record>
67048     <class name="ToggleButton"
67049            c:type="GtkToggleButton"
67050            parent="Button"
67051            glib:type-name="GtkToggleButton"
67052            glib:get-type="gtk_toggle_button_get_type"
67053            glib:type-struct="ToggleButtonClass">
67054       <implements name="Activatable"/>
67055       <implements name="Atk.ImplementorIface"/>
67056       <implements name="Buildable"/>
67057       <constructor name="new" c:identifier="gtk_toggle_button_new">
67058         <return-value transfer-ownership="full">
67059           <type name="ToggleButton" c:type="GtkWidget*"/>
67060         </return-value>
67061       </constructor>
67062       <constructor name="new_with_label"
67063                    c:identifier="gtk_toggle_button_new_with_label">
67064         <return-value transfer-ownership="full">
67065           <type name="ToggleButton" c:type="GtkWidget*"/>
67066         </return-value>
67067         <parameters>
67068           <parameter name="label" transfer-ownership="none">
67069             <type name="utf8" c:type="gchar*"/>
67070           </parameter>
67071         </parameters>
67072       </constructor>
67073       <constructor name="new_with_mnemonic"
67074                    c:identifier="gtk_toggle_button_new_with_mnemonic">
67075         <doc xml:whitespace="preserve">Creates a new #GtkToggleButton containing a label. The label
67076 will be created using gtk_label_new_with_mnemonic(), so underscores
67077 in @label indicate the mnemonic for the button.</doc>
67078         <return-value transfer-ownership="full">
67079           <doc xml:whitespace="preserve">a new #GtkToggleButton</doc>
67080           <type name="ToggleButton" c:type="GtkWidget*"/>
67081         </return-value>
67082         <parameters>
67083           <parameter name="label" transfer-ownership="none">
67084             <doc xml:whitespace="preserve">the text of the button, with an underscore in front of the mnemonic character</doc>
67085             <type name="utf8" c:type="gchar*"/>
67086           </parameter>
67087         </parameters>
67088       </constructor>
67089       <method name="set_mode" c:identifier="gtk_toggle_button_set_mode">
67090         <doc xml:whitespace="preserve">Sets whether the button is displayed as a separate indicator and label.
67091 You can call this function on a checkbutton or a radiobutton with
67092 This function only affects instances of classes like #GtkCheckButton
67093 and #GtkRadioButton that derive from #GtkToggleButton,
67094 not instances of #GtkToggleButton itself.</doc>
67095         <return-value transfer-ownership="none">
67096           <type name="none" c:type="void"/>
67097         </return-value>
67098         <parameters>
67099           <parameter name="draw_indicator" transfer-ownership="none">
67100             <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>
67101             <type name="boolean" c:type="gboolean"/>
67102           </parameter>
67103         </parameters>
67104       </method>
67105       <method name="get_mode" c:identifier="gtk_toggle_button_get_mode">
67106         <doc xml:whitespace="preserve">Retrieves whether the button is displayed as a separate indicator
67107 and label. See gtk_toggle_button_set_mode().
67108 and label.</doc>
67109         <return-value transfer-ownership="none">
67110           <doc xml:whitespace="preserve">%TRUE if the togglebutton is drawn as a separate indicator</doc>
67111           <type name="boolean" c:type="gboolean"/>
67112         </return-value>
67113       </method>
67114       <method name="set_active" c:identifier="gtk_toggle_button_set_active">
67115         <return-value transfer-ownership="none">
67116           <type name="none" c:type="void"/>
67117         </return-value>
67118         <parameters>
67119           <parameter name="is_active" transfer-ownership="none">
67120             <type name="boolean" c:type="gboolean"/>
67121           </parameter>
67122         </parameters>
67123       </method>
67124       <method name="get_active" c:identifier="gtk_toggle_button_get_active">
67125         <return-value transfer-ownership="none">
67126           <type name="boolean" c:type="gboolean"/>
67127         </return-value>
67128       </method>
67129       <method name="toggled" c:identifier="gtk_toggle_button_toggled">
67130         <return-value transfer-ownership="none">
67131           <type name="none" c:type="void"/>
67132         </return-value>
67133       </method>
67134       <method name="set_inconsistent"
67135               c:identifier="gtk_toggle_button_set_inconsistent">
67136         <doc xml:whitespace="preserve">If the user has selected a range of elements (such as some text or
67137 spreadsheet cells) that are affected by a toggle button, and the
67138 current values in that range are inconsistent, you may want to
67139 display the toggle in an "in between" state. This function turns on
67140 "in between" display.  Normally you would turn off the inconsistent
67141 state again if the user toggles the toggle button. This has to be
67142 done manually, gtk_toggle_button_set_inconsistent() only affects
67143 visual appearance, it doesn't affect the semantics of the button.</doc>
67144         <return-value transfer-ownership="none">
67145           <type name="none" c:type="void"/>
67146         </return-value>
67147         <parameters>
67148           <parameter name="setting" transfer-ownership="none">
67149             <doc xml:whitespace="preserve">%TRUE if state is inconsistent</doc>
67150             <type name="boolean" c:type="gboolean"/>
67151           </parameter>
67152         </parameters>
67153       </method>
67154       <method name="get_inconsistent"
67155               c:identifier="gtk_toggle_button_get_inconsistent">
67156         <doc xml:whitespace="preserve">Gets the value set by gtk_toggle_button_set_inconsistent().</doc>
67157         <return-value transfer-ownership="none">
67158           <doc xml:whitespace="preserve">%TRUE if the button is displayed as inconsistent, %FALSE otherwise</doc>
67159           <type name="boolean" c:type="gboolean"/>
67160         </return-value>
67161       </method>
67162       <property name="active" writable="1" transfer-ownership="none">
67163         <type name="boolean" c:type="gboolean"/>
67164       </property>
67165       <property name="draw-indicator" writable="1" transfer-ownership="none">
67166         <type name="boolean" c:type="gboolean"/>
67167       </property>
67168       <property name="inconsistent" writable="1" transfer-ownership="none">
67169         <type name="boolean" c:type="gboolean"/>
67170       </property>
67171       <field name="button">
67172         <type name="Button" c:type="GtkButton"/>
67173       </field>
67174       <field name="active" bits="1">
67175         <type name="uint" c:type="guint"/>
67176       </field>
67177       <field name="draw_indicator" bits="1">
67178         <type name="uint" c:type="guint"/>
67179       </field>
67180       <field name="inconsistent" bits="1">
67181         <type name="uint" c:type="guint"/>
67182       </field>
67183       <glib:signal name="toggled">
67184         <return-value transfer-ownership="full">
67185           <type name="none" c:type="void"/>
67186         </return-value>
67187       </glib:signal>
67188     </class>
67189     <record name="ToggleButtonClass"
67190             c:type="GtkToggleButtonClass"
67191             glib:is-gtype-struct-for="ToggleButton">
67192       <field name="parent_class">
67193         <type name="ButtonClass" c:type="GtkButtonClass"/>
67194       </field>
67195       <field name="toggled">
67196         <callback name="toggled" c:type="toggled">
67197           <return-value transfer-ownership="none">
67198             <type name="none" c:type="void"/>
67199           </return-value>
67200           <parameters>
67201             <parameter name="toggle_button" transfer-ownership="none">
67202               <type name="ToggleButton" c:type="GtkToggleButton*"/>
67203             </parameter>
67204           </parameters>
67205         </callback>
67206       </field>
67207       <field name="gtk_reserved1">
67208         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
67209           <return-value transfer-ownership="none">
67210             <type name="none" c:type="void"/>
67211           </return-value>
67212         </callback>
67213       </field>
67214       <field name="gtk_reserved2">
67215         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
67216           <return-value transfer-ownership="none">
67217             <type name="none" c:type="void"/>
67218           </return-value>
67219         </callback>
67220       </field>
67221       <field name="gtk_reserved3">
67222         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
67223           <return-value transfer-ownership="none">
67224             <type name="none" c:type="void"/>
67225           </return-value>
67226         </callback>
67227       </field>
67228       <field name="gtk_reserved4">
67229         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
67230           <return-value transfer-ownership="none">
67231             <type name="none" c:type="void"/>
67232           </return-value>
67233         </callback>
67234       </field>
67235     </record>
67236     <class name="ToggleToolButton"
67237            c:type="GtkToggleToolButton"
67238            parent="ToolButton"
67239            glib:type-name="GtkToggleToolButton"
67240            glib:get-type="gtk_toggle_tool_button_get_type"
67241            glib:type-struct="ToggleToolButtonClass">
67242       <implements name="Activatable"/>
67243       <implements name="Atk.ImplementorIface"/>
67244       <implements name="Buildable"/>
67245       <constructor name="new"
67246                    c:identifier="gtk_toggle_tool_button_new"
67247                    version="2.4">
67248         <doc xml:whitespace="preserve">Returns a new #GtkToggleToolButton</doc>
67249         <return-value transfer-ownership="full">
67250           <doc xml:whitespace="preserve">a newly created #GtkToggleToolButton</doc>
67251           <type name="ToggleToolButton" c:type="GtkToolItem*"/>
67252         </return-value>
67253       </constructor>
67254       <constructor name="new_from_stock"
67255                    c:identifier="gtk_toggle_tool_button_new_from_stock"
67256                    version="2.4">
67257         <doc xml:whitespace="preserve">Creates a new #GtkToggleToolButton containing the image and text from a
67258 stock item. Some stock ids have preprocessor macros like #GTK_STOCK_OK
67259 and #GTK_STOCK_APPLY.
67260 It is an error if @stock_id is not a name of a stock item.</doc>
67261         <return-value transfer-ownership="full">
67262           <doc xml:whitespace="preserve">A new #GtkToggleToolButton</doc>
67263           <type name="ToggleToolButton" c:type="GtkToolItem*"/>
67264         </return-value>
67265         <parameters>
67266           <parameter name="stock_id" transfer-ownership="none">
67267             <doc xml:whitespace="preserve">the name of the stock item</doc>
67268             <type name="utf8" c:type="gchar*"/>
67269           </parameter>
67270         </parameters>
67271       </constructor>
67272       <method name="set_active"
67273               c:identifier="gtk_toggle_tool_button_set_active"
67274               version="2.4">
67275         <doc xml:whitespace="preserve">Sets the status of the toggle tool button. Set to %TRUE if you
67276 want the GtkToggleButton to be 'pressed in', and %FALSE to raise it.
67277 This action causes the toggled signal to be emitted.</doc>
67278         <return-value transfer-ownership="none">
67279           <type name="none" c:type="void"/>
67280         </return-value>
67281         <parameters>
67282           <parameter name="is_active" transfer-ownership="none">
67283             <doc xml:whitespace="preserve">whether @button should be active</doc>
67284             <type name="boolean" c:type="gboolean"/>
67285           </parameter>
67286         </parameters>
67287       </method>
67288       <method name="get_active"
67289               c:identifier="gtk_toggle_tool_button_get_active"
67290               version="2.4">
67291         <doc xml:whitespace="preserve">Queries a #GtkToggleToolButton and returns its current state.
67292 Returns %TRUE if the toggle button is pressed in and %FALSE if it is raised.</doc>
67293         <return-value transfer-ownership="none">
67294           <doc xml:whitespace="preserve">%TRUE if the toggle tool button is pressed in, %FALSE if not</doc>
67295           <type name="boolean" c:type="gboolean"/>
67296         </return-value>
67297       </method>
67298       <property name="active"
67299                 version="2.8"
67300                 writable="1"
67301                 transfer-ownership="none">
67302         <doc xml:whitespace="preserve">If the toggle tool button should be pressed in or not.</doc>
67303         <type name="boolean" c:type="gboolean"/>
67304       </property>
67305       <field name="parent">
67306         <type name="ToolButton" c:type="GtkToolButton"/>
67307       </field>
67308       <field name="priv">
67309         <type name="ToggleToolButtonPrivate"
67310               c:type="GtkToggleToolButtonPrivate*"/>
67311       </field>
67312       <glib:signal name="toggled">
67313         <doc xml:whitespace="preserve">Emitted whenever the toggle tool button changes state.</doc>
67314         <return-value transfer-ownership="full">
67315           <type name="none" c:type="void"/>
67316         </return-value>
67317       </glib:signal>
67318     </class>
67319     <record name="ToggleToolButtonClass"
67320             c:type="GtkToggleToolButtonClass"
67321             glib:is-gtype-struct-for="ToggleToolButton">
67322       <field name="parent_class">
67323         <type name="ToolButtonClass" c:type="GtkToolButtonClass"/>
67324       </field>
67325       <field name="toggled">
67326         <callback name="toggled" c:type="toggled">
67327           <return-value transfer-ownership="none">
67328             <type name="none" c:type="void"/>
67329           </return-value>
67330           <parameters>
67331             <parameter name="button" transfer-ownership="none">
67332               <type name="ToggleToolButton" c:type="GtkToggleToolButton*"/>
67333             </parameter>
67334           </parameters>
67335         </callback>
67336       </field>
67337       <field name="gtk_reserved1">
67338         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
67339           <return-value transfer-ownership="none">
67340             <type name="none" c:type="void"/>
67341           </return-value>
67342         </callback>
67343       </field>
67344       <field name="gtk_reserved2">
67345         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
67346           <return-value transfer-ownership="none">
67347             <type name="none" c:type="void"/>
67348           </return-value>
67349         </callback>
67350       </field>
67351       <field name="gtk_reserved3">
67352         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
67353           <return-value transfer-ownership="none">
67354             <type name="none" c:type="void"/>
67355           </return-value>
67356         </callback>
67357       </field>
67358       <field name="gtk_reserved4">
67359         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
67360           <return-value transfer-ownership="none">
67361             <type name="none" c:type="void"/>
67362           </return-value>
67363         </callback>
67364       </field>
67365     </record>
67366     <record name="ToggleToolButtonPrivate" c:type="GtkToggleToolButtonPrivate">
67367     </record>
67368     <class name="ToolButton"
67369            c:type="GtkToolButton"
67370            parent="ToolItem"
67371            glib:type-name="GtkToolButton"
67372            glib:get-type="gtk_tool_button_get_type"
67373            glib:type-struct="ToolButtonClass">
67374       <implements name="Activatable"/>
67375       <implements name="Atk.ImplementorIface"/>
67376       <implements name="Buildable"/>
67377       <constructor name="new" c:identifier="gtk_tool_button_new" version="2.4">
67378         <doc xml:whitespace="preserve">Creates a new %GtkToolButton using @icon_widget as icon and @label as
67379 label.</doc>
67380         <return-value transfer-ownership="full">
67381           <doc xml:whitespace="preserve">A new #GtkToolButton</doc>
67382           <type name="ToolButton" c:type="GtkToolItem*"/>
67383         </return-value>
67384         <parameters>
67385           <parameter name="icon_widget"
67386                      transfer-ownership="none"
67387                      allow-none="1">
67388             <doc xml:whitespace="preserve">a #GtkMisc widget that will be used as icon widget, or %NULL</doc>
67389             <type name="Widget" c:type="GtkWidget*"/>
67390           </parameter>
67391           <parameter name="label" transfer-ownership="none" allow-none="1">
67392             <doc xml:whitespace="preserve">a string that will be used as label, or %NULL</doc>
67393             <type name="utf8" c:type="gchar*"/>
67394           </parameter>
67395         </parameters>
67396       </constructor>
67397       <constructor name="new_from_stock"
67398                    c:identifier="gtk_tool_button_new_from_stock"
67399                    version="2.4">
67400         <doc xml:whitespace="preserve">Creates a new #GtkToolButton containing the image and text from a
67401 stock item. Some stock ids have preprocessor macros like #GTK_STOCK_OK
67402 and #GTK_STOCK_APPLY.
67403 It is an error if @stock_id is not a name of a stock item.</doc>
67404         <return-value transfer-ownership="full">
67405           <doc xml:whitespace="preserve">A new #GtkToolButton</doc>
67406           <type name="ToolButton" c:type="GtkToolItem*"/>
67407         </return-value>
67408         <parameters>
67409           <parameter name="stock_id" transfer-ownership="none">
67410             <doc xml:whitespace="preserve">the name of the stock item</doc>
67411             <type name="utf8" c:type="gchar*"/>
67412           </parameter>
67413         </parameters>
67414       </constructor>
67415       <method name="set_label"
67416               c:identifier="gtk_tool_button_set_label"
67417               version="2.4">
67418         <doc xml:whitespace="preserve">Sets @label as the label used for the tool button. The "label" property
67419 only has an effect if not overridden by a non-%NULL "label_widget" property.
67420 If both the "label_widget" and "label" properties are %NULL, the label
67421 is determined by the "stock_id" property. If the "stock_id" property is also
67422 %NULL, @button will not have a label.</doc>
67423         <return-value transfer-ownership="none">
67424           <type name="none" c:type="void"/>
67425         </return-value>
67426         <parameters>
67427           <parameter name="label" transfer-ownership="none" allow-none="1">
67428             <doc xml:whitespace="preserve">a string that will be used as label, or %NULL.</doc>
67429             <type name="utf8" c:type="gchar*"/>
67430           </parameter>
67431         </parameters>
67432       </method>
67433       <method name="get_label"
67434               c:identifier="gtk_tool_button_get_label"
67435               version="2.4">
67436         <doc xml:whitespace="preserve">Returns the label used by the tool button, or %NULL if the tool button
67437 doesn't have a label. or uses a the label from a stock item. The returned
67438 string is owned by GTK+, and must not be modified or freed.</doc>
67439         <return-value transfer-ownership="none">
67440           <doc xml:whitespace="preserve">The label, or %NULL</doc>
67441           <type name="utf8" c:type="gchar*"/>
67442         </return-value>
67443       </method>
67444       <method name="set_use_underline"
67445               c:identifier="gtk_tool_button_set_use_underline"
67446               version="2.4">
67447         <doc xml:whitespace="preserve">If set, an underline in the label property indicates that the next character
67448 should be used for the mnemonic accelerator key in the overflow menu. For
67449 example, if the label property is "_Open" and @use_underline is %TRUE,
67450 the label on the tool button will be "Open" and the item on the overflow
67451 menu will have an underlined 'O'.
67452 Labels shown on tool buttons never have mnemonics on them; this property
67453 only affects the menu item on the overflow menu.</doc>
67454         <return-value transfer-ownership="none">
67455           <type name="none" c:type="void"/>
67456         </return-value>
67457         <parameters>
67458           <parameter name="use_underline" transfer-ownership="none">
67459             <doc xml:whitespace="preserve">whether the button label has the form "_Open"</doc>
67460             <type name="boolean" c:type="gboolean"/>
67461           </parameter>
67462         </parameters>
67463       </method>
67464       <method name="get_use_underline"
67465               c:identifier="gtk_tool_button_get_use_underline"
67466               version="2.4">
67467         <doc xml:whitespace="preserve">Returns whether underscores in the label property are used as mnemonics
67468 on menu items on the overflow menu. See gtk_tool_button_set_use_underline().
67469 mnemonics on menu items on the overflow menu.</doc>
67470         <return-value transfer-ownership="none">
67471           <doc xml:whitespace="preserve">%TRUE if underscores in the label property are used as</doc>
67472           <type name="boolean" c:type="gboolean"/>
67473         </return-value>
67474       </method>
67475       <method name="set_stock_id"
67476               c:identifier="gtk_tool_button_set_stock_id"
67477               version="2.4">
67478         <doc xml:whitespace="preserve">Sets the name of the stock item. See gtk_tool_button_new_from_stock().
67479 The stock_id property only has an effect if not
67480 overridden by non-%NULL "label" and "icon_widget" properties.</doc>
67481         <return-value transfer-ownership="none">
67482           <type name="none" c:type="void"/>
67483         </return-value>
67484         <parameters>
67485           <parameter name="stock_id" transfer-ownership="none" allow-none="1">
67486             <doc xml:whitespace="preserve">a name of a stock item, or %NULL</doc>
67487             <type name="utf8" c:type="gchar*"/>
67488           </parameter>
67489         </parameters>
67490       </method>
67491       <method name="get_stock_id"
67492               c:identifier="gtk_tool_button_get_stock_id"
67493               version="2.4">
67494         <doc xml:whitespace="preserve">Returns the name of the stock item. See gtk_tool_button_set_stock_id().
67495 The returned string is owned by GTK+ and must not be freed or modifed.</doc>
67496         <return-value transfer-ownership="none">
67497           <doc xml:whitespace="preserve">the name of the stock item for @button.</doc>
67498           <type name="utf8" c:type="gchar*"/>
67499         </return-value>
67500       </method>
67501       <method name="set_icon_name"
67502               c:identifier="gtk_tool_button_set_icon_name">
67503         <return-value transfer-ownership="none">
67504           <type name="none" c:type="void"/>
67505         </return-value>
67506         <parameters>
67507           <parameter name="icon_name" transfer-ownership="none">
67508             <type name="utf8" c:type="gchar*"/>
67509           </parameter>
67510         </parameters>
67511       </method>
67512       <method name="get_icon_name"
67513               c:identifier="gtk_tool_button_get_icon_name">
67514         <return-value transfer-ownership="none">
67515           <type name="utf8" c:type="gchar*"/>
67516         </return-value>
67517       </method>
67518       <method name="set_icon_widget"
67519               c:identifier="gtk_tool_button_set_icon_widget"
67520               version="2.4">
67521         <doc xml:whitespace="preserve">Sets @icon as the widget used as icon on @button. If @icon_widget is
67522 %NULL the icon is determined by the "stock_id" property. If the
67523 "stock_id" property is also %NULL, @button will not have an icon.</doc>
67524         <return-value transfer-ownership="none">
67525           <type name="none" c:type="void"/>
67526         </return-value>
67527         <parameters>
67528           <parameter name="icon_widget"
67529                      transfer-ownership="none"
67530                      allow-none="1">
67531             <doc xml:whitespace="preserve">the widget used as icon, or %NULL</doc>
67532             <type name="Widget" c:type="GtkWidget*"/>
67533           </parameter>
67534         </parameters>
67535       </method>
67536       <method name="get_icon_widget"
67537               c:identifier="gtk_tool_button_get_icon_widget"
67538               version="2.4">
67539         <doc xml:whitespace="preserve">Return the widget used as icon widget on @button. See
67540 gtk_tool_button_set_icon_widget().</doc>
67541         <return-value transfer-ownership="full">
67542           <doc xml:whitespace="preserve">The widget used as icon on @button, or %NULL.</doc>
67543           <type name="Widget" c:type="GtkWidget*"/>
67544         </return-value>
67545       </method>
67546       <method name="set_label_widget"
67547               c:identifier="gtk_tool_button_set_label_widget"
67548               version="2.4">
67549         <doc xml:whitespace="preserve">Sets @label_widget as the widget that will be used as the label
67550 for @button. If @label_widget is %NULL the "label" property is used
67551 as label. If "label" is also %NULL, the label in the stock item
67552 determined by the "stock_id" property is used as label. If
67553 "stock_id" is also %NULL, @button does not have a label.</doc>
67554         <return-value transfer-ownership="none">
67555           <type name="none" c:type="void"/>
67556         </return-value>
67557         <parameters>
67558           <parameter name="label_widget"
67559                      transfer-ownership="none"
67560                      allow-none="1">
67561             <doc xml:whitespace="preserve">the widget used as label, or %NULL</doc>
67562             <type name="Widget" c:type="GtkWidget*"/>
67563           </parameter>
67564         </parameters>
67565       </method>
67566       <method name="get_label_widget"
67567               c:identifier="gtk_tool_button_get_label_widget"
67568               version="2.4">
67569         <doc xml:whitespace="preserve">Returns the widget used as label on @button. See
67570 gtk_tool_button_set_label_widget().</doc>
67571         <return-value transfer-ownership="full">
67572           <doc xml:whitespace="preserve">The widget used as label on @button, or %NULL.</doc>
67573           <type name="Widget" c:type="GtkWidget*"/>
67574         </return-value>
67575       </method>
67576       <property name="icon-name"
67577                 version="2.8"
67578                 writable="1"
67579                 transfer-ownership="none">
67580         <doc xml:whitespace="preserve">The name of the themed icon displayed on the item.
67581 This property only has an effect if not overridden by "label", 
67582 "icon_widget" or "stock_id" properties.</doc>
67583         <type name="utf8" c:type="gchararray"/>
67584       </property>
67585       <property name="icon-widget" writable="1" transfer-ownership="none">
67586         <type name="Widget" c:type="GtkWidget"/>
67587       </property>
67588       <property name="label" writable="1" transfer-ownership="none">
67589         <type name="utf8" c:type="gchararray"/>
67590       </property>
67591       <property name="label-widget" writable="1" transfer-ownership="none">
67592         <type name="Widget" c:type="GtkWidget"/>
67593       </property>
67594       <property name="stock-id" writable="1" transfer-ownership="none">
67595         <type name="utf8" c:type="gchararray"/>
67596       </property>
67597       <property name="use-underline" writable="1" transfer-ownership="none">
67598         <type name="boolean" c:type="gboolean"/>
67599       </property>
67600       <field name="parent">
67601         <type name="ToolItem" c:type="GtkToolItem"/>
67602       </field>
67603       <field name="priv">
67604         <type name="ToolButtonPrivate" c:type="GtkToolButtonPrivate*"/>
67605       </field>
67606       <glib:signal name="clicked">
67607         <doc xml:whitespace="preserve">This signal is emitted when the tool button is clicked with the mouse
67608 or activated with the keyboard.</doc>
67609         <return-value transfer-ownership="full">
67610           <type name="none" c:type="void"/>
67611         </return-value>
67612       </glib:signal>
67613     </class>
67614     <record name="ToolButtonClass"
67615             c:type="GtkToolButtonClass"
67616             glib:is-gtype-struct-for="ToolButton">
67617       <field name="parent_class">
67618         <type name="ToolItemClass" c:type="GtkToolItemClass"/>
67619       </field>
67620       <field name="button_type">
67621         <type name="GType" c:type="GType"/>
67622       </field>
67623       <field name="clicked">
67624         <callback name="clicked" c:type="clicked">
67625           <return-value transfer-ownership="none">
67626             <type name="none" c:type="void"/>
67627           </return-value>
67628           <parameters>
67629             <parameter name="tool_item" transfer-ownership="none">
67630               <type name="ToolButton" c:type="GtkToolButton*"/>
67631             </parameter>
67632           </parameters>
67633         </callback>
67634       </field>
67635       <field name="gtk_reserved1">
67636         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
67637           <return-value transfer-ownership="none">
67638             <type name="none" c:type="void"/>
67639           </return-value>
67640         </callback>
67641       </field>
67642       <field name="gtk_reserved2">
67643         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
67644           <return-value transfer-ownership="none">
67645             <type name="none" c:type="void"/>
67646           </return-value>
67647         </callback>
67648       </field>
67649       <field name="gtk_reserved3">
67650         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
67651           <return-value transfer-ownership="none">
67652             <type name="none" c:type="void"/>
67653           </return-value>
67654         </callback>
67655       </field>
67656       <field name="gtk_reserved4">
67657         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
67658           <return-value transfer-ownership="none">
67659             <type name="none" c:type="void"/>
67660           </return-value>
67661         </callback>
67662       </field>
67663     </record>
67664     <record name="ToolButtonPrivate" c:type="GtkToolButtonPrivate">
67665     </record>
67666     <class name="ToolItem"
67667            c:type="GtkToolItem"
67668            parent="Bin"
67669            glib:type-name="GtkToolItem"
67670            glib:get-type="gtk_tool_item_get_type"
67671            glib:type-struct="ToolItemClass">
67672       <doc xml:whitespace="preserve">The GtkToolItem struct contains only private data.
67673 It should only be accessed through the functions described below.</doc>
67674       <implements name="Activatable"/>
67675       <implements name="Atk.ImplementorIface"/>
67676       <implements name="Buildable"/>
67677       <constructor name="new" c:identifier="gtk_tool_item_new" version="2.4">
67678         <doc xml:whitespace="preserve">Creates a new #GtkToolItem</doc>
67679         <return-value transfer-ownership="full">
67680           <doc xml:whitespace="preserve">the new #GtkToolItem</doc>
67681           <type name="ToolItem" c:type="GtkToolItem*"/>
67682         </return-value>
67683       </constructor>
67684       <method name="set_homogeneous"
67685               c:identifier="gtk_tool_item_set_homogeneous"
67686               version="2.4">
67687         <doc xml:whitespace="preserve">Sets whether @tool_item is to be allocated the same size as other
67688 homogeneous items. The effect is that all homogeneous items will have
67689 the same width as the widest of the items.</doc>
67690         <return-value transfer-ownership="none">
67691           <type name="none" c:type="void"/>
67692         </return-value>
67693         <parameters>
67694           <parameter name="homogeneous" transfer-ownership="none">
67695             <doc xml:whitespace="preserve">whether @tool_item is the same size as other homogeneous items</doc>
67696             <type name="boolean" c:type="gboolean"/>
67697           </parameter>
67698         </parameters>
67699       </method>
67700       <method name="get_homogeneous"
67701               c:identifier="gtk_tool_item_get_homogeneous"
67702               version="2.4">
67703         <doc xml:whitespace="preserve">Returns whether @tool_item is the same size as other homogeneous
67704 items. See gtk_tool_item_set_homogeneous().
67705 items.</doc>
67706         <return-value transfer-ownership="none">
67707           <doc xml:whitespace="preserve">%TRUE if the item is the same size as other homogeneous</doc>
67708           <type name="boolean" c:type="gboolean"/>
67709         </return-value>
67710       </method>
67711       <method name="set_expand"
67712               c:identifier="gtk_tool_item_set_expand"
67713               version="2.4">
67714         <doc xml:whitespace="preserve">Sets whether @tool_item is allocated extra space when there
67715 is more room on the toolbar then needed for the items. The
67716 effect is that the item gets bigger when the toolbar gets bigger
67717 and smaller when the toolbar gets smaller.</doc>
67718         <return-value transfer-ownership="none">
67719           <type name="none" c:type="void"/>
67720         </return-value>
67721         <parameters>
67722           <parameter name="expand" transfer-ownership="none">
67723             <doc xml:whitespace="preserve">Whether @tool_item is allocated extra space</doc>
67724             <type name="boolean" c:type="gboolean"/>
67725           </parameter>
67726         </parameters>
67727       </method>
67728       <method name="get_expand"
67729               c:identifier="gtk_tool_item_get_expand"
67730               version="2.4">
67731         <doc xml:whitespace="preserve">Returns whether @tool_item is allocated extra space.
67732 See gtk_tool_item_set_expand().</doc>
67733         <return-value transfer-ownership="none">
67734           <doc xml:whitespace="preserve">%TRUE if @tool_item is allocated extra space.</doc>
67735           <type name="boolean" c:type="gboolean"/>
67736         </return-value>
67737       </method>
67738       <method name="set_tooltip"
67739               c:identifier="gtk_tool_item_set_tooltip"
67740               version="2.4"
67741               deprecated="Use gtk_tool_item_set_tooltip_text() instead."
67742               deprecated-version="2.12">
67743         <doc xml:whitespace="preserve">Sets the #GtkTooltips object to be used for @tool_item, the
67744 text to be displayed as tooltip on the item and the private text
67745 to be used. See gtk_tooltips_set_tip().</doc>
67746         <return-value transfer-ownership="none">
67747           <type name="none" c:type="void"/>
67748         </return-value>
67749         <parameters>
67750           <parameter name="tooltips" transfer-ownership="none">
67751             <doc xml:whitespace="preserve">The #GtkTooltips object to be used</doc>
67752             <type name="Tooltips" c:type="GtkTooltips*"/>
67753           </parameter>
67754           <parameter name="tip_text" transfer-ownership="none" allow-none="1">
67755             <doc xml:whitespace="preserve">text to be used as tooltip text for @tool_item</doc>
67756             <type name="utf8" c:type="gchar*"/>
67757           </parameter>
67758           <parameter name="tip_private"
67759                      transfer-ownership="none"
67760                      allow-none="1">
67761             <doc xml:whitespace="preserve">text to be used as private tooltip text</doc>
67762             <type name="utf8" c:type="gchar*"/>
67763           </parameter>
67764         </parameters>
67765       </method>
67766       <method name="set_tooltip_text"
67767               c:identifier="gtk_tool_item_set_tooltip_text"
67768               version="2.12">
67769         <doc xml:whitespace="preserve">Sets the text to be displayed as tooltip on the item.
67770 See gtk_widget_set_tooltip_text().</doc>
67771         <return-value transfer-ownership="none">
67772           <type name="none" c:type="void"/>
67773         </return-value>
67774         <parameters>
67775           <parameter name="text" transfer-ownership="none">
67776             <doc xml:whitespace="preserve">text to be used as tooltip for @tool_item</doc>
67777             <type name="utf8" c:type="gchar*"/>
67778           </parameter>
67779         </parameters>
67780       </method>
67781       <method name="set_tooltip_markup"
67782               c:identifier="gtk_tool_item_set_tooltip_markup"
67783               version="2.12">
67784         <doc xml:whitespace="preserve">Sets the markup text to be displayed as tooltip on the item.
67785 See gtk_widget_set_tooltip_markup().</doc>
67786         <return-value transfer-ownership="none">
67787           <type name="none" c:type="void"/>
67788         </return-value>
67789         <parameters>
67790           <parameter name="markup" transfer-ownership="none">
67791             <doc xml:whitespace="preserve">markup text to be used as tooltip for @tool_item</doc>
67792             <type name="utf8" c:type="gchar*"/>
67793           </parameter>
67794         </parameters>
67795       </method>
67796       <method name="set_use_drag_window"
67797               c:identifier="gtk_tool_item_set_use_drag_window"
67798               version="2.4">
67799         <doc xml:whitespace="preserve">Sets whether @tool_item has a drag window. When %TRUE the
67800 toolitem can be used as a drag source through gtk_drag_source_set().
67801 When @tool_item has a drag window it will intercept all events,
67802 even those that would otherwise be sent to a child of @tool_item.</doc>
67803         <return-value transfer-ownership="none">
67804           <type name="none" c:type="void"/>
67805         </return-value>
67806         <parameters>
67807           <parameter name="use_drag_window" transfer-ownership="none">
67808             <doc xml:whitespace="preserve">Whether @tool_item has a drag window.</doc>
67809             <type name="boolean" c:type="gboolean"/>
67810           </parameter>
67811         </parameters>
67812       </method>
67813       <method name="get_use_drag_window"
67814               c:identifier="gtk_tool_item_get_use_drag_window"
67815               version="2.4">
67816         <doc xml:whitespace="preserve">Returns whether @tool_item has a drag window. See
67817 gtk_tool_item_set_use_drag_window().</doc>
67818         <return-value transfer-ownership="none">
67819           <doc xml:whitespace="preserve">%TRUE if @tool_item uses a drag window.</doc>
67820           <type name="boolean" c:type="gboolean"/>
67821         </return-value>
67822       </method>
67823       <method name="set_visible_horizontal"
67824               c:identifier="gtk_tool_item_set_visible_horizontal"
67825               version="2.4">
67826         <doc xml:whitespace="preserve">Sets whether @tool_item is visible when the toolbar is docked horizontally.</doc>
67827         <return-value transfer-ownership="none">
67828           <type name="none" c:type="void"/>
67829         </return-value>
67830         <parameters>
67831           <parameter name="visible_horizontal" transfer-ownership="none">
67832             <doc xml:whitespace="preserve">Whether @tool_item is visible when in horizontal mode</doc>
67833             <type name="boolean" c:type="gboolean"/>
67834           </parameter>
67835         </parameters>
67836       </method>
67837       <method name="get_visible_horizontal"
67838               c:identifier="gtk_tool_item_get_visible_horizontal"
67839               version="2.4">
67840         <doc xml:whitespace="preserve">Returns whether the @tool_item is visible on toolbars that are
67841 docked horizontally.
67842 docked horizontally.</doc>
67843         <return-value transfer-ownership="none">
67844           <doc xml:whitespace="preserve">%TRUE if @tool_item is visible on toolbars that are</doc>
67845           <type name="boolean" c:type="gboolean"/>
67846         </return-value>
67847       </method>
67848       <method name="set_visible_vertical"
67849               c:identifier="gtk_tool_item_set_visible_vertical"
67850               version="2.4">
67851         <doc xml:whitespace="preserve">Sets whether @tool_item is visible when the toolbar is docked
67852 vertically. Some tool items, such as text entries, are too wide to be
67853 useful on a vertically docked toolbar. If @visible_vertical is %FALSE</doc>
67854         <return-value transfer-ownership="none">
67855           <type name="none" c:type="void"/>
67856         </return-value>
67857         <parameters>
67858           <parameter name="visible_vertical" transfer-ownership="none">
67859             <doc xml:whitespace="preserve">whether @tool_item is visible when the toolbar is in vertical mode</doc>
67860             <type name="boolean" c:type="gboolean"/>
67861           </parameter>
67862         </parameters>
67863       </method>
67864       <method name="get_visible_vertical"
67865               c:identifier="gtk_tool_item_get_visible_vertical"
67866               version="2.4">
67867         <doc xml:whitespace="preserve">Returns whether @tool_item is visible when the toolbar is docked vertically.
67868 See gtk_tool_item_set_visible_vertical().</doc>
67869         <return-value transfer-ownership="none">
67870           <doc xml:whitespace="preserve">Whether @tool_item is visible when the toolbar is docked vertically</doc>
67871           <type name="boolean" c:type="gboolean"/>
67872         </return-value>
67873       </method>
67874       <method name="get_is_important"
67875               c:identifier="gtk_tool_item_get_is_important"
67876               version="2.4">
67877         <doc xml:whitespace="preserve">Returns whether @tool_item is considered important. See
67878 gtk_tool_item_set_is_important()</doc>
67879         <return-value transfer-ownership="none">
67880           <doc xml:whitespace="preserve">%TRUE if @tool_item is considered important.</doc>
67881           <type name="boolean" c:type="gboolean"/>
67882         </return-value>
67883       </method>
67884       <method name="set_is_important"
67885               c:identifier="gtk_tool_item_set_is_important"
67886               version="2.4">
67887         <doc xml:whitespace="preserve">Sets whether @tool_item should be considered important. The #GtkToolButton
67888 class uses this property to determine whether to show or hide its label
67889 when the toolbar style is %GTK_TOOLBAR_BOTH_HORIZ. The result is that
67890 only tool buttons with the "is_important" property set have labels, an
67891 effect known as "priority text"</doc>
67892         <return-value transfer-ownership="none">
67893           <type name="none" c:type="void"/>
67894         </return-value>
67895         <parameters>
67896           <parameter name="is_important" transfer-ownership="none">
67897             <doc xml:whitespace="preserve">whether the tool item should be considered important</doc>
67898             <type name="boolean" c:type="gboolean"/>
67899           </parameter>
67900         </parameters>
67901       </method>
67902       <method name="get_ellipsize_mode"
67903               c:identifier="gtk_tool_item_get_ellipsize_mode"
67904               version="2.20">
67905         <doc xml:whitespace="preserve">Returns the ellipsize mode used for @tool_item. Custom subclasses of
67906 #GtkToolItem should call this function to find out how text should
67907 be ellipsized.
67908 should be ellipsized.</doc>
67909         <return-value transfer-ownership="full">
67910           <doc xml:whitespace="preserve">a #PangoEllipsizeMode indicating how text in @tool_item</doc>
67911           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
67912         </return-value>
67913       </method>
67914       <method name="get_icon_size"
67915               c:identifier="gtk_tool_item_get_icon_size"
67916               version="2.4">
67917         <doc xml:whitespace="preserve">Returns the icon size used for @tool_item. Custom subclasses of
67918 #GtkToolItem should call this function to find out what size icons
67919 they should use.
67920 used for @tool_item</doc>
67921         <return-value transfer-ownership="full">
67922           <doc xml:whitespace="preserve">a #GtkIconSize indicating the icon size</doc>
67923           <type name="int" c:type="GtkIconSize"/>
67924         </return-value>
67925       </method>
67926       <method name="get_orientation"
67927               c:identifier="gtk_tool_item_get_orientation"
67928               version="2.4">
67929         <doc xml:whitespace="preserve">Returns the orientation used for @tool_item. Custom subclasses of
67930 #GtkToolItem should call this function to find out what size icons
67931 they should use.
67932 used for @tool_item</doc>
67933         <return-value transfer-ownership="full">
67934           <doc xml:whitespace="preserve">a #GtkOrientation indicating the orientation</doc>
67935           <type name="Orientation" c:type="GtkOrientation"/>
67936         </return-value>
67937       </method>
67938       <method name="get_toolbar_style"
67939               c:identifier="gtk_tool_item_get_toolbar_style"
67940               version="2.4">
67941         <doc xml:whitespace="preserve">Returns the toolbar style used for @tool_item. Custom subclasses of
67942 #GtkToolItem should call this function in the handler of the
67943 GtkToolItem::toolbar_reconfigured signal to find out in what style
67944 the toolbar is displayed and change themselves accordingly 
67945 Possibilities are:
67946 &lt;itemizedlist&gt;
67947 &lt;listitem&gt; GTK_TOOLBAR_BOTH, meaning the tool item should show
67948 both an icon and a label, stacked vertically &lt;/listitem&gt;
67949 &lt;listitem&gt; GTK_TOOLBAR_ICONS, meaning the toolbar shows
67950 only icons &lt;/listitem&gt;
67951 &lt;listitem&gt; GTK_TOOLBAR_TEXT, meaning the tool item should only
67952 show text&lt;/listitem&gt;
67953 &lt;listitem&gt; GTK_TOOLBAR_BOTH_HORIZ, meaning the tool item should show
67954 both an icon and a label, arranged horizontally (however, note the 
67955 #GtkToolButton::has_text_horizontally that makes tool buttons not
67956 show labels when the toolbar style is GTK_TOOLBAR_BOTH_HORIZ.
67957 &lt;/listitem&gt;
67958 &lt;/itemizedlist&gt;
67959 for @tool_item.</doc>
67960         <return-value transfer-ownership="full">
67961           <doc xml:whitespace="preserve">A #GtkToolbarStyle indicating the toolbar style used</doc>
67962           <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
67963         </return-value>
67964       </method>
67965       <method name="get_relief_style"
67966               c:identifier="gtk_tool_item_get_relief_style"
67967               version="2.4">
67968         <doc xml:whitespace="preserve">Returns the relief style of @tool_item. See gtk_button_set_relief_style().
67969 Custom subclasses of #GtkToolItem should call this function in the handler
67970 of the #GtkToolItem::toolbar_reconfigured signal to find out the
67971 relief style of buttons.
67972 for @tool_item.</doc>
67973         <return-value transfer-ownership="full">
67974           <doc xml:whitespace="preserve">a #GtkReliefStyle indicating the relief style used</doc>
67975           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
67976         </return-value>
67977       </method>
67978       <method name="get_text_alignment"
67979               c:identifier="gtk_tool_item_get_text_alignment"
67980               version="2.20">
67981         <doc xml:whitespace="preserve">Returns the text alignment used for @tool_item. Custom subclasses of
67982 #GtkToolItem should call this function to find out how text should
67983 be aligned.
67984 used for @tool_item</doc>
67985         <return-value transfer-ownership="none">
67986           <doc xml:whitespace="preserve">a #gfloat indicating the horizontal text alignment</doc>
67987           <type name="float" c:type="gfloat"/>
67988         </return-value>
67989       </method>
67990       <method name="get_text_orientation"
67991               c:identifier="gtk_tool_item_get_text_orientation"
67992               version="2.20">
67993         <doc xml:whitespace="preserve">Returns the text orientation used for @tool_item. Custom subclasses of
67994 #GtkToolItem should call this function to find out how text should
67995 be orientated.
67996 used for @tool_item</doc>
67997         <return-value transfer-ownership="full">
67998           <doc xml:whitespace="preserve">a #GtkOrientation indicating the text orientation</doc>
67999           <type name="Orientation" c:type="GtkOrientation"/>
68000         </return-value>
68001       </method>
68002       <method name="get_text_size_group"
68003               c:identifier="gtk_tool_item_get_text_size_group"
68004               version="2.20">
68005         <doc xml:whitespace="preserve">Returns the size group used for labels in @tool_item. Custom subclasses of
68006 #GtkToolItem should call this function and use the size group for labels.</doc>
68007         <return-value transfer-ownership="full">
68008           <doc xml:whitespace="preserve">a #GtkSizeGroup</doc>
68009           <type name="SizeGroup" c:type="GtkSizeGroup*"/>
68010         </return-value>
68011       </method>
68012       <method name="retrieve_proxy_menu_item"
68013               c:identifier="gtk_tool_item_retrieve_proxy_menu_item"
68014               version="2.4">
68015         <doc xml:whitespace="preserve">Returns the #GtkMenuItem that was last set by
68016 gtk_tool_item_set_proxy_menu_item(), ie. the #GtkMenuItem
68017 that is going to appear in the overflow menu.
68018 overflow menu for @tool_item.</doc>
68019         <return-value transfer-ownership="none">
68020           <doc xml:whitespace="preserve">The #GtkMenuItem that is going to appear in the</doc>
68021           <type name="Widget" c:type="GtkWidget*"/>
68022         </return-value>
68023       </method>
68024       <method name="get_proxy_menu_item"
68025               c:identifier="gtk_tool_item_get_proxy_menu_item"
68026               version="2.4">
68027         <doc xml:whitespace="preserve">If @menu_item_id matches the string passed to
68028 gtk_tool_item_set_proxy_menu_item() return the corresponding #GtkMenuItem.
68029 Custom subclasses of #GtkToolItem should use this function to update
68030 their menu item when the #GtkToolItem changes. That the
68031 inadvertently change a menu item that they did not create.
68032 gtk_tool_item_set_proxy_menu_item(), if the @menu_item_id&lt;!-- --&gt;s match.</doc>
68033         <return-value transfer-ownership="full">
68034           <doc xml:whitespace="preserve">The #GtkMenuItem passed to</doc>
68035           <type name="Widget" c:type="GtkWidget*"/>
68036         </return-value>
68037         <parameters>
68038           <parameter name="menu_item_id" transfer-ownership="none">
68039             <doc xml:whitespace="preserve">a string used to identify the menu item</doc>
68040             <type name="utf8" c:type="gchar*"/>
68041           </parameter>
68042         </parameters>
68043       </method>
68044       <method name="set_proxy_menu_item"
68045               c:identifier="gtk_tool_item_set_proxy_menu_item"
68046               version="2.4">
68047         <doc xml:whitespace="preserve">Sets the #GtkMenuItem used in the toolbar overflow menu. The
68048 should also be used with gtk_tool_item_get_proxy_menu_item().</doc>
68049         <return-value transfer-ownership="none">
68050           <type name="none" c:type="void"/>
68051         </return-value>
68052         <parameters>
68053           <parameter name="menu_item_id" transfer-ownership="none">
68054             <doc xml:whitespace="preserve">a string used to identify @menu_item</doc>
68055             <type name="utf8" c:type="gchar*"/>
68056           </parameter>
68057           <parameter name="menu_item" transfer-ownership="none">
68058             <doc xml:whitespace="preserve">a #GtkMenuItem to be used in the overflow menu</doc>
68059             <type name="Widget" c:type="GtkWidget*"/>
68060           </parameter>
68061         </parameters>
68062       </method>
68063       <method name="rebuild_menu"
68064               c:identifier="gtk_tool_item_rebuild_menu"
68065               version="2.6">
68066         <doc xml:whitespace="preserve">Calling this function signals to the toolbar that the
68067 overflow menu item for @tool_item has changed. If the
68068 overflow menu is visible when this function it called,
68069 the menu will be rebuilt.
68070 The function must be called when the tool item changes what it
68071 will do in response to the #GtkToolItem::create-menu-proxy signal.</doc>
68072         <return-value transfer-ownership="none">
68073           <type name="none" c:type="void"/>
68074         </return-value>
68075       </method>
68076       <method name="toolbar_reconfigured"
68077               c:identifier="gtk_tool_item_toolbar_reconfigured"
68078               version="2.14">
68079         <doc xml:whitespace="preserve">Emits the signal #GtkToolItem::toolbar_reconfigured on @tool_item.
68080 #GtkToolbar and other #GtkToolShell implementations use this function
68081 to notify children, when some aspect of their configuration changes.</doc>
68082         <return-value transfer-ownership="none">
68083           <type name="none" c:type="void"/>
68084         </return-value>
68085       </method>
68086       <property name="is-important" writable="1" transfer-ownership="none">
68087         <type name="boolean" c:type="gboolean"/>
68088       </property>
68089       <property name="visible-horizontal"
68090                 writable="1"
68091                 transfer-ownership="none">
68092         <type name="boolean" c:type="gboolean"/>
68093       </property>
68094       <property name="visible-vertical" writable="1" transfer-ownership="none">
68095         <type name="boolean" c:type="gboolean"/>
68096       </property>
68097       <field name="parent">
68098         <type name="Bin" c:type="GtkBin"/>
68099       </field>
68100       <field name="priv">
68101         <type name="ToolItemPrivate" c:type="GtkToolItemPrivate*"/>
68102       </field>
68103       <glib:signal name="create-menu-proxy">
68104         <doc xml:whitespace="preserve">This signal is emitted when the toolbar needs information from @tool_item
68105 about whether the item should appear in the toolbar overflow menu. In
68106 response the tool item should either
68107 &lt;itemizedlist&gt;
68108 &lt;listitem&gt;call gtk_tool_item_set_proxy_menu_item() with a %NULL
68109 pointer and return %TRUE to indicate that the item should not appear
68110 in the overflow menu
68111 &lt;/listitem&gt;
68112 &lt;listitem&gt; call gtk_tool_item_set_proxy_menu_item() with a new menu
68113 item and return %TRUE, or 
68114 &lt;/listitem&gt;
68115 &lt;listitem&gt; return %FALSE to indicate that the signal was not
68116 handled by the item. This means that
68117 the item will not appear in the overflow menu unless a later handler
68118 installs a menu item.
68119 &lt;/listitem&gt;
68120 &lt;/itemizedlist&gt;
68121 The toolbar may cache the result of this signal. When the tool item changes
68122 how it will respond to this signal it must call gtk_tool_item_rebuild_menu()
68123 to invalidate the cache and ensure that the toolbar rebuilds its overflow
68124 menu.</doc>
68125         <return-value transfer-ownership="full">
68126           <doc xml:whitespace="preserve">%TRUE if the signal was handled, %FALSE if not</doc>
68127           <type name="boolean" c:type="gboolean"/>
68128         </return-value>
68129       </glib:signal>
68130       <glib:signal name="set-tooltip"
68131                    deprecated="With the new tooltip API, there is no"
68132                    deprecated-version="2.12">
68133         <doc xml:whitespace="preserve">This signal is emitted when the toolitem's tooltip changes.
68134 Application developers can use gtk_tool_item_set_tooltip() to
68135 set the item's tooltip.
68136 need to use this signal anymore.</doc>
68137         <return-value transfer-ownership="full">
68138           <doc xml:whitespace="preserve">%TRUE if the signal was handled, %FALSE if not</doc>
68139           <type name="boolean" c:type="gboolean"/>
68140         </return-value>
68141         <parameters>
68142           <parameter name="tooltips" transfer-ownership="none">
68143             <doc xml:whitespace="preserve">the #GtkTooltips</doc>
68144             <type name="Tooltips" c:type="GtkTooltips"/>
68145           </parameter>
68146           <parameter name="tip_text" transfer-ownership="none">
68147             <doc xml:whitespace="preserve">the tooltip text</doc>
68148             <type name="utf8" c:type="gchararray"/>
68149           </parameter>
68150           <parameter name="tip_private" transfer-ownership="none">
68151             <doc xml:whitespace="preserve">the tooltip private text</doc>
68152             <type name="utf8" c:type="gchararray"/>
68153           </parameter>
68154         </parameters>
68155       </glib:signal>
68156       <glib:signal name="toolbar-reconfigured">
68157         <doc xml:whitespace="preserve">This signal is emitted when some property of the toolbar that the
68158 item is a child of changes. For custom subclasses of #GtkToolItem,
68159 the default handler of this signal use the functions
68160 &lt;itemizedlist&gt;
68161 &lt;listitem&gt;gtk_tool_shell_get_orientation()&lt;/listitem&gt;
68162 &lt;listitem&gt;gtk_tool_shell_get_style()&lt;/listitem&gt;
68163 &lt;listitem&gt;gtk_tool_shell_get_icon_size()&lt;/listitem&gt;
68164 &lt;listitem&gt;gtk_tool_shell_get_relief_style()&lt;/listitem&gt;
68165 &lt;/itemizedlist&gt;
68166 to find out what the toolbar should look like and change
68167 themselves accordingly.</doc>
68168         <return-value transfer-ownership="full">
68169           <type name="none" c:type="void"/>
68170         </return-value>
68171       </glib:signal>
68172     </class>
68173     <record name="ToolItemClass"
68174             c:type="GtkToolItemClass"
68175             glib:is-gtype-struct-for="ToolItem">
68176       <field name="parent_class">
68177         <type name="BinClass" c:type="GtkBinClass"/>
68178       </field>
68179       <field name="create_menu_proxy">
68180         <callback name="create_menu_proxy" c:type="create_menu_proxy">
68181           <return-value transfer-ownership="none">
68182             <type name="boolean" c:type="gboolean"/>
68183           </return-value>
68184           <parameters>
68185             <parameter name="tool_item" transfer-ownership="none">
68186               <type name="ToolItem" c:type="GtkToolItem*"/>
68187             </parameter>
68188           </parameters>
68189         </callback>
68190       </field>
68191       <field name="toolbar_reconfigured">
68192         <callback name="toolbar_reconfigured" c:type="toolbar_reconfigured">
68193           <return-value transfer-ownership="none">
68194             <type name="none" c:type="void"/>
68195           </return-value>
68196           <parameters>
68197             <parameter name="tool_item" transfer-ownership="none">
68198               <type name="ToolItem" c:type="GtkToolItem*"/>
68199             </parameter>
68200           </parameters>
68201         </callback>
68202       </field>
68203       <field name="set_tooltip">
68204         <callback name="set_tooltip" c:type="set_tooltip">
68205           <return-value transfer-ownership="none">
68206             <type name="boolean" c:type="gboolean"/>
68207           </return-value>
68208           <parameters>
68209             <parameter name="tool_item" transfer-ownership="none">
68210               <type name="ToolItem" c:type="GtkToolItem*"/>
68211             </parameter>
68212             <parameter name="tooltips" transfer-ownership="none">
68213               <type name="Tooltips" c:type="GtkTooltips*"/>
68214             </parameter>
68215             <parameter name="tip_text" transfer-ownership="none">
68216               <type name="utf8" c:type="gchar*"/>
68217             </parameter>
68218             <parameter name="tip_private" transfer-ownership="none">
68219               <type name="utf8" c:type="gchar*"/>
68220             </parameter>
68221           </parameters>
68222         </callback>
68223       </field>
68224       <field name="gtk_reserved1">
68225         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
68226           <return-value transfer-ownership="none">
68227             <type name="none" c:type="void"/>
68228           </return-value>
68229         </callback>
68230       </field>
68231       <field name="gtk_reserved2">
68232         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
68233           <return-value transfer-ownership="none">
68234             <type name="none" c:type="void"/>
68235           </return-value>
68236         </callback>
68237       </field>
68238       <field name="gtk_reserved3">
68239         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
68240           <return-value transfer-ownership="none">
68241             <type name="none" c:type="void"/>
68242           </return-value>
68243         </callback>
68244       </field>
68245       <field name="gtk_reserved4">
68246         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
68247           <return-value transfer-ownership="none">
68248             <type name="none" c:type="void"/>
68249           </return-value>
68250         </callback>
68251       </field>
68252     </record>
68253     <class name="ToolItemGroup"
68254            c:type="GtkToolItemGroup"
68255            parent="Container"
68256            glib:type-name="GtkToolItemGroup"
68257            glib:get-type="gtk_tool_item_group_get_type"
68258            glib:type-struct="ToolItemGroupClass">
68259       <doc xml:whitespace="preserve">This should not be accessed directly. Use the accessor functions below.</doc>
68260       <implements name="Atk.ImplementorIface"/>
68261       <implements name="Buildable"/>
68262       <implements name="ToolShell"/>
68263       <constructor name="new"
68264                    c:identifier="gtk_tool_item_group_new"
68265                    version="2.20">
68266         <doc xml:whitespace="preserve">Creates a new tool item group with label @label.</doc>
68267         <return-value transfer-ownership="full">
68268           <doc xml:whitespace="preserve">a new #GtkToolItemGroup.</doc>
68269           <type name="ToolItemGroup" c:type="GtkWidget*"/>
68270         </return-value>
68271         <parameters>
68272           <parameter name="label" transfer-ownership="none">
68273             <doc xml:whitespace="preserve">the label of the new group</doc>
68274             <type name="utf8" c:type="gchar*"/>
68275           </parameter>
68276         </parameters>
68277       </constructor>
68278       <method name="set_label"
68279               c:identifier="gtk_tool_item_group_set_label"
68280               version="2.20">
68281         <doc xml:whitespace="preserve">Sets the label of the tool item group. The label is displayed in the header
68282 of the group.</doc>
68283         <return-value transfer-ownership="none">
68284           <type name="none" c:type="void"/>
68285         </return-value>
68286         <parameters>
68287           <parameter name="label" transfer-ownership="none">
68288             <doc xml:whitespace="preserve">the new human-readable label of of the group</doc>
68289             <type name="utf8" c:type="gchar*"/>
68290           </parameter>
68291         </parameters>
68292       </method>
68293       <method name="set_label_widget"
68294               c:identifier="gtk_tool_item_group_set_label_widget"
68295               version="2.20">
68296         <doc xml:whitespace="preserve">Sets the label of the tool item group.
68297 The label widget is displayed in the header of the group, in place
68298 of the usual label.</doc>
68299         <return-value transfer-ownership="none">
68300           <type name="none" c:type="void"/>
68301         </return-value>
68302         <parameters>
68303           <parameter name="label_widget" transfer-ownership="none">
68304             <doc xml:whitespace="preserve">the widget to be displayed in place of the usual label</doc>
68305             <type name="Widget" c:type="GtkWidget*"/>
68306           </parameter>
68307         </parameters>
68308       </method>
68309       <method name="set_collapsed"
68310               c:identifier="gtk_tool_item_group_set_collapsed"
68311               version="2.20">
68312         <doc xml:whitespace="preserve">Sets whether the @group should be collapsed or expanded.</doc>
68313         <return-value transfer-ownership="none">
68314           <type name="none" c:type="void"/>
68315         </return-value>
68316         <parameters>
68317           <parameter name="collapsed" transfer-ownership="none">
68318             <doc xml:whitespace="preserve">whether the @group should be collapsed or expanded</doc>
68319             <type name="boolean" c:type="gboolean"/>
68320           </parameter>
68321         </parameters>
68322       </method>
68323       <method name="set_ellipsize"
68324               c:identifier="gtk_tool_item_group_set_ellipsize"
68325               version="2.20">
68326         <doc xml:whitespace="preserve">Sets the ellipsization mode which should be used by labels in @group.</doc>
68327         <return-value transfer-ownership="none">
68328           <type name="none" c:type="void"/>
68329         </return-value>
68330         <parameters>
68331           <parameter name="ellipsize" transfer-ownership="none">
68332             <doc xml:whitespace="preserve">the #PangoEllipsizeMode labels in @group should use</doc>
68333             <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
68334           </parameter>
68335         </parameters>
68336       </method>
68337       <method name="set_header_relief"
68338               c:identifier="gtk_tool_item_group_set_header_relief"
68339               version="2.20">
68340         <doc xml:whitespace="preserve">Set the button relief of the group header.
68341 See gtk_button_set_relief() for details.</doc>
68342         <return-value transfer-ownership="none">
68343           <type name="none" c:type="void"/>
68344         </return-value>
68345         <parameters>
68346           <parameter name="style" transfer-ownership="none">
68347             <doc xml:whitespace="preserve">the #GtkReliefStyle</doc>
68348             <type name="ReliefStyle" c:type="GtkReliefStyle"/>
68349           </parameter>
68350         </parameters>
68351       </method>
68352       <method name="get_label"
68353               c:identifier="gtk_tool_item_group_get_label"
68354               version="2.20">
68355         <doc xml:whitespace="preserve">Gets the label of @group.
68356 and must not be modified. Note that %NULL is returned if a custom
68357 label has been set with gtk_tool_item_group_set_label_widget()</doc>
68358         <return-value transfer-ownership="none">
68359           <doc xml:whitespace="preserve">the label of @group. The label is an internal string of @group</doc>
68360           <type name="utf8" c:type="gchar*"/>
68361         </return-value>
68362       </method>
68363       <method name="get_label_widget"
68364               c:identifier="gtk_tool_item_group_get_label_widget"
68365               version="2.20">
68366         <doc xml:whitespace="preserve">Gets the label widget of @group.
68367 See gtk_tool_item_group_set_label_widget().</doc>
68368         <return-value transfer-ownership="full">
68369           <doc xml:whitespace="preserve">the label widget of @group</doc>
68370           <type name="Widget" c:type="GtkWidget*"/>
68371         </return-value>
68372       </method>
68373       <method name="get_collapsed"
68374               c:identifier="gtk_tool_item_group_get_collapsed"
68375               version="2.20">
68376         <doc xml:whitespace="preserve">Gets whether @group is collapsed or expanded.</doc>
68377         <return-value transfer-ownership="none">
68378           <doc xml:whitespace="preserve">%TRUE if @group is collapsed, %FALSE if it is expanded</doc>
68379           <type name="boolean" c:type="gboolean"/>
68380         </return-value>
68381       </method>
68382       <method name="get_ellipsize"
68383               c:identifier="gtk_tool_item_group_get_ellipsize"
68384               version="2.20">
68385         <doc xml:whitespace="preserve">Gets the ellipsization mode of @group.</doc>
68386         <return-value transfer-ownership="full">
68387           <doc xml:whitespace="preserve">the #PangoEllipsizeMode of @group</doc>
68388           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
68389         </return-value>
68390       </method>
68391       <method name="get_header_relief"
68392               c:identifier="gtk_tool_item_group_get_header_relief"
68393               version="2.20">
68394         <doc xml:whitespace="preserve">Gets the relief mode of the header button of @group.</doc>
68395         <return-value transfer-ownership="full">
68396           <doc xml:whitespace="preserve">the #GtkReliefStyle</doc>
68397           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
68398         </return-value>
68399       </method>
68400       <method name="insert"
68401               c:identifier="gtk_tool_item_group_insert"
68402               version="2.20">
68403         <doc xml:whitespace="preserve">Inserts @item at @position in the list of children of @group.</doc>
68404         <return-value transfer-ownership="none">
68405           <type name="none" c:type="void"/>
68406         </return-value>
68407         <parameters>
68408           <parameter name="item" transfer-ownership="none">
68409             <doc xml:whitespace="preserve">the #GtkToolItem to insert into @group</doc>
68410             <type name="ToolItem" c:type="GtkToolItem*"/>
68411           </parameter>
68412           <parameter name="position" transfer-ownership="none">
68413             <doc xml:whitespace="preserve">the position of @item in @group, starting with 0. The position -1 means end of list.</doc>
68414             <type name="int" c:type="gint"/>
68415           </parameter>
68416         </parameters>
68417       </method>
68418       <method name="set_item_position"
68419               c:identifier="gtk_tool_item_group_set_item_position"
68420               version="2.20">
68421         <doc xml:whitespace="preserve">Sets the position of @item in the list of children of @group.</doc>
68422         <return-value transfer-ownership="none">
68423           <type name="none" c:type="void"/>
68424         </return-value>
68425         <parameters>
68426           <parameter name="item" transfer-ownership="none">
68427             <doc xml:whitespace="preserve">the #GtkToolItem to move to a new position, should be a child of @group.</doc>
68428             <type name="ToolItem" c:type="GtkToolItem*"/>
68429           </parameter>
68430           <parameter name="position" transfer-ownership="none">
68431             <doc xml:whitespace="preserve">the new position of @item in @group, starting with 0. The position -1 means end of list.</doc>
68432             <type name="int" c:type="gint"/>
68433           </parameter>
68434         </parameters>
68435       </method>
68436       <method name="get_item_position"
68437               c:identifier="gtk_tool_item_group_get_item_position"
68438               version="2.20">
68439         <doc xml:whitespace="preserve">Gets the position of @item in @group as index.</doc>
68440         <return-value transfer-ownership="none">
68441           <doc xml:whitespace="preserve">the index of @item in @group or -1 if @item is no child of @group</doc>
68442           <type name="int" c:type="gint"/>
68443         </return-value>
68444         <parameters>
68445           <parameter name="item" transfer-ownership="none">
68446             <doc xml:whitespace="preserve">a #GtkToolItem</doc>
68447             <type name="ToolItem" c:type="GtkToolItem*"/>
68448           </parameter>
68449         </parameters>
68450       </method>
68451       <method name="get_n_items"
68452               c:identifier="gtk_tool_item_group_get_n_items"
68453               version="2.20">
68454         <doc xml:whitespace="preserve">Gets the number of tool items in @group.</doc>
68455         <return-value transfer-ownership="none">
68456           <doc xml:whitespace="preserve">the number of tool items in @group</doc>
68457           <type name="uint" c:type="guint"/>
68458         </return-value>
68459       </method>
68460       <method name="get_nth_item"
68461               c:identifier="gtk_tool_item_group_get_nth_item"
68462               version="2.20">
68463         <doc xml:whitespace="preserve">Gets the tool item at @index in group.</doc>
68464         <return-value transfer-ownership="full">
68465           <doc xml:whitespace="preserve">the #GtkToolItem at index</doc>
68466           <type name="ToolItem" c:type="GtkToolItem*"/>
68467         </return-value>
68468         <parameters>
68469           <parameter name="index" transfer-ownership="none">
68470             <doc xml:whitespace="preserve">the index</doc>
68471             <type name="uint" c:type="guint"/>
68472           </parameter>
68473         </parameters>
68474       </method>
68475       <method name="get_drop_item"
68476               c:identifier="gtk_tool_item_group_get_drop_item"
68477               version="2.20">
68478         <doc xml:whitespace="preserve">Gets the tool item at position (x, y).</doc>
68479         <return-value transfer-ownership="full">
68480           <doc xml:whitespace="preserve">the #GtkToolItem at position (x, y)</doc>
68481           <type name="ToolItem" c:type="GtkToolItem*"/>
68482         </return-value>
68483         <parameters>
68484           <parameter name="x" transfer-ownership="none">
68485             <doc xml:whitespace="preserve">the x position</doc>
68486             <type name="int" c:type="gint"/>
68487           </parameter>
68488           <parameter name="y" transfer-ownership="none">
68489             <doc xml:whitespace="preserve">the y position</doc>
68490             <type name="int" c:type="gint"/>
68491           </parameter>
68492         </parameters>
68493       </method>
68494       <property name="collapsed" writable="1" transfer-ownership="none">
68495         <type name="boolean" c:type="gboolean"/>
68496       </property>
68497       <property name="ellipsize" writable="1" transfer-ownership="none">
68498         <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
68499       </property>
68500       <property name="header-relief" writable="1" transfer-ownership="none">
68501         <type name="ReliefStyle" c:type="GtkReliefStyle"/>
68502       </property>
68503       <property name="label" writable="1" transfer-ownership="none">
68504         <type name="utf8" c:type="gchararray"/>
68505       </property>
68506       <property name="label-widget" writable="1" transfer-ownership="none">
68507         <type name="Widget" c:type="GtkWidget"/>
68508       </property>
68509       <field name="parent_instance">
68510         <type name="Container" c:type="GtkContainer"/>
68511       </field>
68512       <field name="priv">
68513         <type name="ToolItemGroupPrivate" c:type="GtkToolItemGroupPrivate*"/>
68514       </field>
68515     </class>
68516     <record name="ToolItemGroupClass"
68517             c:type="GtkToolItemGroupClass"
68518             glib:is-gtype-struct-for="ToolItemGroup">
68519       <field name="parent_class">
68520         <type name="ContainerClass" c:type="GtkContainerClass"/>
68521       </field>
68522     </record>
68523     <record name="ToolItemGroupPrivate" c:type="GtkToolItemGroupPrivate">
68524     </record>
68525     <record name="ToolItemPrivate" c:type="GtkToolItemPrivate">
68526     </record>
68527     <class name="ToolPalette"
68528            c:type="GtkToolPalette"
68529            parent="Container"
68530            glib:type-name="GtkToolPalette"
68531            glib:get-type="gtk_tool_palette_get_type"
68532            glib:type-struct="ToolPaletteClass">
68533       <doc xml:whitespace="preserve">This should not be accessed directly. Use the accessor functions below.</doc>
68534       <implements name="Atk.ImplementorIface"/>
68535       <implements name="Buildable"/>
68536       <implements name="Orientable"/>
68537       <constructor name="new"
68538                    c:identifier="gtk_tool_palette_new"
68539                    version="2.20">
68540         <doc xml:whitespace="preserve">Creates a new tool palette.</doc>
68541         <return-value transfer-ownership="full">
68542           <doc xml:whitespace="preserve">a new #GtkToolPalette</doc>
68543           <type name="ToolPalette" c:type="GtkWidget*"/>
68544         </return-value>
68545       </constructor>
68546       <function name="get_drag_target_item"
68547                 c:identifier="gtk_tool_palette_get_drag_target_item"
68548                 version="2.20">
68549         <doc xml:whitespace="preserve">Gets the target entry for a dragged #GtkToolItem.</doc>
68550         <return-value transfer-ownership="none">
68551           <doc xml:whitespace="preserve">the #GtkTargetEntry for a dragged item.</doc>
68552           <type name="TargetEntry" c:type="GtkTargetEntry*"/>
68553         </return-value>
68554       </function>
68555       <function name="get_drag_target_group"
68556                 c:identifier="gtk_tool_palette_get_drag_target_group"
68557                 version="2.20">
68558         <doc xml:whitespace="preserve">Get the target entry for a dragged #GtkToolItemGroup.</doc>
68559         <return-value transfer-ownership="none">
68560           <doc xml:whitespace="preserve">the #GtkTargetEntry for a dragged group</doc>
68561           <type name="TargetEntry" c:type="GtkTargetEntry*"/>
68562         </return-value>
68563       </function>
68564       <method name="set_group_position"
68565               c:identifier="gtk_tool_palette_set_group_position"
68566               version="2.20">
68567         <doc xml:whitespace="preserve">Sets the position of the group as an index of the tool palette.
68568 If position is 0 the group will become the first child, if position is
68569 -1 it will become the last child.</doc>
68570         <return-value transfer-ownership="none">
68571           <type name="none" c:type="void"/>
68572         </return-value>
68573         <parameters>
68574           <parameter name="group" transfer-ownership="none">
68575             <doc xml:whitespace="preserve">a #GtkToolItemGroup which is a child of palette</doc>
68576             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
68577           </parameter>
68578           <parameter name="position" transfer-ownership="none">
68579             <doc xml:whitespace="preserve">a new index for group</doc>
68580             <type name="int" c:type="gint"/>
68581           </parameter>
68582         </parameters>
68583       </method>
68584       <method name="set_exclusive"
68585               c:identifier="gtk_tool_palette_set_exclusive"
68586               version="2.20">
68587         <doc xml:whitespace="preserve">Sets whether the group should be exclusive or not.
68588 If an exclusive group is expanded all other groups are collapsed.</doc>
68589         <return-value transfer-ownership="none">
68590           <type name="none" c:type="void"/>
68591         </return-value>
68592         <parameters>
68593           <parameter name="group" transfer-ownership="none">
68594             <doc xml:whitespace="preserve">a #GtkToolItemGroup which is a child of palette</doc>
68595             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
68596           </parameter>
68597           <parameter name="exclusive" transfer-ownership="none">
68598             <doc xml:whitespace="preserve">whether the group should be exclusive or not</doc>
68599             <type name="boolean" c:type="gboolean"/>
68600           </parameter>
68601         </parameters>
68602       </method>
68603       <method name="set_expand"
68604               c:identifier="gtk_tool_palette_set_expand"
68605               version="2.20">
68606         <doc xml:whitespace="preserve">Sets whether the group should be given extra space.</doc>
68607         <return-value transfer-ownership="none">
68608           <type name="none" c:type="void"/>
68609         </return-value>
68610         <parameters>
68611           <parameter name="group" transfer-ownership="none">
68612             <doc xml:whitespace="preserve">a #GtkToolItemGroup which is a child of palette</doc>
68613             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
68614           </parameter>
68615           <parameter name="expand" transfer-ownership="none">
68616             <doc xml:whitespace="preserve">whether the group should be given extra space</doc>
68617             <type name="boolean" c:type="gboolean"/>
68618           </parameter>
68619         </parameters>
68620       </method>
68621       <method name="get_group_position"
68622               c:identifier="gtk_tool_palette_get_group_position"
68623               version="2.20">
68624         <doc xml:whitespace="preserve">Gets the position of @group in @palette as index.
68625 See gtk_tool_palette_set_group_position().</doc>
68626         <return-value transfer-ownership="none">
68627           <doc xml:whitespace="preserve">the index of group or -1 if @group is not a child of @palette</doc>
68628           <type name="int" c:type="gint"/>
68629         </return-value>
68630         <parameters>
68631           <parameter name="group" transfer-ownership="none">
68632             <doc xml:whitespace="preserve">a #GtkToolItemGroup</doc>
68633             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
68634           </parameter>
68635         </parameters>
68636       </method>
68637       <method name="get_exclusive"
68638               c:identifier="gtk_tool_palette_get_exclusive"
68639               version="2.20">
68640         <doc xml:whitespace="preserve">Gets whether @group is exclusive or not.
68641 See gtk_tool_palette_set_exclusive().</doc>
68642         <return-value transfer-ownership="none">
68643           <doc xml:whitespace="preserve">%TRUE if @group is exclusive</doc>
68644           <type name="boolean" c:type="gboolean"/>
68645         </return-value>
68646         <parameters>
68647           <parameter name="group" transfer-ownership="none">
68648             <doc xml:whitespace="preserve">a #GtkToolItemGroup which is a child of palette</doc>
68649             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
68650           </parameter>
68651         </parameters>
68652       </method>
68653       <method name="get_expand"
68654               c:identifier="gtk_tool_palette_get_expand"
68655               version="2.20">
68656         <doc xml:whitespace="preserve">Gets whether group should be given extra space.
68657 See gtk_tool_palette_set_expand().</doc>
68658         <return-value transfer-ownership="none">
68659           <doc xml:whitespace="preserve">%TRUE if group should be given extra space, %FALSE otherwise</doc>
68660           <type name="boolean" c:type="gboolean"/>
68661         </return-value>
68662         <parameters>
68663           <parameter name="group" transfer-ownership="none">
68664             <doc xml:whitespace="preserve">a #GtkToolItemGroup which is a child of palette</doc>
68665             <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
68666           </parameter>
68667         </parameters>
68668       </method>
68669       <method name="set_icon_size"
68670               c:identifier="gtk_tool_palette_set_icon_size"
68671               version="2.20">
68672         <doc xml:whitespace="preserve">Sets the size of icons in the tool palette.</doc>
68673         <return-value transfer-ownership="none">
68674           <type name="none" c:type="void"/>
68675         </return-value>
68676         <parameters>
68677           <parameter name="icon_size" transfer-ownership="none">
68678             <doc xml:whitespace="preserve">the #GtkIconSize that icons in the tool palette shall have</doc>
68679             <type name="int" c:type="GtkIconSize"/>
68680           </parameter>
68681         </parameters>
68682       </method>
68683       <method name="unset_icon_size"
68684               c:identifier="gtk_tool_palette_unset_icon_size"
68685               version="2.20">
68686         <doc xml:whitespace="preserve">Unsets the tool palette icon size set with gtk_tool_palette_set_icon_size(),
68687 so that user preferences will be used to determine the icon size.</doc>
68688         <return-value transfer-ownership="none">
68689           <type name="none" c:type="void"/>
68690         </return-value>
68691       </method>
68692       <method name="set_style"
68693               c:identifier="gtk_tool_palette_set_style"
68694               version="2.20">
68695         <doc xml:whitespace="preserve">Sets the style (text, icons or both) of items in the tool palette.</doc>
68696         <return-value transfer-ownership="none">
68697           <type name="none" c:type="void"/>
68698         </return-value>
68699         <parameters>
68700           <parameter name="style" transfer-ownership="none">
68701             <doc xml:whitespace="preserve">the #GtkToolbarStyle that items in the tool palette shall have</doc>
68702             <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
68703           </parameter>
68704         </parameters>
68705       </method>
68706       <method name="unset_style"
68707               c:identifier="gtk_tool_palette_unset_style"
68708               version="2.20">
68709         <doc xml:whitespace="preserve">Unsets a toolbar style set with gtk_tool_palette_set_style(),
68710 so that user preferences will be used to determine the toolbar style.</doc>
68711         <return-value transfer-ownership="none">
68712           <type name="none" c:type="void"/>
68713         </return-value>
68714       </method>
68715       <method name="get_icon_size"
68716               c:identifier="gtk_tool_palette_get_icon_size"
68717               version="2.20">
68718         <doc xml:whitespace="preserve">Gets the size of icons in the tool palette.
68719 See gtk_tool_palette_set_icon_size().</doc>
68720         <return-value transfer-ownership="full">
68721           <doc xml:whitespace="preserve">the #GtkIconSize of icons in the tool palette</doc>
68722           <type name="int" c:type="GtkIconSize"/>
68723         </return-value>
68724       </method>
68725       <method name="get_style"
68726               c:identifier="gtk_tool_palette_get_style"
68727               version="2.20">
68728         <doc xml:whitespace="preserve">Gets the style (icons, text or both) of items in the tool palette.</doc>
68729         <return-value transfer-ownership="full">
68730           <doc xml:whitespace="preserve">the #GtkToolbarStyle of items in the tool palette.</doc>
68731           <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
68732         </return-value>
68733       </method>
68734       <method name="get_drop_item"
68735               c:identifier="gtk_tool_palette_get_drop_item"
68736               version="2.20">
68737         <doc xml:whitespace="preserve">Gets the item at position (x, y).
68738 See gtk_tool_palette_get_drop_group().</doc>
68739         <return-value transfer-ownership="full">
68740           <doc xml:whitespace="preserve">the #GtkToolItem at position or %NULL if there is no such item</doc>
68741           <type name="ToolItem" c:type="GtkToolItem*"/>
68742         </return-value>
68743         <parameters>
68744           <parameter name="x" transfer-ownership="none">
68745             <doc xml:whitespace="preserve">the x position</doc>
68746             <type name="int" c:type="gint"/>
68747           </parameter>
68748           <parameter name="y" transfer-ownership="none">
68749             <doc xml:whitespace="preserve">the y position</doc>
68750             <type name="int" c:type="gint"/>
68751           </parameter>
68752         </parameters>
68753       </method>
68754       <method name="get_drop_group"
68755               c:identifier="gtk_tool_palette_get_drop_group"
68756               version="2.20">
68757         <doc xml:whitespace="preserve">Gets the group at position (x, y).
68758 if there is no such group</doc>
68759         <return-value transfer-ownership="full">
68760           <doc xml:whitespace="preserve">the #GtkToolItemGroup at position or %NULL</doc>
68761           <type name="ToolItemGroup" c:type="GtkToolItemGroup*"/>
68762         </return-value>
68763         <parameters>
68764           <parameter name="x" transfer-ownership="none">
68765             <doc xml:whitespace="preserve">the x position</doc>
68766             <type name="int" c:type="gint"/>
68767           </parameter>
68768           <parameter name="y" transfer-ownership="none">
68769             <doc xml:whitespace="preserve">the y position</doc>
68770             <type name="int" c:type="gint"/>
68771           </parameter>
68772         </parameters>
68773       </method>
68774       <method name="get_drag_item"
68775               c:identifier="gtk_tool_palette_get_drag_item"
68776               version="2.20">
68777         <doc xml:whitespace="preserve">Get the dragged item from the selection.
68778 This could be a #GtkToolItem or a #GtkToolItemGroup.</doc>
68779         <return-value transfer-ownership="full">
68780           <doc xml:whitespace="preserve">the dragged item in selection</doc>
68781           <type name="Widget" c:type="GtkWidget*"/>
68782         </return-value>
68783         <parameters>
68784           <parameter name="selection" transfer-ownership="none">
68785             <doc xml:whitespace="preserve">a #GtkSelectionData</doc>
68786             <type name="SelectionData" c:type="GtkSelectionData*"/>
68787           </parameter>
68788         </parameters>
68789       </method>
68790       <method name="set_drag_source"
68791               c:identifier="gtk_tool_palette_set_drag_source"
68792               version="2.20">
68793         <doc xml:whitespace="preserve">Sets the tool palette as a drag source.
68794 Enables all groups and items in the tool palette as drag sources
68795 on button 1 and button 3 press with copy and move actions.
68796 See gtk_drag_source_set().</doc>
68797         <return-value transfer-ownership="none">
68798           <type name="none" c:type="void"/>
68799         </return-value>
68800         <parameters>
68801           <parameter name="targets" transfer-ownership="none">
68802             <doc xml:whitespace="preserve">the #GtkToolPaletteDragTarget&lt;!-- --&gt;s which the widget should support</doc>
68803             <type name="ToolPaletteDragTargets"
68804                   c:type="GtkToolPaletteDragTargets"/>
68805           </parameter>
68806         </parameters>
68807       </method>
68808       <method name="add_drag_dest"
68809               c:identifier="gtk_tool_palette_add_drag_dest"
68810               version="2.20">
68811         <doc xml:whitespace="preserve">Sets @palette as drag source (see gtk_tool_palette_set_drag_source())
68812 and sets @widget as a drag destination for drags from @palette.
68813 See gtk_drag_dest_set().</doc>
68814         <return-value transfer-ownership="none">
68815           <type name="none" c:type="void"/>
68816         </return-value>
68817         <parameters>
68818           <parameter name="widget" transfer-ownership="none">
68819             <doc xml:whitespace="preserve">a #GtkWidget which should be a drag destination for @palette</doc>
68820             <type name="Widget" c:type="GtkWidget*"/>
68821           </parameter>
68822           <parameter name="flags" transfer-ownership="none">
68823             <doc xml:whitespace="preserve">the flags that specify what actions GTK+ should take for drops on that widget</doc>
68824             <type name="DestDefaults" c:type="GtkDestDefaults"/>
68825           </parameter>
68826           <parameter name="targets" transfer-ownership="none">
68827             <doc xml:whitespace="preserve">the #GtkToolPaletteDragTarget&lt;!-- --&gt;s which the widget should support</doc>
68828             <type name="ToolPaletteDragTargets"
68829                   c:type="GtkToolPaletteDragTargets"/>
68830           </parameter>
68831           <parameter name="actions" transfer-ownership="none">
68832             <doc xml:whitespace="preserve">the #GdkDragAction&lt;!-- --&gt;s which the widget should suppport</doc>
68833             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
68834           </parameter>
68835         </parameters>
68836       </method>
68837       <method name="get_hadjustment"
68838               c:identifier="gtk_tool_palette_get_hadjustment"
68839               version="2.20">
68840         <doc xml:whitespace="preserve">Gets the horizontal adjustment of the tool palette.</doc>
68841         <return-value transfer-ownership="full">
68842           <doc xml:whitespace="preserve">the horizontal adjustment of @palette</doc>
68843           <type name="Adjustment" c:type="GtkAdjustment*"/>
68844         </return-value>
68845       </method>
68846       <method name="get_vadjustment"
68847               c:identifier="gtk_tool_palette_get_vadjustment"
68848               version="2.20">
68849         <doc xml:whitespace="preserve">Gets the vertical adjustment of the tool palette.</doc>
68850         <return-value transfer-ownership="full">
68851           <doc xml:whitespace="preserve">the vertical adjustment of @palette</doc>
68852           <type name="Adjustment" c:type="GtkAdjustment*"/>
68853         </return-value>
68854       </method>
68855       <property name="icon-size"
68856                 version="2.20"
68857                 writable="1"
68858                 transfer-ownership="none">
68859         <doc xml:whitespace="preserve">The size of the icons in a tool palette is normally determined by
68860 the #GtkSettings:toolbar-icon-size setting. When this property is set,
68861 it overrides the setting.
68862 This should only be used for special-purpose tool palettes, normal
68863 application tool palettes should respect the user preferences for the
68864 size of icons.</doc>
68865         <type name="IconSize" c:type="GtkIconSize"/>
68866       </property>
68867       <property name="icon-size-set"
68868                 version="2.20"
68869                 writable="1"
68870                 transfer-ownership="none">
68871         <doc xml:whitespace="preserve">Is %TRUE if the #GtkToolPalette:icon-size property has been set.</doc>
68872         <type name="boolean" c:type="gboolean"/>
68873       </property>
68874       <property name="toolbar-style"
68875                 version="2.20"
68876                 writable="1"
68877                 transfer-ownership="none">
68878         <doc xml:whitespace="preserve">The style of items in the tool palette.</doc>
68879         <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
68880       </property>
68881       <field name="parent_instance">
68882         <type name="Container" c:type="GtkContainer"/>
68883       </field>
68884       <field name="priv">
68885         <type name="ToolPalettePrivate" c:type="GtkToolPalettePrivate*"/>
68886       </field>
68887       <glib:signal name="set-scroll-adjustments" version="2.20">
68888         <doc xml:whitespace="preserve">Set the scroll adjustments for the viewport.
68889 Usually scrolled containers like GtkScrolledWindow will emit this
68890 signal to connect two instances of GtkScrollbar to the scroll
68891 directions of the GtkToolpalette.</doc>
68892         <return-value transfer-ownership="full">
68893           <type name="none" c:type="void"/>
68894         </return-value>
68895         <parameters>
68896           <parameter name="hadjustment" transfer-ownership="none">
68897             <doc xml:whitespace="preserve">The horizontal adjustment</doc>
68898             <type name="Adjustment" c:type="GtkAdjustment"/>
68899           </parameter>
68900           <parameter name="vadjustment" transfer-ownership="none">
68901             <doc xml:whitespace="preserve">The vertical adjustment</doc>
68902             <type name="Adjustment" c:type="GtkAdjustment"/>
68903           </parameter>
68904         </parameters>
68905       </glib:signal>
68906     </class>
68907     <record name="ToolPaletteClass"
68908             c:type="GtkToolPaletteClass"
68909             glib:is-gtype-struct-for="ToolPalette">
68910       <field name="parent_class">
68911         <type name="ContainerClass" c:type="GtkContainerClass"/>
68912       </field>
68913       <field name="set_scroll_adjustments">
68914         <callback name="set_scroll_adjustments"
68915                   c:type="set_scroll_adjustments">
68916           <return-value transfer-ownership="none">
68917             <type name="none" c:type="void"/>
68918           </return-value>
68919           <parameters>
68920             <parameter name="widget" transfer-ownership="none">
68921               <type name="Widget" c:type="GtkWidget*"/>
68922             </parameter>
68923             <parameter name="hadjustment" transfer-ownership="none">
68924               <type name="Adjustment" c:type="GtkAdjustment*"/>
68925             </parameter>
68926             <parameter name="vadjustment" transfer-ownership="none">
68927               <type name="Adjustment" c:type="GtkAdjustment*"/>
68928             </parameter>
68929           </parameters>
68930         </callback>
68931       </field>
68932       <field name="gtk_reserved1">
68933         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
68934           <return-value transfer-ownership="none">
68935             <type name="none" c:type="void"/>
68936           </return-value>
68937         </callback>
68938       </field>
68939       <field name="gtk_reserved2">
68940         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
68941           <return-value transfer-ownership="none">
68942             <type name="none" c:type="void"/>
68943           </return-value>
68944         </callback>
68945       </field>
68946       <field name="gtk_reserved3">
68947         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
68948           <return-value transfer-ownership="none">
68949             <type name="none" c:type="void"/>
68950           </return-value>
68951         </callback>
68952       </field>
68953       <field name="gtk_reserved4">
68954         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
68955           <return-value transfer-ownership="none">
68956             <type name="none" c:type="void"/>
68957           </return-value>
68958         </callback>
68959       </field>
68960       <field name="gtk_reserved5">
68961         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
68962           <return-value transfer-ownership="none">
68963             <type name="none" c:type="void"/>
68964           </return-value>
68965         </callback>
68966       </field>
68967       <field name="gtk_reserved6">
68968         <callback name="gtk_reserved6" c:type="_gtk_reserved6">
68969           <return-value transfer-ownership="none">
68970             <type name="none" c:type="void"/>
68971           </return-value>
68972         </callback>
68973       </field>
68974     </record>
68975     <bitfield name="ToolPaletteDragTargets"
68976               glib:type-name="GtkToolPaletteDragTargets"
68977               glib:get-type="gtk_tool_palette_drag_targets_get_type"
68978               c:type="GtkToolPaletteDragTargets">
68979       <doc xml:whitespace="preserve">Flags used to specify the supported drag targets.</doc>
68980       <member name="items"
68981               value="1"
68982               c:identifier="GTK_TOOL_PALETTE_DRAG_ITEMS"
68983               glib:nick="items"/>
68984       <member name="groups"
68985               value="2"
68986               c:identifier="GTK_TOOL_PALETTE_DRAG_GROUPS"
68987               glib:nick="groups"/>
68988     </bitfield>
68989     <record name="ToolPalettePrivate" c:type="GtkToolPalettePrivate">
68990     </record>
68991     <interface name="ToolShell"
68992                c:type="GtkToolShell"
68993                glib:type-name="GtkToolShell"
68994                glib:get-type="gtk_tool_shell_get_type"
68995                glib:type-struct="ToolShellIface">
68996       <doc xml:whitespace="preserve">Dummy structure for accessing instances of #GtkToolShellIface.</doc>
68997       <prerequisite name="Widget"/>
68998       <virtual-method name="get_icon_size"
68999                       invoker="get_icon_size"
69000                       version="2.14">
69001         <doc xml:whitespace="preserve">Retrieves the icon size for the tool shell. Tool items must not call this
69002 function directly, but rely on gtk_tool_item_get_icon_size() instead.</doc>
69003         <return-value transfer-ownership="full">
69004           <doc xml:whitespace="preserve">the current size for icons of @shell</doc>
69005           <type name="int" c:type="GtkIconSize"/>
69006         </return-value>
69007       </virtual-method>
69008       <virtual-method name="get_orientation"
69009                       invoker="get_orientation"
69010                       version="2.14">
69011         <doc xml:whitespace="preserve">Retrieves the current orientation for the tool shell. Tool items must not
69012 call this function directly, but rely on gtk_tool_item_get_orientation()
69013 instead.</doc>
69014         <return-value transfer-ownership="full">
69015           <doc xml:whitespace="preserve">the current orientation of @shell</doc>
69016           <type name="Orientation" c:type="GtkOrientation"/>
69017         </return-value>
69018       </virtual-method>
69019       <virtual-method name="get_style" invoker="get_style" version="2.14">
69020         <doc xml:whitespace="preserve">Retrieves whether the tool shell has text, icons, or both. Tool items must
69021 not call this function directly, but rely on gtk_tool_item_get_style()
69022 instead.</doc>
69023         <return-value transfer-ownership="full">
69024           <doc xml:whitespace="preserve">the current style of @shell</doc>
69025           <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
69026         </return-value>
69027       </virtual-method>
69028       <virtual-method name="get_relief_style"
69029                       invoker="get_relief_style"
69030                       version="2.14">
69031         <doc xml:whitespace="preserve">Returns the relief style of buttons on @shell. Tool items must not call this
69032 function directly, but rely on gtk_tool_item_get_relief_style() instead.</doc>
69033         <return-value transfer-ownership="full">
69034           <doc xml:whitespace="preserve">The relief style of buttons on @shell.</doc>
69035           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
69036         </return-value>
69037       </virtual-method>
69038       <virtual-method name="rebuild_menu"
69039                       invoker="rebuild_menu"
69040                       version="2.14">
69041         <doc xml:whitespace="preserve">Calling this function signals the tool shell that the overflow menu item for
69042 tool items have changed. If there is an overflow menu and if it is visible
69043 when this function it called, the menu will be rebuilt.
69044 Tool items must not call this function directly, but rely on
69045 gtk_tool_item_rebuild_menu() instead.</doc>
69046         <return-value transfer-ownership="none">
69047           <type name="none" c:type="void"/>
69048         </return-value>
69049       </virtual-method>
69050       <virtual-method name="get_text_orientation"
69051                       invoker="get_text_orientation"
69052                       version="2.14">
69053         <doc xml:whitespace="preserve">Retrieves the current text orientation for the tool shell. Tool items must not
69054 call this function directly, but rely on gtk_tool_item_get_text_orientation()
69055 instead.</doc>
69056         <return-value transfer-ownership="full">
69057           <doc xml:whitespace="preserve">the current text orientation of @shell</doc>
69058           <type name="Orientation" c:type="GtkOrientation"/>
69059         </return-value>
69060       </virtual-method>
69061       <virtual-method name="get_text_alignment"
69062                       invoker="get_text_alignment"
69063                       version="2.14">
69064         <doc xml:whitespace="preserve">Retrieves the current text alignment for the tool shell. Tool items must not
69065 call this function directly, but rely on gtk_tool_item_get_text_alignment()
69066 instead.</doc>
69067         <return-value transfer-ownership="none">
69068           <doc xml:whitespace="preserve">the current text alignment of @shell</doc>
69069           <type name="float" c:type="gfloat"/>
69070         </return-value>
69071       </virtual-method>
69072       <virtual-method name="get_ellipsize_mode" invoker="get_ellipsize_mode">
69073         <return-value transfer-ownership="full">
69074           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
69075         </return-value>
69076       </virtual-method>
69077       <virtual-method name="get_text_size_group"
69078                       invoker="get_text_size_group"
69079                       version="2.14">
69080         <doc xml:whitespace="preserve">Retrieves the current text size group for the tool shell. Tool items must not
69081 call this function directly, but rely on gtk_tool_item_get_text_size_group()
69082 instead.</doc>
69083         <return-value transfer-ownership="full">
69084           <doc xml:whitespace="preserve">the current text size group of @shell</doc>
69085           <type name="SizeGroup" c:type="GtkSizeGroup*"/>
69086         </return-value>
69087       </virtual-method>
69088       <method name="get_icon_size"
69089               c:identifier="gtk_tool_shell_get_icon_size"
69090               version="2.14">
69091         <doc xml:whitespace="preserve">Retrieves the icon size for the tool shell. Tool items must not call this
69092 function directly, but rely on gtk_tool_item_get_icon_size() instead.</doc>
69093         <return-value transfer-ownership="full">
69094           <doc xml:whitespace="preserve">the current size for icons of @shell</doc>
69095           <type name="int" c:type="GtkIconSize"/>
69096         </return-value>
69097       </method>
69098       <method name="get_orientation"
69099               c:identifier="gtk_tool_shell_get_orientation"
69100               version="2.14">
69101         <doc xml:whitespace="preserve">Retrieves the current orientation for the tool shell. Tool items must not
69102 call this function directly, but rely on gtk_tool_item_get_orientation()
69103 instead.</doc>
69104         <return-value transfer-ownership="full">
69105           <doc xml:whitespace="preserve">the current orientation of @shell</doc>
69106           <type name="Orientation" c:type="GtkOrientation"/>
69107         </return-value>
69108       </method>
69109       <method name="get_style"
69110               c:identifier="gtk_tool_shell_get_style"
69111               version="2.14">
69112         <doc xml:whitespace="preserve">Retrieves whether the tool shell has text, icons, or both. Tool items must
69113 not call this function directly, but rely on gtk_tool_item_get_style()
69114 instead.</doc>
69115         <return-value transfer-ownership="full">
69116           <doc xml:whitespace="preserve">the current style of @shell</doc>
69117           <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
69118         </return-value>
69119       </method>
69120       <method name="get_relief_style"
69121               c:identifier="gtk_tool_shell_get_relief_style"
69122               version="2.14">
69123         <doc xml:whitespace="preserve">Returns the relief style of buttons on @shell. Tool items must not call this
69124 function directly, but rely on gtk_tool_item_get_relief_style() instead.</doc>
69125         <return-value transfer-ownership="full">
69126           <doc xml:whitespace="preserve">The relief style of buttons on @shell.</doc>
69127           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
69128         </return-value>
69129       </method>
69130       <method name="rebuild_menu"
69131               c:identifier="gtk_tool_shell_rebuild_menu"
69132               version="2.14">
69133         <doc xml:whitespace="preserve">Calling this function signals the tool shell that the overflow menu item for
69134 tool items have changed. If there is an overflow menu and if it is visible
69135 when this function it called, the menu will be rebuilt.
69136 Tool items must not call this function directly, but rely on
69137 gtk_tool_item_rebuild_menu() instead.</doc>
69138         <return-value transfer-ownership="none">
69139           <type name="none" c:type="void"/>
69140         </return-value>
69141       </method>
69142       <method name="get_text_orientation"
69143               c:identifier="gtk_tool_shell_get_text_orientation"
69144               version="2.14">
69145         <doc xml:whitespace="preserve">Retrieves the current text orientation for the tool shell. Tool items must not
69146 call this function directly, but rely on gtk_tool_item_get_text_orientation()
69147 instead.</doc>
69148         <return-value transfer-ownership="full">
69149           <doc xml:whitespace="preserve">the current text orientation of @shell</doc>
69150           <type name="Orientation" c:type="GtkOrientation"/>
69151         </return-value>
69152       </method>
69153       <method name="get_text_alignment"
69154               c:identifier="gtk_tool_shell_get_text_alignment"
69155               version="2.14">
69156         <doc xml:whitespace="preserve">Retrieves the current text alignment for the tool shell. Tool items must not
69157 call this function directly, but rely on gtk_tool_item_get_text_alignment()
69158 instead.</doc>
69159         <return-value transfer-ownership="none">
69160           <doc xml:whitespace="preserve">the current text alignment of @shell</doc>
69161           <type name="float" c:type="gfloat"/>
69162         </return-value>
69163       </method>
69164       <method name="get_ellipsize_mode"
69165               c:identifier="gtk_tool_shell_get_ellipsize_mode">
69166         <return-value transfer-ownership="full">
69167           <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
69168         </return-value>
69169       </method>
69170       <method name="get_text_size_group"
69171               c:identifier="gtk_tool_shell_get_text_size_group"
69172               version="2.14">
69173         <doc xml:whitespace="preserve">Retrieves the current text size group for the tool shell. Tool items must not
69174 call this function directly, but rely on gtk_tool_item_get_text_size_group()
69175 instead.</doc>
69176         <return-value transfer-ownership="full">
69177           <doc xml:whitespace="preserve">the current text size group of @shell</doc>
69178           <type name="SizeGroup" c:type="GtkSizeGroup*"/>
69179         </return-value>
69180       </method>
69181     </interface>
69182     <record name="ToolShellIface"
69183             c:type="GtkToolShellIface"
69184             glib:is-gtype-struct-for="ToolShell">
69185       <doc xml:whitespace="preserve">Virtual function table for the #GtkToolShell interface.</doc>
69186       <field name="g_iface">
69187         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
69188       </field>
69189       <field name="get_icon_size">
69190         <callback name="get_icon_size" c:type="get_icon_size">
69191           <return-value transfer-ownership="full">
69192             <doc xml:whitespace="preserve">the current size for icons of @shell</doc>
69193             <type name="int" c:type="GtkIconSize"/>
69194           </return-value>
69195           <parameters>
69196             <parameter name="shell" transfer-ownership="none">
69197               <type name="ToolShell" c:type="GtkToolShell*"/>
69198             </parameter>
69199           </parameters>
69200         </callback>
69201       </field>
69202       <field name="get_orientation">
69203         <callback name="get_orientation" c:type="get_orientation">
69204           <return-value transfer-ownership="full">
69205             <doc xml:whitespace="preserve">the current orientation of @shell</doc>
69206             <type name="Orientation" c:type="GtkOrientation"/>
69207           </return-value>
69208           <parameters>
69209             <parameter name="shell" transfer-ownership="none">
69210               <type name="ToolShell" c:type="GtkToolShell*"/>
69211             </parameter>
69212           </parameters>
69213         </callback>
69214       </field>
69215       <field name="get_style">
69216         <callback name="get_style" c:type="get_style">
69217           <return-value transfer-ownership="full">
69218             <doc xml:whitespace="preserve">the current style of @shell</doc>
69219             <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
69220           </return-value>
69221           <parameters>
69222             <parameter name="shell" transfer-ownership="none">
69223               <type name="ToolShell" c:type="GtkToolShell*"/>
69224             </parameter>
69225           </parameters>
69226         </callback>
69227       </field>
69228       <field name="get_relief_style">
69229         <callback name="get_relief_style" c:type="get_relief_style">
69230           <return-value transfer-ownership="full">
69231             <doc xml:whitespace="preserve">The relief style of buttons on @shell.</doc>
69232             <type name="ReliefStyle" c:type="GtkReliefStyle"/>
69233           </return-value>
69234           <parameters>
69235             <parameter name="shell" transfer-ownership="none">
69236               <type name="ToolShell" c:type="GtkToolShell*"/>
69237             </parameter>
69238           </parameters>
69239         </callback>
69240       </field>
69241       <field name="rebuild_menu">
69242         <callback name="rebuild_menu" c:type="rebuild_menu">
69243           <return-value transfer-ownership="none">
69244             <type name="none" c:type="void"/>
69245           </return-value>
69246           <parameters>
69247             <parameter name="shell" transfer-ownership="none">
69248               <type name="ToolShell" c:type="GtkToolShell*"/>
69249             </parameter>
69250           </parameters>
69251         </callback>
69252       </field>
69253       <field name="get_text_orientation">
69254         <callback name="get_text_orientation" c:type="get_text_orientation">
69255           <return-value transfer-ownership="full">
69256             <doc xml:whitespace="preserve">the current text orientation of @shell</doc>
69257             <type name="Orientation" c:type="GtkOrientation"/>
69258           </return-value>
69259           <parameters>
69260             <parameter name="shell" transfer-ownership="none">
69261               <type name="ToolShell" c:type="GtkToolShell*"/>
69262             </parameter>
69263           </parameters>
69264         </callback>
69265       </field>
69266       <field name="get_text_alignment">
69267         <callback name="get_text_alignment" c:type="get_text_alignment">
69268           <return-value transfer-ownership="none">
69269             <doc xml:whitespace="preserve">the current text alignment of @shell</doc>
69270             <type name="float" c:type="gfloat"/>
69271           </return-value>
69272           <parameters>
69273             <parameter name="shell" transfer-ownership="none">
69274               <type name="ToolShell" c:type="GtkToolShell*"/>
69275             </parameter>
69276           </parameters>
69277         </callback>
69278       </field>
69279       <field name="get_ellipsize_mode">
69280         <callback name="get_ellipsize_mode" c:type="get_ellipsize_mode">
69281           <return-value transfer-ownership="full">
69282             <type name="Pango.EllipsizeMode" c:type="PangoEllipsizeMode"/>
69283           </return-value>
69284           <parameters>
69285             <parameter name="shell" transfer-ownership="none">
69286               <type name="ToolShell" c:type="GtkToolShell*"/>
69287             </parameter>
69288           </parameters>
69289         </callback>
69290       </field>
69291       <field name="get_text_size_group">
69292         <callback name="get_text_size_group" c:type="get_text_size_group">
69293           <return-value transfer-ownership="full">
69294             <doc xml:whitespace="preserve">the current text size group of @shell</doc>
69295             <type name="SizeGroup" c:type="GtkSizeGroup*"/>
69296           </return-value>
69297           <parameters>
69298             <parameter name="shell" transfer-ownership="none">
69299               <type name="ToolShell" c:type="GtkToolShell*"/>
69300             </parameter>
69301           </parameters>
69302         </callback>
69303       </field>
69304     </record>
69305     <class name="Toolbar"
69306            c:type="GtkToolbar"
69307            parent="Container"
69308            glib:type-name="GtkToolbar"
69309            glib:get-type="gtk_toolbar_get_type"
69310            glib:type-struct="ToolbarClass">
69311       <implements name="Atk.ImplementorIface"/>
69312       <implements name="Buildable"/>
69313       <implements name="Orientable"/>
69314       <implements name="ToolShell"/>
69315       <constructor name="new" c:identifier="gtk_toolbar_new">
69316         <doc xml:whitespace="preserve">Creates a new toolbar.</doc>
69317         <return-value transfer-ownership="full">
69318           <doc xml:whitespace="preserve">the newly-created toolbar.</doc>
69319           <type name="Toolbar" c:type="GtkWidget*"/>
69320         </return-value>
69321       </constructor>
69322       <method name="insert" c:identifier="gtk_toolbar_insert" version="2.4">
69323         <doc xml:whitespace="preserve">Insert a #GtkToolItem into the toolbar at position @pos. If @pos is
69324 0 the item is prepended to the start of the toolbar. If @pos is
69325 negative, the item is appended to the end of the toolbar.</doc>
69326         <return-value transfer-ownership="none">
69327           <type name="none" c:type="void"/>
69328         </return-value>
69329         <parameters>
69330           <parameter name="item" transfer-ownership="none">
69331             <doc xml:whitespace="preserve">a #GtkToolItem</doc>
69332             <type name="ToolItem" c:type="GtkToolItem*"/>
69333           </parameter>
69334           <parameter name="pos" transfer-ownership="none">
69335             <doc xml:whitespace="preserve">the position of the new item</doc>
69336             <type name="int" c:type="gint"/>
69337           </parameter>
69338         </parameters>
69339       </method>
69340       <method name="get_item_index"
69341               c:identifier="gtk_toolbar_get_item_index"
69342               version="2.4">
69343         <doc xml:whitespace="preserve">Returns the position of @item on the toolbar, starting from 0.
69344 It is an error if @item is not a child of the toolbar.</doc>
69345         <return-value transfer-ownership="none">
69346           <doc xml:whitespace="preserve">the position of item on the toolbar.</doc>
69347           <type name="int" c:type="gint"/>
69348         </return-value>
69349         <parameters>
69350           <parameter name="item" transfer-ownership="none">
69351             <doc xml:whitespace="preserve">a #GtkToolItem that is a child of @toolbar</doc>
69352             <type name="ToolItem" c:type="GtkToolItem*"/>
69353           </parameter>
69354         </parameters>
69355       </method>
69356       <method name="get_n_items"
69357               c:identifier="gtk_toolbar_get_n_items"
69358               version="2.4">
69359         <doc xml:whitespace="preserve">Returns the number of items on the toolbar.</doc>
69360         <return-value transfer-ownership="none">
69361           <doc xml:whitespace="preserve">the number of items on the toolbar</doc>
69362           <type name="int" c:type="gint"/>
69363         </return-value>
69364       </method>
69365       <method name="get_nth_item"
69366               c:identifier="gtk_toolbar_get_nth_item"
69367               version="2.4">
69368         <doc xml:whitespace="preserve">Returns the @n&lt;!-- --&gt;'th item on @toolbar, or %NULL if the
69369 toolbar does not contain an @n&lt;!-- --&gt;'th item.
69370 isn't an @n&lt;!-- --&gt;'th item.</doc>
69371         <return-value transfer-ownership="full">
69372           <doc xml:whitespace="preserve">The @n&lt;!-- --&gt;'th #GtkToolItem on @toolbar, or %NULL if there</doc>
69373           <type name="ToolItem" c:type="GtkToolItem*"/>
69374         </return-value>
69375         <parameters>
69376           <parameter name="n" transfer-ownership="none">
69377             <doc xml:whitespace="preserve">A position on the toolbar</doc>
69378             <type name="int" c:type="gint"/>
69379           </parameter>
69380         </parameters>
69381       </method>
69382       <method name="get_show_arrow"
69383               c:identifier="gtk_toolbar_get_show_arrow"
69384               version="2.4">
69385         <doc xml:whitespace="preserve">Returns whether the toolbar has an overflow menu.
69386 See gtk_toolbar_set_show_arrow().</doc>
69387         <return-value transfer-ownership="none">
69388           <doc xml:whitespace="preserve">%TRUE if the toolbar has an overflow menu.</doc>
69389           <type name="boolean" c:type="gboolean"/>
69390         </return-value>
69391       </method>
69392       <method name="set_show_arrow"
69393               c:identifier="gtk_toolbar_set_show_arrow"
69394               version="2.4">
69395         <doc xml:whitespace="preserve">Sets whether to show an overflow menu when
69396 items that there are not room are available through an
69397 overflow menu.</doc>
69398         <return-value transfer-ownership="none">
69399           <type name="none" c:type="void"/>
69400         </return-value>
69401         <parameters>
69402           <parameter name="show_arrow" transfer-ownership="none">
69403             <doc xml:whitespace="preserve">Whether to show an overflow menu</doc>
69404             <type name="boolean" c:type="gboolean"/>
69405           </parameter>
69406         </parameters>
69407       </method>
69408       <method name="get_style" c:identifier="gtk_toolbar_get_style">
69409         <doc xml:whitespace="preserve">Retrieves whether the toolbar has text, icons, or both . See
69410 gtk_toolbar_set_style().</doc>
69411         <return-value transfer-ownership="full">
69412           <doc xml:whitespace="preserve">the current style of @toolbar</doc>
69413           <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
69414         </return-value>
69415       </method>
69416       <method name="set_style" c:identifier="gtk_toolbar_set_style">
69417         <doc xml:whitespace="preserve">Alters the view of @toolbar to display either icons only, text only, or both.</doc>
69418         <return-value transfer-ownership="none">
69419           <type name="none" c:type="void"/>
69420         </return-value>
69421         <parameters>
69422           <parameter name="style" transfer-ownership="none">
69423             <doc xml:whitespace="preserve">the new style for @toolbar.</doc>
69424             <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
69425           </parameter>
69426         </parameters>
69427       </method>
69428       <method name="unset_style" c:identifier="gtk_toolbar_unset_style">
69429         <doc xml:whitespace="preserve">Unsets a toolbar style set with gtk_toolbar_set_style(), so that
69430 user preferences will be used to determine the toolbar style.</doc>
69431         <return-value transfer-ownership="none">
69432           <type name="none" c:type="void"/>
69433         </return-value>
69434       </method>
69435       <method name="get_icon_size" c:identifier="gtk_toolbar_get_icon_size">
69436         <doc xml:whitespace="preserve">Retrieves the icon size for the toolbar. See gtk_toolbar_set_icon_size().
69437 the toolbar.</doc>
69438         <return-value transfer-ownership="full">
69439           <doc xml:whitespace="preserve">the current icon size for the icons on</doc>
69440           <type name="int" c:type="GtkIconSize"/>
69441         </return-value>
69442       </method>
69443       <method name="set_icon_size" c:identifier="gtk_toolbar_set_icon_size">
69444         <doc xml:whitespace="preserve">This function sets the size of stock icons in the toolbar. You
69445 can call it both before you add the icons and after they've been
69446 added. The size you set will override user preferences for the default
69447 icon size.
69448 This should only be used for special-purpose toolbars, normal
69449 application toolbars should respect the user preferences for the
69450 size of icons.</doc>
69451         <return-value transfer-ownership="none">
69452           <type name="none" c:type="void"/>
69453         </return-value>
69454         <parameters>
69455           <parameter name="icon_size" transfer-ownership="none">
69456             <doc xml:whitespace="preserve">The #GtkIconSize that stock icons in the toolbar shall have.</doc>
69457             <type name="int" c:type="GtkIconSize"/>
69458           </parameter>
69459         </parameters>
69460       </method>
69461       <method name="unset_icon_size"
69462               c:identifier="gtk_toolbar_unset_icon_size">
69463         <doc xml:whitespace="preserve">Unsets toolbar icon size set with gtk_toolbar_set_icon_size(), so that
69464 user preferences will be used to determine the icon size.</doc>
69465         <return-value transfer-ownership="none">
69466           <type name="none" c:type="void"/>
69467         </return-value>
69468       </method>
69469       <method name="get_relief_style"
69470               c:identifier="gtk_toolbar_get_relief_style"
69471               version="2.4">
69472         <doc xml:whitespace="preserve">Returns the relief style of buttons on @toolbar. See
69473 gtk_button_set_relief().</doc>
69474         <return-value transfer-ownership="full">
69475           <doc xml:whitespace="preserve">The relief style of buttons on @toolbar.</doc>
69476           <type name="ReliefStyle" c:type="GtkReliefStyle"/>
69477         </return-value>
69478       </method>
69479       <method name="get_drop_index"
69480               c:identifier="gtk_toolbar_get_drop_index"
69481               version="2.4">
69482         <doc xml:whitespace="preserve">Returns the position corresponding to the indicated point on
69483 this function returns the position a new item should be
69484 inserted.</doc>
69485         <return-value transfer-ownership="none">
69486           <doc xml:whitespace="preserve">The position corresponding to the point (@x, @y) on the toolbar.</doc>
69487           <type name="int" c:type="gint"/>
69488         </return-value>
69489         <parameters>
69490           <parameter name="x" transfer-ownership="none">
69491             <doc xml:whitespace="preserve">x coordinate of a point on the toolbar</doc>
69492             <type name="int" c:type="gint"/>
69493           </parameter>
69494           <parameter name="y" transfer-ownership="none">
69495             <doc xml:whitespace="preserve">y coordinate of a point on the toolbar</doc>
69496             <type name="int" c:type="gint"/>
69497           </parameter>
69498         </parameters>
69499       </method>
69500       <method name="set_drop_highlight_item"
69501               c:identifier="gtk_toolbar_set_drop_highlight_item"
69502               version="2.4">
69503         <doc xml:whitespace="preserve">Highlights @toolbar to give an idea of what it would look like
69504 if @item was added to @toolbar at the position indicated by @index_.
69505 If @item is %NULL, highlighting is turned off. In that case @index_ 
69506 is ignored.
69507 The @tool_item passed to this function must not be part of any widget
69508 hierarchy. When an item is set as drop highlight item it can not
69509 added to any widget hierarchy or used as highlight item for another
69510 toolbar.</doc>
69511         <return-value transfer-ownership="none">
69512           <type name="none" c:type="void"/>
69513         </return-value>
69514         <parameters>
69515           <parameter name="tool_item" transfer-ownership="none" allow-none="1">
69516             <doc xml:whitespace="preserve">a #GtkToolItem, or %NULL to turn of highlighting</doc>
69517             <type name="ToolItem" c:type="GtkToolItem*"/>
69518           </parameter>
69519           <parameter name="index_" transfer-ownership="none">
69520             <doc xml:whitespace="preserve">a position on @toolbar</doc>
69521             <type name="int" c:type="gint"/>
69522           </parameter>
69523         </parameters>
69524       </method>
69525       <method name="get_orientation"
69526               c:identifier="gtk_toolbar_get_orientation"
69527               deprecated="Use gtk_orientable_get_orientation() instead."
69528               deprecated-version="2.16">
69529         <doc xml:whitespace="preserve">Retrieves the current orientation of the toolbar. See
69530 gtk_toolbar_set_orientation().</doc>
69531         <return-value transfer-ownership="full">
69532           <doc xml:whitespace="preserve">the orientation</doc>
69533           <type name="Orientation" c:type="GtkOrientation"/>
69534         </return-value>
69535       </method>
69536       <method name="set_orientation"
69537               c:identifier="gtk_toolbar_set_orientation"
69538               deprecated="Use gtk_orientable_set_orientation() instead."
69539               deprecated-version="2.16">
69540         <doc xml:whitespace="preserve">Sets whether a toolbar should appear horizontally or vertically.</doc>
69541         <return-value transfer-ownership="none">
69542           <type name="none" c:type="void"/>
69543         </return-value>
69544         <parameters>
69545           <parameter name="orientation" transfer-ownership="none">
69546             <doc xml:whitespace="preserve">a new #GtkOrientation.</doc>
69547             <type name="Orientation" c:type="GtkOrientation"/>
69548           </parameter>
69549         </parameters>
69550       </method>
69551       <method name="get_tooltips"
69552               c:identifier="gtk_toolbar_get_tooltips"
69553               deprecated="The toolkit-wide #GtkSettings:gtk-enable-tooltips property"
69554               deprecated-version="2.14">
69555         <doc xml:whitespace="preserve">Retrieves whether tooltips are enabled. See
69556 gtk_toolbar_set_tooltips().
69557 is now used instead.</doc>
69558         <return-value transfer-ownership="none">
69559           <doc xml:whitespace="preserve">%TRUE if tooltips are enabled</doc>
69560           <type name="boolean" c:type="gboolean"/>
69561         </return-value>
69562       </method>
69563       <method name="set_tooltips"
69564               c:identifier="gtk_toolbar_set_tooltips"
69565               deprecated="The toolkit-wide #GtkSettings:gtk-enable-tooltips property"
69566               deprecated-version="2.14">
69567         <doc xml:whitespace="preserve">Sets if the tooltips of a toolbar should be active or not.
69568 is now used instead.</doc>
69569         <return-value transfer-ownership="none">
69570           <type name="none" c:type="void"/>
69571         </return-value>
69572         <parameters>
69573           <parameter name="enable" transfer-ownership="none">
69574             <doc xml:whitespace="preserve">set to %FALSE to disable the tooltips, or %TRUE to enable them.</doc>
69575             <type name="boolean" c:type="gboolean"/>
69576           </parameter>
69577         </parameters>
69578       </method>
69579       <method name="append_item"
69580               c:identifier="gtk_toolbar_append_item"
69581               deprecated="Use gtk_toolbar_insert() instead."
69582               deprecated-version="2.4">
69583         <doc xml:whitespace="preserve">Inserts a new item into the toolbar. You must specify the position
69584 in the toolbar where it will be inserted.
69585 arguments. Use G_CALLBACK() to cast the function to #GCallback.</doc>
69586         <return-value transfer-ownership="full">
69587           <doc xml:whitespace="preserve">the new toolbar item as a #GtkWidget.</doc>
69588           <type name="Widget" c:type="GtkWidget*"/>
69589         </return-value>
69590         <parameters>
69591           <parameter name="text" transfer-ownership="none">
69592             <doc xml:whitespace="preserve">give your toolbar button a label.</doc>
69593             <type name="utf8" c:type="char*"/>
69594           </parameter>
69595           <parameter name="tooltip_text" transfer-ownership="none">
69596             <doc xml:whitespace="preserve">a string that appears when the user holds the mouse over this item.</doc>
69597             <type name="utf8" c:type="char*"/>
69598           </parameter>
69599           <parameter name="tooltip_private_text" transfer-ownership="none">
69600             <doc xml:whitespace="preserve">use with #GtkTipsQuery.</doc>
69601             <type name="utf8" c:type="char*"/>
69602           </parameter>
69603           <parameter name="icon" transfer-ownership="none">
69604             <doc xml:whitespace="preserve">a #GtkWidget that should be used as the button's icon.</doc>
69605             <type name="Widget" c:type="GtkWidget*"/>
69606           </parameter>
69607           <parameter name="callback"
69608                      transfer-ownership="none"
69609                      scope="call"
69610                      closure="6">
69611             <doc xml:whitespace="preserve">the function to be executed when the button is pressed.</doc>
69612             <type name="GObject.Callback" c:type="GCallback"/>
69613           </parameter>
69614           <parameter name="user_data" transfer-ownership="none">
69615             <doc xml:whitespace="preserve">a pointer to any data you wish to be passed to the callback.</doc>
69616             <type name="any" c:type="gpointer"/>
69617           </parameter>
69618         </parameters>
69619       </method>
69620       <method name="prepend_item"
69621               c:identifier="gtk_toolbar_prepend_item"
69622               deprecated="Use gtk_toolbar_insert() instead."
69623               deprecated-version="2.4">
69624         <doc xml:whitespace="preserve">Adds a new button to the beginning (top or left edges) of the given toolbar.
69625 arguments. Use G_CALLBACK() to cast the function to #GCallback.</doc>
69626         <return-value transfer-ownership="full">
69627           <doc xml:whitespace="preserve">the new toolbar item as a #GtkWidget.</doc>
69628           <type name="Widget" c:type="GtkWidget*"/>
69629         </return-value>
69630         <parameters>
69631           <parameter name="text" transfer-ownership="none">
69632             <doc xml:whitespace="preserve">give your toolbar button a label.</doc>
69633             <type name="utf8" c:type="char*"/>
69634           </parameter>
69635           <parameter name="tooltip_text" transfer-ownership="none">
69636             <doc xml:whitespace="preserve">a string that appears when the user holds the mouse over this item.</doc>
69637             <type name="utf8" c:type="char*"/>
69638           </parameter>
69639           <parameter name="tooltip_private_text" transfer-ownership="none">
69640             <doc xml:whitespace="preserve">use with #GtkTipsQuery.</doc>
69641             <type name="utf8" c:type="char*"/>
69642           </parameter>
69643           <parameter name="icon" transfer-ownership="none">
69644             <doc xml:whitespace="preserve">a #GtkWidget that should be used as the button's icon.</doc>
69645             <type name="Widget" c:type="GtkWidget*"/>
69646           </parameter>
69647           <parameter name="callback"
69648                      transfer-ownership="none"
69649                      scope="call"
69650                      closure="6">
69651             <doc xml:whitespace="preserve">the function to be executed when the button is pressed.</doc>
69652             <type name="GObject.Callback" c:type="GCallback"/>
69653           </parameter>
69654           <parameter name="user_data" transfer-ownership="none">
69655             <doc xml:whitespace="preserve">a pointer to any data you wish to be passed to the callback.</doc>
69656             <type name="any" c:type="gpointer"/>
69657           </parameter>
69658         </parameters>
69659       </method>
69660       <method name="insert_item"
69661               c:identifier="gtk_toolbar_insert_item"
69662               deprecated="Use gtk_toolbar_insert() instead."
69663               deprecated-version="2.4">
69664         <doc xml:whitespace="preserve">Inserts a new item into the toolbar. You must specify the position in the
69665 toolbar where it will be inserted.
69666 arguments. Use G_CALLBACK() to cast the function to #GCallback.</doc>
69667         <return-value transfer-ownership="full">
69668           <doc xml:whitespace="preserve">the new toolbar item as a #GtkWidget.</doc>
69669           <type name="Widget" c:type="GtkWidget*"/>
69670         </return-value>
69671         <parameters>
69672           <parameter name="text" transfer-ownership="none">
69673             <doc xml:whitespace="preserve">give your toolbar button a label.</doc>
69674             <type name="utf8" c:type="char*"/>
69675           </parameter>
69676           <parameter name="tooltip_text" transfer-ownership="none">
69677             <doc xml:whitespace="preserve">a string that appears when the user holds the mouse over this item.</doc>
69678             <type name="utf8" c:type="char*"/>
69679           </parameter>
69680           <parameter name="tooltip_private_text" transfer-ownership="none">
69681             <doc xml:whitespace="preserve">use with #GtkTipsQuery.</doc>
69682             <type name="utf8" c:type="char*"/>
69683           </parameter>
69684           <parameter name="icon" transfer-ownership="none">
69685             <doc xml:whitespace="preserve">a #GtkWidget that should be used as the button's icon.</doc>
69686             <type name="Widget" c:type="GtkWidget*"/>
69687           </parameter>
69688           <parameter name="callback"
69689                      transfer-ownership="none"
69690                      scope="call"
69691                      closure="6">
69692             <doc xml:whitespace="preserve">the function to be executed when the button is pressed.</doc>
69693             <type name="GObject.Callback" c:type="GCallback"/>
69694           </parameter>
69695           <parameter name="user_data" transfer-ownership="none">
69696             <doc xml:whitespace="preserve">a pointer to any data you wish to be passed to the callback.</doc>
69697             <type name="any" c:type="gpointer"/>
69698           </parameter>
69699           <parameter name="position" transfer-ownership="none">
69700             <doc xml:whitespace="preserve">the number of widgets to insert this item after.</doc>
69701             <type name="int" c:type="gint"/>
69702           </parameter>
69703         </parameters>
69704       </method>
69705       <method name="insert_stock"
69706               c:identifier="gtk_toolbar_insert_stock"
69707               deprecated="Use gtk_toolbar_insert() instead."
69708               deprecated-version="2.4">
69709         <doc xml:whitespace="preserve">Inserts a stock item at the specified position of the toolbar.  If
69710 except that underscores used to mark mnemonics are removed.
69711 arguments. Use G_CALLBACK() to cast the function to #GCallback.</doc>
69712         <return-value transfer-ownership="full">
69713           <doc xml:whitespace="preserve">the inserted widget</doc>
69714           <type name="Widget" c:type="GtkWidget*"/>
69715         </return-value>
69716         <parameters>
69717           <parameter name="stock_id" transfer-ownership="none">
69718             <doc xml:whitespace="preserve">The id of the stock item you want to insert</doc>
69719             <type name="utf8" c:type="gchar*"/>
69720           </parameter>
69721           <parameter name="tooltip_text" transfer-ownership="none">
69722             <doc xml:whitespace="preserve">The text in the tooltip of the toolbar button</doc>
69723             <type name="utf8" c:type="char*"/>
69724           </parameter>
69725           <parameter name="tooltip_private_text" transfer-ownership="none">
69726             <doc xml:whitespace="preserve">The private text of the tooltip</doc>
69727             <type name="utf8" c:type="char*"/>
69728           </parameter>
69729           <parameter name="callback"
69730                      transfer-ownership="none"
69731                      scope="call"
69732                      closure="5">
69733             <doc xml:whitespace="preserve">The callback called when the toolbar button is clicked.</doc>
69734             <type name="GObject.Callback" c:type="GCallback"/>
69735           </parameter>
69736           <parameter name="user_data" transfer-ownership="none">
69737             <doc xml:whitespace="preserve">user data passed to callback</doc>
69738             <type name="any" c:type="gpointer"/>
69739           </parameter>
69740           <parameter name="position" transfer-ownership="none">
69741             <doc xml:whitespace="preserve">The position the button shall be inserted at. -1 means at the end.</doc>
69742             <type name="int" c:type="gint"/>
69743           </parameter>
69744         </parameters>
69745       </method>
69746       <method name="append_space"
69747               c:identifier="gtk_toolbar_append_space"
69748               deprecated="Use gtk_toolbar_insert() instead."
69749               deprecated-version="2.4">
69750         <doc xml:whitespace="preserve">Adds a new space to the end of the toolbar.</doc>
69751         <return-value transfer-ownership="none">
69752           <type name="none" c:type="void"/>
69753         </return-value>
69754       </method>
69755       <method name="prepend_space"
69756               c:identifier="gtk_toolbar_prepend_space"
69757               deprecated="Use gtk_toolbar_insert() instead."
69758               deprecated-version="2.4">
69759         <doc xml:whitespace="preserve">Adds a new space to the beginning of the toolbar.</doc>
69760         <return-value transfer-ownership="none">
69761           <type name="none" c:type="void"/>
69762         </return-value>
69763       </method>
69764       <method name="insert_space"
69765               c:identifier="gtk_toolbar_insert_space"
69766               deprecated="Use gtk_toolbar_insert() instead."
69767               deprecated-version="2.4">
69768         <doc xml:whitespace="preserve">Inserts a new space in the toolbar at the specified position.</doc>
69769         <return-value transfer-ownership="none">
69770           <type name="none" c:type="void"/>
69771         </return-value>
69772         <parameters>
69773           <parameter name="position" transfer-ownership="none">
69774             <doc xml:whitespace="preserve">the number of widgets after which a space should be inserted.</doc>
69775             <type name="int" c:type="gint"/>
69776           </parameter>
69777         </parameters>
69778       </method>
69779       <method name="remove_space"
69780               c:identifier="gtk_toolbar_remove_space"
69781               deprecated="Use gtk_toolbar_insert() instead."
69782               deprecated-version="2.4">
69783         <doc xml:whitespace="preserve">Removes a space from the specified position.</doc>
69784         <return-value transfer-ownership="none">
69785           <type name="none" c:type="void"/>
69786         </return-value>
69787         <parameters>
69788           <parameter name="position" transfer-ownership="none">
69789             <doc xml:whitespace="preserve">the index of the space to remove.</doc>
69790             <type name="int" c:type="gint"/>
69791           </parameter>
69792         </parameters>
69793       </method>
69794       <method name="append_element"
69795               c:identifier="gtk_toolbar_append_element"
69796               deprecated="Use gtk_toolbar_insert() instead."
69797               deprecated-version="2.4">
69798         <doc xml:whitespace="preserve">Adds a new element to the end of a toolbar.
69799 If @type == %GTK_TOOLBAR_CHILD_WIDGET, @widget is used as the new element.
69800 If @type == %GTK_TOOLBAR_CHILD_RADIOBUTTON, @widget is used to determine
69801 the radio group for the new element. In all other cases, @widget must
69802 be %NULL.
69803 arguments. Use G_CALLBACK() to cast the function to #GCallback.</doc>
69804         <return-value transfer-ownership="full">
69805           <doc xml:whitespace="preserve">the new toolbar element as a #GtkWidget.</doc>
69806           <type name="Widget" c:type="GtkWidget*"/>
69807         </return-value>
69808         <parameters>
69809           <parameter name="type" transfer-ownership="none">
69810             <doc xml:whitespace="preserve">a value of type #GtkToolbarChildType that determines what @widget will be.</doc>
69811             <type name="ToolbarChildType" c:type="GtkToolbarChildType"/>
69812           </parameter>
69813           <parameter name="widget" transfer-ownership="none" allow-none="1">
69814             <doc xml:whitespace="preserve">a #GtkWidget, or %NULL.</doc>
69815             <type name="Widget" c:type="GtkWidget*"/>
69816           </parameter>
69817           <parameter name="text" transfer-ownership="none">
69818             <doc xml:whitespace="preserve">the element's label.</doc>
69819             <type name="utf8" c:type="char*"/>
69820           </parameter>
69821           <parameter name="tooltip_text" transfer-ownership="none">
69822             <doc xml:whitespace="preserve">the element's tooltip.</doc>
69823             <type name="utf8" c:type="char*"/>
69824           </parameter>
69825           <parameter name="tooltip_private_text" transfer-ownership="none">
69826             <doc xml:whitespace="preserve">used for context-sensitive help about this toolbar element.</doc>
69827             <type name="utf8" c:type="char*"/>
69828           </parameter>
69829           <parameter name="icon" transfer-ownership="none">
69830             <doc xml:whitespace="preserve">a #GtkWidget that provides pictorial representation of the element's function.</doc>
69831             <type name="Widget" c:type="GtkWidget*"/>
69832           </parameter>
69833           <parameter name="callback"
69834                      transfer-ownership="none"
69835                      scope="call"
69836                      closure="8">
69837             <doc xml:whitespace="preserve">the function to be executed when the button is pressed.</doc>
69838             <type name="GObject.Callback" c:type="GCallback"/>
69839           </parameter>
69840           <parameter name="user_data" transfer-ownership="none">
69841             <doc xml:whitespace="preserve">any data you wish to pass to the callback.</doc>
69842             <type name="any" c:type="gpointer"/>
69843           </parameter>
69844         </parameters>
69845       </method>
69846       <method name="prepend_element"
69847               c:identifier="gtk_toolbar_prepend_element"
69848               deprecated="Use gtk_toolbar_insert() instead."
69849               deprecated-version="2.4">
69850         <doc xml:whitespace="preserve">Adds a new element to the beginning of a toolbar.
69851 If @type == %GTK_TOOLBAR_CHILD_WIDGET, @widget is used as the new element.
69852 If @type == %GTK_TOOLBAR_CHILD_RADIOBUTTON, @widget is used to determine
69853 the radio group for the new element. In all other cases, @widget must
69854 be %NULL.
69855 arguments. Use G_CALLBACK() to cast the function to #GCallback.</doc>
69856         <return-value transfer-ownership="full">
69857           <doc xml:whitespace="preserve">the new toolbar element as a #GtkWidget.</doc>
69858           <type name="Widget" c:type="GtkWidget*"/>
69859         </return-value>
69860         <parameters>
69861           <parameter name="type" transfer-ownership="none">
69862             <doc xml:whitespace="preserve">a value of type #GtkToolbarChildType that determines what @widget will be.</doc>
69863             <type name="ToolbarChildType" c:type="GtkToolbarChildType"/>
69864           </parameter>
69865           <parameter name="widget" transfer-ownership="none" allow-none="1">
69866             <doc xml:whitespace="preserve">a #GtkWidget, or %NULL</doc>
69867             <type name="Widget" c:type="GtkWidget*"/>
69868           </parameter>
69869           <parameter name="text" transfer-ownership="none">
69870             <doc xml:whitespace="preserve">the element's label.</doc>
69871             <type name="utf8" c:type="char*"/>
69872           </parameter>
69873           <parameter name="tooltip_text" transfer-ownership="none">
69874             <doc xml:whitespace="preserve">the element's tooltip.</doc>
69875             <type name="utf8" c:type="char*"/>
69876           </parameter>
69877           <parameter name="tooltip_private_text" transfer-ownership="none">
69878             <doc xml:whitespace="preserve">used for context-sensitive help about this toolbar element.</doc>
69879             <type name="utf8" c:type="char*"/>
69880           </parameter>
69881           <parameter name="icon" transfer-ownership="none">
69882             <doc xml:whitespace="preserve">a #GtkWidget that provides pictorial representation of the element's function.</doc>
69883             <type name="Widget" c:type="GtkWidget*"/>
69884           </parameter>
69885           <parameter name="callback"
69886                      transfer-ownership="none"
69887                      scope="call"
69888                      closure="8">
69889             <doc xml:whitespace="preserve">the function to be executed when the button is pressed.</doc>
69890             <type name="GObject.Callback" c:type="GCallback"/>
69891           </parameter>
69892           <parameter name="user_data" transfer-ownership="none">
69893             <doc xml:whitespace="preserve">any data you wish to pass to the callback.</doc>
69894             <type name="any" c:type="gpointer"/>
69895           </parameter>
69896         </parameters>
69897       </method>
69898       <method name="insert_element"
69899               c:identifier="gtk_toolbar_insert_element"
69900               deprecated="Use gtk_toolbar_insert() instead."
69901               deprecated-version="2.4">
69902         <doc xml:whitespace="preserve">Inserts a new element in the toolbar at the given position. 
69903 If @type == %GTK_TOOLBAR_CHILD_WIDGET, @widget is used as the new element.
69904 If @type == %GTK_TOOLBAR_CHILD_RADIOBUTTON, @widget is used to determine
69905 the radio group for the new element. In all other cases, @widget must
69906 be %NULL.
69907 arguments. Use G_CALLBACK() to cast the function to #GCallback.</doc>
69908         <return-value transfer-ownership="full">
69909           <doc xml:whitespace="preserve">the new toolbar element as a #GtkWidget.</doc>
69910           <type name="Widget" c:type="GtkWidget*"/>
69911         </return-value>
69912         <parameters>
69913           <parameter name="type" transfer-ownership="none">
69914             <doc xml:whitespace="preserve">a value of type #GtkToolbarChildType that determines what @widget will be.</doc>
69915             <type name="ToolbarChildType" c:type="GtkToolbarChildType"/>
69916           </parameter>
69917           <parameter name="widget" transfer-ownership="none" allow-none="1">
69918             <doc xml:whitespace="preserve">a #GtkWidget, or %NULL.</doc>
69919             <type name="Widget" c:type="GtkWidget*"/>
69920           </parameter>
69921           <parameter name="text" transfer-ownership="none">
69922             <doc xml:whitespace="preserve">the element's label.</doc>
69923             <type name="utf8" c:type="char*"/>
69924           </parameter>
69925           <parameter name="tooltip_text" transfer-ownership="none">
69926             <doc xml:whitespace="preserve">the element's tooltip.</doc>
69927             <type name="utf8" c:type="char*"/>
69928           </parameter>
69929           <parameter name="tooltip_private_text" transfer-ownership="none">
69930             <doc xml:whitespace="preserve">used for context-sensitive help about this toolbar element.</doc>
69931             <type name="utf8" c:type="char*"/>
69932           </parameter>
69933           <parameter name="icon" transfer-ownership="none">
69934             <doc xml:whitespace="preserve">a #GtkWidget that provides pictorial representation of the element's function.</doc>
69935             <type name="Widget" c:type="GtkWidget*"/>
69936           </parameter>
69937           <parameter name="callback"
69938                      transfer-ownership="none"
69939                      scope="call"
69940                      closure="8">
69941             <doc xml:whitespace="preserve">the function to be executed when the button is pressed.</doc>
69942             <type name="GObject.Callback" c:type="GCallback"/>
69943           </parameter>
69944           <parameter name="user_data" transfer-ownership="none">
69945             <doc xml:whitespace="preserve">any data you wish to pass to the callback.</doc>
69946             <type name="any" c:type="gpointer"/>
69947           </parameter>
69948           <parameter name="position" transfer-ownership="none">
69949             <doc xml:whitespace="preserve">the number of widgets to insert this element after.</doc>
69950             <type name="int" c:type="gint"/>
69951           </parameter>
69952         </parameters>
69953       </method>
69954       <method name="append_widget"
69955               c:identifier="gtk_toolbar_append_widget"
69956               deprecated="Use gtk_toolbar_insert() instead."
69957               deprecated-version="2.4">
69958         <doc xml:whitespace="preserve">Adds a widget to the end of the given toolbar.</doc>
69959         <return-value transfer-ownership="none">
69960           <type name="none" c:type="void"/>
69961         </return-value>
69962         <parameters>
69963           <parameter name="widget" transfer-ownership="none">
69964             <doc xml:whitespace="preserve">a #GtkWidget to add to the toolbar.</doc>
69965             <type name="Widget" c:type="GtkWidget*"/>
69966           </parameter>
69967           <parameter name="tooltip_text"
69968                      transfer-ownership="none"
69969                      allow-none="1">
69970             <doc xml:whitespace="preserve">the element's tooltip.</doc>
69971             <type name="utf8" c:type="char*"/>
69972           </parameter>
69973           <parameter name="tooltip_private_text"
69974                      transfer-ownership="none"
69975                      allow-none="1">
69976             <doc xml:whitespace="preserve">used for context-sensitive help about this toolbar element.</doc>
69977             <type name="utf8" c:type="char*"/>
69978           </parameter>
69979         </parameters>
69980       </method>
69981       <method name="prepend_widget"
69982               c:identifier="gtk_toolbar_prepend_widget"
69983               deprecated="Use gtk_toolbar_insert() instead."
69984               deprecated-version="2.4">
69985         <doc xml:whitespace="preserve">Adds a widget to the beginning of the given toolbar.</doc>
69986         <return-value transfer-ownership="none">
69987           <type name="none" c:type="void"/>
69988         </return-value>
69989         <parameters>
69990           <parameter name="widget" transfer-ownership="none">
69991             <doc xml:whitespace="preserve">a #GtkWidget to add to the toolbar.</doc>
69992             <type name="Widget" c:type="GtkWidget*"/>
69993           </parameter>
69994           <parameter name="tooltip_text"
69995                      transfer-ownership="none"
69996                      allow-none="1">
69997             <doc xml:whitespace="preserve">the element's tooltip.</doc>
69998             <type name="utf8" c:type="char*"/>
69999           </parameter>
70000           <parameter name="tooltip_private_text"
70001                      transfer-ownership="none"
70002                      allow-none="1">
70003             <doc xml:whitespace="preserve">used for context-sensitive help about this toolbar element.</doc>
70004             <type name="utf8" c:type="char*"/>
70005           </parameter>
70006         </parameters>
70007       </method>
70008       <method name="insert_widget"
70009               c:identifier="gtk_toolbar_insert_widget"
70010               deprecated="Use gtk_toolbar_insert() instead."
70011               deprecated-version="2.4">
70012         <doc xml:whitespace="preserve">Inserts a widget in the toolbar at the given position.</doc>
70013         <return-value transfer-ownership="none">
70014           <type name="none" c:type="void"/>
70015         </return-value>
70016         <parameters>
70017           <parameter name="widget" transfer-ownership="none">
70018             <doc xml:whitespace="preserve">a #GtkWidget to add to the toolbar.</doc>
70019             <type name="Widget" c:type="GtkWidget*"/>
70020           </parameter>
70021           <parameter name="tooltip_text"
70022                      transfer-ownership="none"
70023                      allow-none="1">
70024             <doc xml:whitespace="preserve">the element's tooltip.</doc>
70025             <type name="utf8" c:type="char*"/>
70026           </parameter>
70027           <parameter name="tooltip_private_text"
70028                      transfer-ownership="none"
70029                      allow-none="1">
70030             <doc xml:whitespace="preserve">used for context-sensitive help about this toolbar element.</doc>
70031             <type name="utf8" c:type="char*"/>
70032           </parameter>
70033           <parameter name="position" transfer-ownership="none">
70034             <doc xml:whitespace="preserve">the number of widgets to insert this widget after.</doc>
70035             <type name="int" c:type="gint"/>
70036           </parameter>
70037         </parameters>
70038       </method>
70039       <property name="icon-size"
70040                 version="2.10"
70041                 writable="1"
70042                 transfer-ownership="none">
70043         <doc xml:whitespace="preserve">The size of the icons in a toolbar is normally determined by
70044 the toolbar-icon-size setting. When this property is set, it 
70045 overrides the setting. 
70046 This should only be used for special-purpose toolbars, normal
70047 application toolbars should respect the user preferences for the
70048 size of icons.</doc>
70049         <type name="int" c:type="gint"/>
70050       </property>
70051       <property name="icon-size-set"
70052                 version="2.10"
70053                 writable="1"
70054                 transfer-ownership="none">
70055         <doc xml:whitespace="preserve">Is %TRUE if the icon-size property has been set.</doc>
70056         <type name="boolean" c:type="gboolean"/>
70057       </property>
70058       <property name="show-arrow" writable="1" transfer-ownership="none">
70059         <type name="boolean" c:type="gboolean"/>
70060       </property>
70061       <property name="toolbar-style" writable="1" transfer-ownership="none">
70062         <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
70063       </property>
70064       <property name="tooltips"
70065                 version="2.8"
70066                 writable="1"
70067                 transfer-ownership="none">
70068         <doc xml:whitespace="preserve">If the tooltips of the toolbar should be active or not.</doc>
70069         <type name="boolean" c:type="gboolean"/>
70070       </property>
70071       <field name="container">
70072         <type name="Container" c:type="GtkContainer"/>
70073       </field>
70074       <field name="num_children">
70075         <type name="int" c:type="gint"/>
70076       </field>
70077       <field name="children">
70078         <type name="GLib.List" c:type="GList*">
70079           <type name="any" c:type="gpointer"/>
70080         </type>
70081       </field>
70082       <field name="orientation">
70083         <type name="Orientation" c:type="GtkOrientation"/>
70084       </field>
70085       <field name="style">
70086         <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
70087       </field>
70088       <field name="icon_size">
70089         <type name="IconSize" c:type="GtkIconSize"/>
70090       </field>
70091       <field name="tooltips">
70092         <type name="Tooltips" c:type="GtkTooltips*"/>
70093       </field>
70094       <field name="button_maxw">
70095         <type name="int" c:type="gint"/>
70096       </field>
70097       <field name="button_maxh">
70098         <type name="int" c:type="gint"/>
70099       </field>
70100       <field name="_gtk_reserved1">
70101         <type name="uint" c:type="guint"/>
70102       </field>
70103       <field name="_gtk_reserved2">
70104         <type name="uint" c:type="guint"/>
70105       </field>
70106       <field name="style_set" bits="1">
70107         <type name="uint" c:type="guint"/>
70108       </field>
70109       <field name="icon_size_set" bits="1">
70110         <type name="uint" c:type="guint"/>
70111       </field>
70112       <glib:signal name="focus-home-or-end">
70113         <doc xml:whitespace="preserve">A keybinding signal used internally by GTK+. This signal can't
70114 be used in application code</doc>
70115         <return-value transfer-ownership="full">
70116           <doc xml:whitespace="preserve">%TRUE if the signal was handled, %FALSE if not</doc>
70117           <type name="boolean" c:type="gboolean"/>
70118         </return-value>
70119         <parameters>
70120           <parameter name="focus_home" transfer-ownership="none">
70121             <doc xml:whitespace="preserve">%TRUE if the first item should be focused</doc>
70122             <type name="boolean" c:type="gboolean"/>
70123           </parameter>
70124         </parameters>
70125       </glib:signal>
70126       <glib:signal name="orientation-changed">
70127         <doc xml:whitespace="preserve">Emitted when the orientation of the toolbar changes.</doc>
70128         <return-value transfer-ownership="full">
70129           <type name="none" c:type="void"/>
70130         </return-value>
70131         <parameters>
70132           <parameter name="orientation" transfer-ownership="none">
70133             <doc xml:whitespace="preserve">the new #GtkOrientation of the toolbar</doc>
70134             <type name="Orientation" c:type="GtkOrientation"/>
70135           </parameter>
70136         </parameters>
70137       </glib:signal>
70138       <glib:signal name="popup-context-menu">
70139         <doc xml:whitespace="preserve">Emitted when the user right-clicks the toolbar or uses the
70140 keybinding to display a popup menu.
70141 Application developers should handle this signal if they want
70142 to display a context menu on the toolbar. The context-menu should
70143 appear at the coordinates given by @x and @y. The mouse button
70144 number is given by the @button parameter. If the menu was popped
70145 up using the keybaord, @button is -1.</doc>
70146         <return-value transfer-ownership="full">
70147           <doc xml:whitespace="preserve">return %TRUE if the signal was handled, %FALSE if not</doc>
70148           <type name="boolean" c:type="gboolean"/>
70149         </return-value>
70150         <parameters>
70151           <parameter name="x" transfer-ownership="none">
70152             <doc xml:whitespace="preserve">the x coordinate of the point where the menu should appear</doc>
70153             <type name="int" c:type="gint"/>
70154           </parameter>
70155           <parameter name="y" transfer-ownership="none">
70156             <doc xml:whitespace="preserve">the y coordinate of the point where the menu should appear</doc>
70157             <type name="int" c:type="gint"/>
70158           </parameter>
70159           <parameter name="button" transfer-ownership="none">
70160             <doc xml:whitespace="preserve">the mouse button the user pressed, or -1</doc>
70161             <type name="int" c:type="gint"/>
70162           </parameter>
70163         </parameters>
70164       </glib:signal>
70165       <glib:signal name="style-changed">
70166         <doc xml:whitespace="preserve">Emitted when the style of the toolbar changes.</doc>
70167         <return-value transfer-ownership="full">
70168           <type name="none" c:type="void"/>
70169         </return-value>
70170         <parameters>
70171           <parameter name="style" transfer-ownership="none">
70172             <doc xml:whitespace="preserve">the new #GtkToolbarStyle of the toolbar</doc>
70173             <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
70174           </parameter>
70175         </parameters>
70176       </glib:signal>
70177     </class>
70178     <record name="ToolbarChild" c:type="GtkToolbarChild">
70179       <field name="type" writable="1">
70180         <type name="ToolbarChildType" c:type="GtkToolbarChildType"/>
70181       </field>
70182       <field name="widget" writable="1">
70183         <type name="Widget" c:type="GtkWidget*"/>
70184       </field>
70185       <field name="icon" writable="1">
70186         <type name="Widget" c:type="GtkWidget*"/>
70187       </field>
70188       <field name="label" writable="1">
70189         <type name="Widget" c:type="GtkWidget*"/>
70190       </field>
70191     </record>
70192     <enumeration name="ToolbarChildType"
70193                  glib:type-name="GtkToolbarChildType"
70194                  glib:get-type="gtk_toolbar_child_type_get_type"
70195                  c:type="GtkToolbarChildType">
70196       <member name="space"
70197               value="0"
70198               c:identifier="GTK_TOOLBAR_CHILD_SPACE"
70199               glib:nick="space"/>
70200       <member name="button"
70201               value="1"
70202               c:identifier="GTK_TOOLBAR_CHILD_BUTTON"
70203               glib:nick="button"/>
70204       <member name="togglebutton"
70205               value="2"
70206               c:identifier="GTK_TOOLBAR_CHILD_TOGGLEBUTTON"
70207               glib:nick="togglebutton"/>
70208       <member name="radiobutton"
70209               value="3"
70210               c:identifier="GTK_TOOLBAR_CHILD_RADIOBUTTON"
70211               glib:nick="radiobutton"/>
70212       <member name="widget"
70213               value="4"
70214               c:identifier="GTK_TOOLBAR_CHILD_WIDGET"
70215               glib:nick="widget"/>
70216     </enumeration>
70217     <record name="ToolbarClass"
70218             c:type="GtkToolbarClass"
70219             glib:is-gtype-struct-for="Toolbar">
70220       <field name="parent_class">
70221         <type name="ContainerClass" c:type="GtkContainerClass"/>
70222       </field>
70223       <field name="orientation_changed">
70224         <callback name="orientation_changed" c:type="orientation_changed">
70225           <return-value transfer-ownership="none">
70226             <type name="none" c:type="void"/>
70227           </return-value>
70228           <parameters>
70229             <parameter name="toolbar" transfer-ownership="none">
70230               <type name="Toolbar" c:type="GtkToolbar*"/>
70231             </parameter>
70232             <parameter name="orientation" transfer-ownership="none">
70233               <type name="Orientation" c:type="GtkOrientation"/>
70234             </parameter>
70235           </parameters>
70236         </callback>
70237       </field>
70238       <field name="style_changed">
70239         <callback name="style_changed" c:type="style_changed">
70240           <return-value transfer-ownership="none">
70241             <type name="none" c:type="void"/>
70242           </return-value>
70243           <parameters>
70244             <parameter name="toolbar" transfer-ownership="none">
70245               <type name="Toolbar" c:type="GtkToolbar*"/>
70246             </parameter>
70247             <parameter name="style" transfer-ownership="none">
70248               <type name="ToolbarStyle" c:type="GtkToolbarStyle"/>
70249             </parameter>
70250           </parameters>
70251         </callback>
70252       </field>
70253       <field name="popup_context_menu">
70254         <callback name="popup_context_menu" c:type="popup_context_menu">
70255           <return-value transfer-ownership="none">
70256             <type name="boolean" c:type="gboolean"/>
70257           </return-value>
70258           <parameters>
70259             <parameter name="toolbar" transfer-ownership="none">
70260               <type name="Toolbar" c:type="GtkToolbar*"/>
70261             </parameter>
70262             <parameter name="x" transfer-ownership="none">
70263               <type name="int" c:type="gint"/>
70264             </parameter>
70265             <parameter name="y" transfer-ownership="none">
70266               <type name="int" c:type="gint"/>
70267             </parameter>
70268             <parameter name="button_number" transfer-ownership="none">
70269               <type name="int" c:type="gint"/>
70270             </parameter>
70271           </parameters>
70272         </callback>
70273       </field>
70274       <field name="gtk_reserved1">
70275         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
70276           <return-value transfer-ownership="none">
70277             <type name="none" c:type="void"/>
70278           </return-value>
70279         </callback>
70280       </field>
70281       <field name="gtk_reserved2">
70282         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
70283           <return-value transfer-ownership="none">
70284             <type name="none" c:type="void"/>
70285           </return-value>
70286         </callback>
70287       </field>
70288       <field name="gtk_reserved3">
70289         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
70290           <return-value transfer-ownership="none">
70291             <type name="none" c:type="void"/>
70292           </return-value>
70293         </callback>
70294       </field>
70295     </record>
70296     <record name="ToolbarPrivate" c:type="GtkToolbarPrivate">
70297     </record>
70298     <enumeration name="ToolbarSpaceStyle"
70299                  glib:type-name="GtkToolbarSpaceStyle"
70300                  glib:get-type="gtk_toolbar_space_style_get_type"
70301                  c:type="GtkToolbarSpaceStyle">
70302       <member name="empty"
70303               value="0"
70304               c:identifier="GTK_TOOLBAR_SPACE_EMPTY"
70305               glib:nick="empty"/>
70306       <member name="line"
70307               value="1"
70308               c:identifier="GTK_TOOLBAR_SPACE_LINE"
70309               glib:nick="line"/>
70310     </enumeration>
70311     <enumeration name="ToolbarStyle"
70312                  glib:type-name="GtkToolbarStyle"
70313                  glib:get-type="gtk_toolbar_style_get_type"
70314                  c:type="GtkToolbarStyle">
70315       <member name="icons"
70316               value="0"
70317               c:identifier="GTK_TOOLBAR_ICONS"
70318               glib:nick="icons"/>
70319       <member name="text"
70320               value="1"
70321               c:identifier="GTK_TOOLBAR_TEXT"
70322               glib:nick="text"/>
70323       <member name="both"
70324               value="2"
70325               c:identifier="GTK_TOOLBAR_BOTH"
70326               glib:nick="both"/>
70327       <member name="both_horiz"
70328               value="3"
70329               c:identifier="GTK_TOOLBAR_BOTH_HORIZ"
70330               glib:nick="both-horiz"/>
70331     </enumeration>
70332     <class name="Tooltip"
70333            c:type="GtkTooltip"
70334            parent="GObject.Object"
70335            glib:type-name="GtkTooltip"
70336            glib:get-type="gtk_tooltip_get_type">
70337       <function name="trigger_tooltip_query"
70338                 c:identifier="gtk_tooltip_trigger_tooltip_query"
70339                 version="2.12">
70340         <doc xml:whitespace="preserve">Triggers a new tooltip query on @display, in order to update the current
70341 visible tooltip, or to show/hide the current tooltip.  This function is
70342 useful to call when, for example, the state of the widget changed by a
70343 key press.</doc>
70344         <return-value transfer-ownership="none">
70345           <type name="none" c:type="void"/>
70346         </return-value>
70347         <parameters>
70348           <parameter name="display" transfer-ownership="none">
70349             <doc xml:whitespace="preserve">a #GdkDisplay</doc>
70350             <type name="Gdk.Display" c:type="GdkDisplay*"/>
70351           </parameter>
70352         </parameters>
70353       </function>
70354       <method name="set_markup"
70355               c:identifier="gtk_tooltip_set_markup"
70356               version="2.12">
70357         <doc xml:whitespace="preserve">Sets the text of the tooltip to be @markup, which is marked up
70358 with the &lt;link
70359 linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
70360 If @markup is %NULL, the label will be hidden.</doc>
70361         <return-value transfer-ownership="none">
70362           <type name="none" c:type="void"/>
70363         </return-value>
70364         <parameters>
70365           <parameter name="markup" transfer-ownership="none" allow-none="1">
70366             <doc xml:whitespace="preserve">a markup string (see &lt;link linkend="PangoMarkupFormat"&gt;Pango markup format&lt;/link&gt;) or %NULL</doc>
70367             <type name="utf8" c:type="gchar*"/>
70368           </parameter>
70369         </parameters>
70370       </method>
70371       <method name="set_text"
70372               c:identifier="gtk_tooltip_set_text"
70373               version="2.12">
70374         <doc xml:whitespace="preserve">Sets the text of the tooltip to be @text. If @text is %NULL, the label
70375 will be hidden. See also gtk_tooltip_set_markup().</doc>
70376         <return-value transfer-ownership="none">
70377           <type name="none" c:type="void"/>
70378         </return-value>
70379         <parameters>
70380           <parameter name="text" transfer-ownership="none" allow-none="1">
70381             <doc xml:whitespace="preserve">a text string or %NULL</doc>
70382             <type name="utf8" c:type="gchar*"/>
70383           </parameter>
70384         </parameters>
70385       </method>
70386       <method name="set_icon"
70387               c:identifier="gtk_tooltip_set_icon"
70388               version="2.12">
70389         <doc xml:whitespace="preserve">Sets the icon of the tooltip (which is in front of the text) to be</doc>
70390         <return-value transfer-ownership="none">
70391           <type name="none" c:type="void"/>
70392         </return-value>
70393         <parameters>
70394           <parameter name="pixbuf" transfer-ownership="none" allow-none="1">
70395             <doc xml:whitespace="preserve">a #GdkPixbuf, or %NULL</doc>
70396             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
70397           </parameter>
70398         </parameters>
70399       </method>
70400       <method name="set_icon_from_stock"
70401               c:identifier="gtk_tooltip_set_icon_from_stock"
70402               version="2.12">
70403         <doc xml:whitespace="preserve">Sets the icon of the tooltip (which is in front of the text) to be
70404 the stock item indicated by @stock_id with the size indicated
70405 by @size.  If @stock_id is %NULL, the image will be hidden.</doc>
70406         <return-value transfer-ownership="none">
70407           <type name="none" c:type="void"/>
70408         </return-value>
70409         <parameters>
70410           <parameter name="stock_id" transfer-ownership="none" allow-none="1">
70411             <doc xml:whitespace="preserve">a stock id, or %NULL</doc>
70412             <type name="utf8" c:type="gchar*"/>
70413           </parameter>
70414           <parameter name="size" transfer-ownership="none">
70415             <doc xml:whitespace="preserve">a stock icon size</doc>
70416             <type name="int" c:type="GtkIconSize"/>
70417           </parameter>
70418         </parameters>
70419       </method>
70420       <method name="set_icon_from_icon_name"
70421               c:identifier="gtk_tooltip_set_icon_from_icon_name"
70422               version="2.14">
70423         <doc xml:whitespace="preserve">Sets the icon of the tooltip (which is in front of the text) to be
70424 the icon indicated by @icon_name with the size indicated
70425 by @size.  If @icon_name is %NULL, the image will be hidden.</doc>
70426         <return-value transfer-ownership="none">
70427           <type name="none" c:type="void"/>
70428         </return-value>
70429         <parameters>
70430           <parameter name="icon_name" transfer-ownership="none" allow-none="1">
70431             <doc xml:whitespace="preserve">an icon name, or %NULL</doc>
70432             <type name="utf8" c:type="gchar*"/>
70433           </parameter>
70434           <parameter name="size" transfer-ownership="none">
70435             <doc xml:whitespace="preserve">a stock icon size</doc>
70436             <type name="int" c:type="GtkIconSize"/>
70437           </parameter>
70438         </parameters>
70439       </method>
70440       <method name="set_icon_from_gicon"
70441               c:identifier="gtk_tooltip_set_icon_from_gicon"
70442               version="2.20">
70443         <doc xml:whitespace="preserve">Sets the icon of the tooltip (which is in front of the text)
70444 to be the icon indicated by @gicon with the size indicated
70445 by @size. If @gicon is %NULL, the image will be hidden.</doc>
70446         <return-value transfer-ownership="none">
70447           <type name="none" c:type="void"/>
70448         </return-value>
70449         <parameters>
70450           <parameter name="gicon" transfer-ownership="none" allow-none="1">
70451             <doc xml:whitespace="preserve">a #GIcon representing the icon, or %NULL</doc>
70452             <type name="Gio.Icon" c:type="GIcon*"/>
70453           </parameter>
70454           <parameter name="size" transfer-ownership="none">
70455             <doc xml:whitespace="preserve">a stock icon size</doc>
70456             <type name="int" c:type="GtkIconSize"/>
70457           </parameter>
70458         </parameters>
70459       </method>
70460       <method name="set_custom"
70461               c:identifier="gtk_tooltip_set_custom"
70462               version="2.12">
70463         <doc xml:whitespace="preserve">Replaces the widget packed into the tooltip with
70464 away.
70465 By default a box with a #GtkImage and #GtkLabel is embedded in 
70466 the tooltip, which can be configured using gtk_tooltip_set_markup() 
70467 and gtk_tooltip_set_icon().</doc>
70468         <return-value transfer-ownership="none">
70469           <type name="none" c:type="void"/>
70470         </return-value>
70471         <parameters>
70472           <parameter name="custom_widget"
70473                      transfer-ownership="none"
70474                      allow-none="1">
70475             <doc xml:whitespace="preserve">a #GtkWidget, or %NULL to unset the old custom widget.</doc>
70476             <type name="Widget" c:type="GtkWidget*"/>
70477           </parameter>
70478         </parameters>
70479       </method>
70480       <method name="set_tip_area"
70481               c:identifier="gtk_tooltip_set_tip_area"
70482               version="2.12">
70483         <doc xml:whitespace="preserve">Sets the area of the widget, where the contents of this tooltip apply,
70484 to be @rect (in widget coordinates).  This is especially useful for
70485 properly setting tooltips on #GtkTreeView rows and cells, #GtkIconViews,
70486 etc.
70487 For setting tooltips on #GtkTreeView, please refer to the convenience
70488 gtk_tree_view_set_tooltip_cell().</doc>
70489         <return-value transfer-ownership="none">
70490           <type name="none" c:type="void"/>
70491         </return-value>
70492         <parameters>
70493           <parameter name="rect" transfer-ownership="none">
70494             <doc xml:whitespace="preserve">a #GdkRectangle</doc>
70495             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
70496           </parameter>
70497         </parameters>
70498       </method>
70499     </class>
70500     <class name="Tooltips"
70501            c:type="GtkTooltips"
70502            parent="Object"
70503            glib:type-name="GtkTooltips"
70504            glib:get-type="gtk_tooltips_get_type"
70505            glib:type-struct="TooltipsClass">
70506       <constructor name="new" c:identifier="gtk_tooltips_new">
70507         <return-value transfer-ownership="full">
70508           <type name="Tooltips" c:type="GtkTooltips*"/>
70509         </return-value>
70510       </constructor>
70511       <function name="data_get" c:identifier="gtk_tooltips_data_get">
70512         <return-value transfer-ownership="full">
70513           <type name="TooltipsData" c:type="GtkTooltipsData*"/>
70514         </return-value>
70515         <parameters>
70516           <parameter name="widget" transfer-ownership="none">
70517             <type name="Widget" c:type="GtkWidget*"/>
70518           </parameter>
70519         </parameters>
70520       </function>
70521       <function name="get_info_from_tip_window"
70522                 c:identifier="gtk_tooltips_get_info_from_tip_window"
70523                 version="2.4"
70524                 deprecated="2.12:">
70525         <doc xml:whitespace="preserve">Determines the tooltips and the widget they belong to from the window in 
70526 which they are displayed. 
70527 This function is mostly intended for use by accessibility technologies;
70528 applications should have little use for it.</doc>
70529         <return-value transfer-ownership="none">
70530           <doc xml:whitespace="preserve">%TRUE if @tip_window is displaying tooltips, otherwise %FALSE.</doc>
70531           <type name="boolean" c:type="gboolean"/>
70532         </return-value>
70533         <parameters>
70534           <parameter name="tip_window" transfer-ownership="none">
70535             <doc xml:whitespace="preserve">a #GtkWindow</doc>
70536             <type name="Window" c:type="GtkWindow*"/>
70537           </parameter>
70538           <parameter name="tooltips" transfer-ownership="none">
70539             <doc xml:whitespace="preserve">the return location for the tooltips which are displayed in @tip_window, or %NULL</doc>
70540             <type name="Tooltips" c:type="GtkTooltips**"/>
70541           </parameter>
70542           <parameter name="current_widget" transfer-ownership="none">
70543             <doc xml:whitespace="preserve">the return location for the widget whose tooltips are displayed, or %NULL</doc>
70544             <type name="Widget" c:type="GtkWidget**"/>
70545           </parameter>
70546         </parameters>
70547       </function>
70548       <method name="enable" c:identifier="gtk_tooltips_enable">
70549         <return-value transfer-ownership="none">
70550           <type name="none" c:type="void"/>
70551         </return-value>
70552       </method>
70553       <method name="disable" c:identifier="gtk_tooltips_disable">
70554         <return-value transfer-ownership="none">
70555           <type name="none" c:type="void"/>
70556         </return-value>
70557       </method>
70558       <method name="set_delay" c:identifier="gtk_tooltips_set_delay">
70559         <return-value transfer-ownership="none">
70560           <type name="none" c:type="void"/>
70561         </return-value>
70562         <parameters>
70563           <parameter name="delay" transfer-ownership="none">
70564             <type name="uint" c:type="guint"/>
70565           </parameter>
70566         </parameters>
70567       </method>
70568       <method name="set_tip"
70569               c:identifier="gtk_tooltips_set_tip"
70570               deprecated="2.12:">
70571         <doc xml:whitespace="preserve">Adds a tooltip containing the message @tip_text to the specified #GtkWidget.</doc>
70572         <return-value transfer-ownership="none">
70573           <type name="none" c:type="void"/>
70574         </return-value>
70575         <parameters>
70576           <parameter name="widget" transfer-ownership="none">
70577             <doc xml:whitespace="preserve">the #GtkWidget you wish to associate the tip with.</doc>
70578             <type name="Widget" c:type="GtkWidget*"/>
70579           </parameter>
70580           <parameter name="tip_text" transfer-ownership="none" allow-none="1">
70581             <doc xml:whitespace="preserve">a string containing the tip itself.</doc>
70582             <type name="utf8" c:type="gchar*"/>
70583           </parameter>
70584           <parameter name="tip_private"
70585                      transfer-ownership="none"
70586                      allow-none="1">
70587             <doc xml:whitespace="preserve">a string of any further information that may be useful if the user gets stuck.</doc>
70588             <type name="utf8" c:type="gchar*"/>
70589           </parameter>
70590         </parameters>
70591       </method>
70592       <method name="force_window" c:identifier="gtk_tooltips_force_window">
70593         <return-value transfer-ownership="none">
70594           <type name="none" c:type="void"/>
70595         </return-value>
70596       </method>
70597       <field name="parent_instance">
70598         <type name="Object" c:type="GtkObject"/>
70599       </field>
70600       <field name="tip_window">
70601         <type name="Widget" c:type="GtkWidget*"/>
70602       </field>
70603       <field name="tip_label">
70604         <type name="Widget" c:type="GtkWidget*"/>
70605       </field>
70606       <field name="active_tips_data">
70607         <type name="TooltipsData" c:type="GtkTooltipsData*"/>
70608       </field>
70609       <field name="tips_data_list">
70610         <type name="GLib.List" c:type="GList*">
70611           <type name="any" c:type="gpointer"/>
70612         </type>
70613       </field>
70614       <field name="delay" bits="30">
70615         <type name="uint" c:type="guint"/>
70616       </field>
70617       <field name="enabled" bits="1">
70618         <type name="uint" c:type="guint"/>
70619       </field>
70620       <field name="have_grab" bits="1">
70621         <type name="uint" c:type="guint"/>
70622       </field>
70623       <field name="use_sticky_delay" bits="1">
70624         <type name="uint" c:type="guint"/>
70625       </field>
70626       <field name="timer_tag">
70627         <type name="int" c:type="gint"/>
70628       </field>
70629       <field name="last_popdown">
70630         <type name="GLib.TimeVal" c:type="GTimeVal"/>
70631       </field>
70632     </class>
70633     <record name="TooltipsClass"
70634             c:type="GtkTooltipsClass"
70635             glib:is-gtype-struct-for="Tooltips">
70636       <field name="parent_class">
70637         <type name="ObjectClass" c:type="GtkObjectClass"/>
70638       </field>
70639       <field name="gtk_reserved1">
70640         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
70641           <return-value transfer-ownership="none">
70642             <type name="none" c:type="void"/>
70643           </return-value>
70644         </callback>
70645       </field>
70646       <field name="gtk_reserved2">
70647         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
70648           <return-value transfer-ownership="none">
70649             <type name="none" c:type="void"/>
70650           </return-value>
70651         </callback>
70652       </field>
70653       <field name="gtk_reserved3">
70654         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
70655           <return-value transfer-ownership="none">
70656             <type name="none" c:type="void"/>
70657           </return-value>
70658         </callback>
70659       </field>
70660       <field name="gtk_reserved4">
70661         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
70662           <return-value transfer-ownership="none">
70663             <type name="none" c:type="void"/>
70664           </return-value>
70665         </callback>
70666       </field>
70667     </record>
70668     <record name="TooltipsData" c:type="GtkTooltipsData">
70669       <field name="tooltips" writable="1">
70670         <type name="Tooltips" c:type="GtkTooltips*"/>
70671       </field>
70672       <field name="widget" writable="1">
70673         <type name="Widget" c:type="GtkWidget*"/>
70674       </field>
70675       <field name="tip_text" writable="1">
70676         <type name="utf8" c:type="gchar*"/>
70677       </field>
70678       <field name="tip_private" writable="1">
70679         <type name="utf8" c:type="gchar*"/>
70680       </field>
70681     </record>
70682     <callback name="TranslateFunc" c:type="GtkTranslateFunc">
70683       <return-value transfer-ownership="full">
70684         <type name="utf8" c:type="gchar*"/>
70685       </return-value>
70686       <parameters>
70687         <parameter name="path" transfer-ownership="none">
70688           <type name="utf8" c:type="gchar*"/>
70689         </parameter>
70690         <parameter name="func_data" transfer-ownership="none">
70691           <type name="any" c:type="gpointer"/>
70692         </parameter>
70693       </parameters>
70694     </callback>
70695     <callback name="TreeCellDataFunc" c:type="GtkTreeCellDataFunc">
70696       <return-value transfer-ownership="none">
70697         <type name="none" c:type="void"/>
70698       </return-value>
70699       <parameters>
70700         <parameter name="tree_column" transfer-ownership="none">
70701           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
70702         </parameter>
70703         <parameter name="cell" transfer-ownership="none">
70704           <type name="CellRenderer" c:type="GtkCellRenderer*"/>
70705         </parameter>
70706         <parameter name="tree_model" transfer-ownership="none">
70707           <type name="TreeModel" c:type="GtkTreeModel*"/>
70708         </parameter>
70709         <parameter name="iter" transfer-ownership="none">
70710           <type name="TreeIter" c:type="GtkTreeIter*"/>
70711         </parameter>
70712         <parameter name="data" transfer-ownership="none">
70713           <type name="any" c:type="gpointer"/>
70714         </parameter>
70715       </parameters>
70716     </callback>
70717     <callback name="TreeDestroyCountFunc" c:type="GtkTreeDestroyCountFunc">
70718       <return-value transfer-ownership="none">
70719         <type name="none" c:type="void"/>
70720       </return-value>
70721       <parameters>
70722         <parameter name="tree_view" transfer-ownership="none">
70723           <type name="TreeView" c:type="GtkTreeView*"/>
70724         </parameter>
70725         <parameter name="path" transfer-ownership="none">
70726           <type name="TreePath" c:type="GtkTreePath*"/>
70727         </parameter>
70728         <parameter name="children" transfer-ownership="none">
70729           <type name="int" c:type="gint"/>
70730         </parameter>
70731         <parameter name="user_data" transfer-ownership="none" closure="3">
70732           <type name="any" c:type="gpointer"/>
70733         </parameter>
70734       </parameters>
70735     </callback>
70736     <interface name="TreeDragDest"
70737                c:type="GtkTreeDragDest"
70738                glib:type-name="GtkTreeDragDest"
70739                glib:get-type="gtk_tree_drag_dest_get_type"
70740                glib:type-struct="TreeDragDestIface">
70741       <virtual-method name="drag_data_received" invoker="drag_data_received">
70742         <doc xml:whitespace="preserve">Asks the #GtkTreeDragDest to insert a row before the path @dest,
70743 deriving the contents of the row from @selection_data. If @dest is
70744 outside the tree so that inserting before it is impossible, %FALSE
70745 will be returned. Also, %FALSE may be returned if the new row is
70746 not created for some model-specific reason.  Should robustly handle
70747 a @dest no longer found in the model!</doc>
70748         <return-value transfer-ownership="none">
70749           <doc xml:whitespace="preserve">whether a new row was created before position @dest</doc>
70750           <type name="boolean" c:type="gboolean"/>
70751         </return-value>
70752         <parameters>
70753           <parameter name="dest" transfer-ownership="none">
70754             <doc xml:whitespace="preserve">row to drop in front of</doc>
70755             <type name="TreePath" c:type="GtkTreePath*"/>
70756           </parameter>
70757           <parameter name="selection_data" transfer-ownership="none">
70758             <doc xml:whitespace="preserve">data to drop</doc>
70759             <type name="SelectionData" c:type="GtkSelectionData*"/>
70760           </parameter>
70761         </parameters>
70762       </virtual-method>
70763       <virtual-method name="row_drop_possible" invoker="row_drop_possible">
70764         <doc xml:whitespace="preserve">Determines whether a drop is possible before the given @dest_path,
70765 at the same depth as @dest_path. i.e., can we drop the data in
70766 exist; the return value will almost certainly be %FALSE if the
70767 parent of @dest_path doesn't exist, though.</doc>
70768         <return-value transfer-ownership="none">
70769           <doc xml:whitespace="preserve">%TRUE if a drop is possible before @dest_path</doc>
70770           <type name="boolean" c:type="gboolean"/>
70771         </return-value>
70772         <parameters>
70773           <parameter name="dest_path" transfer-ownership="none">
70774             <doc xml:whitespace="preserve">destination row</doc>
70775             <type name="TreePath" c:type="GtkTreePath*"/>
70776           </parameter>
70777           <parameter name="selection_data" transfer-ownership="none">
70778             <doc xml:whitespace="preserve">the data being dragged</doc>
70779             <type name="SelectionData" c:type="GtkSelectionData*"/>
70780           </parameter>
70781         </parameters>
70782       </virtual-method>
70783       <method name="drag_data_received"
70784               c:identifier="gtk_tree_drag_dest_drag_data_received">
70785         <doc xml:whitespace="preserve">Asks the #GtkTreeDragDest to insert a row before the path @dest,
70786 deriving the contents of the row from @selection_data. If @dest is
70787 outside the tree so that inserting before it is impossible, %FALSE
70788 will be returned. Also, %FALSE may be returned if the new row is
70789 not created for some model-specific reason.  Should robustly handle
70790 a @dest no longer found in the model!</doc>
70791         <return-value transfer-ownership="none">
70792           <doc xml:whitespace="preserve">whether a new row was created before position @dest</doc>
70793           <type name="boolean" c:type="gboolean"/>
70794         </return-value>
70795         <parameters>
70796           <parameter name="dest" transfer-ownership="none">
70797             <doc xml:whitespace="preserve">row to drop in front of</doc>
70798             <type name="TreePath" c:type="GtkTreePath*"/>
70799           </parameter>
70800           <parameter name="selection_data" transfer-ownership="none">
70801             <doc xml:whitespace="preserve">data to drop</doc>
70802             <type name="SelectionData" c:type="GtkSelectionData*"/>
70803           </parameter>
70804         </parameters>
70805       </method>
70806       <method name="row_drop_possible"
70807               c:identifier="gtk_tree_drag_dest_row_drop_possible">
70808         <doc xml:whitespace="preserve">Determines whether a drop is possible before the given @dest_path,
70809 at the same depth as @dest_path. i.e., can we drop the data in
70810 exist; the return value will almost certainly be %FALSE if the
70811 parent of @dest_path doesn't exist, though.</doc>
70812         <return-value transfer-ownership="none">
70813           <doc xml:whitespace="preserve">%TRUE if a drop is possible before @dest_path</doc>
70814           <type name="boolean" c:type="gboolean"/>
70815         </return-value>
70816         <parameters>
70817           <parameter name="dest_path" transfer-ownership="none">
70818             <doc xml:whitespace="preserve">destination row</doc>
70819             <type name="TreePath" c:type="GtkTreePath*"/>
70820           </parameter>
70821           <parameter name="selection_data" transfer-ownership="none">
70822             <doc xml:whitespace="preserve">the data being dragged</doc>
70823             <type name="SelectionData" c:type="GtkSelectionData*"/>
70824           </parameter>
70825         </parameters>
70826       </method>
70827     </interface>
70828     <record name="TreeDragDestIface"
70829             c:type="GtkTreeDragDestIface"
70830             glib:is-gtype-struct-for="TreeDragDest">
70831       <field name="g_iface">
70832         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
70833       </field>
70834       <field name="drag_data_received">
70835         <callback name="drag_data_received" c:type="drag_data_received">
70836           <return-value transfer-ownership="none">
70837             <doc xml:whitespace="preserve">whether a new row was created before position @dest</doc>
70838             <type name="boolean" c:type="gboolean"/>
70839           </return-value>
70840           <parameters>
70841             <parameter name="drag_dest" transfer-ownership="none">
70842               <type name="TreeDragDest" c:type="GtkTreeDragDest*"/>
70843             </parameter>
70844             <parameter name="dest" transfer-ownership="none">
70845               <doc xml:whitespace="preserve">row to drop in front of</doc>
70846               <type name="TreePath" c:type="GtkTreePath*"/>
70847             </parameter>
70848             <parameter name="selection_data" transfer-ownership="none">
70849               <doc xml:whitespace="preserve">data to drop</doc>
70850               <type name="SelectionData" c:type="GtkSelectionData*"/>
70851             </parameter>
70852           </parameters>
70853         </callback>
70854       </field>
70855       <field name="row_drop_possible">
70856         <callback name="row_drop_possible" c:type="row_drop_possible">
70857           <return-value transfer-ownership="none">
70858             <doc xml:whitespace="preserve">%TRUE if a drop is possible before @dest_path</doc>
70859             <type name="boolean" c:type="gboolean"/>
70860           </return-value>
70861           <parameters>
70862             <parameter name="drag_dest" transfer-ownership="none">
70863               <type name="TreeDragDest" c:type="GtkTreeDragDest*"/>
70864             </parameter>
70865             <parameter name="dest_path" transfer-ownership="none">
70866               <doc xml:whitespace="preserve">destination row</doc>
70867               <type name="TreePath" c:type="GtkTreePath*"/>
70868             </parameter>
70869             <parameter name="selection_data" transfer-ownership="none">
70870               <doc xml:whitespace="preserve">the data being dragged</doc>
70871               <type name="SelectionData" c:type="GtkSelectionData*"/>
70872             </parameter>
70873           </parameters>
70874         </callback>
70875       </field>
70876     </record>
70877     <interface name="TreeDragSource"
70878                c:type="GtkTreeDragSource"
70879                glib:type-name="GtkTreeDragSource"
70880                glib:get-type="gtk_tree_drag_source_get_type"
70881                glib:type-struct="TreeDragSourceIface">
70882       <virtual-method name="row_draggable" invoker="row_draggable">
70883         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource whether a particular row can be used as
70884 the source of a DND operation. If the source doesn't implement
70885 this interface, the row is assumed draggable.</doc>
70886         <return-value transfer-ownership="none">
70887           <doc xml:whitespace="preserve">%TRUE if the row can be dragged</doc>
70888           <type name="boolean" c:type="gboolean"/>
70889         </return-value>
70890         <parameters>
70891           <parameter name="path" transfer-ownership="none">
70892             <doc xml:whitespace="preserve">row on which user is initiating a drag</doc>
70893             <type name="TreePath" c:type="GtkTreePath*"/>
70894           </parameter>
70895         </parameters>
70896       </virtual-method>
70897       <virtual-method name="drag_data_get" invoker="drag_data_get">
70898         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource to fill in @selection_data with a
70899 representation of the row at @path. @selection_data-&gt;target gives
70900 the required type of the data.  Should robustly handle a @path no
70901 longer found in the model!</doc>
70902         <return-value transfer-ownership="none">
70903           <doc xml:whitespace="preserve">%TRUE if data of the required type was provided</doc>
70904           <type name="boolean" c:type="gboolean"/>
70905         </return-value>
70906         <parameters>
70907           <parameter name="path" transfer-ownership="none">
70908             <doc xml:whitespace="preserve">row that was dragged</doc>
70909             <type name="TreePath" c:type="GtkTreePath*"/>
70910           </parameter>
70911           <parameter name="selection_data" transfer-ownership="none">
70912             <doc xml:whitespace="preserve">a #GtkSelectionData to fill with data from the dragged row</doc>
70913             <type name="SelectionData" c:type="GtkSelectionData*"/>
70914           </parameter>
70915         </parameters>
70916       </virtual-method>
70917       <virtual-method name="drag_data_delete" invoker="drag_data_delete">
70918         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource to delete the row at @path, because
70919 it was moved somewhere else via drag-and-drop. Returns %FALSE
70920 if the deletion fails because @path no longer exists, or for
70921 some model-specific reason. Should robustly handle a @path no
70922 longer found in the model!</doc>
70923         <return-value transfer-ownership="none">
70924           <doc xml:whitespace="preserve">%TRUE if the row was successfully deleted</doc>
70925           <type name="boolean" c:type="gboolean"/>
70926         </return-value>
70927         <parameters>
70928           <parameter name="path" transfer-ownership="none">
70929             <doc xml:whitespace="preserve">row that was being dragged</doc>
70930             <type name="TreePath" c:type="GtkTreePath*"/>
70931           </parameter>
70932         </parameters>
70933       </virtual-method>
70934       <method name="row_draggable"
70935               c:identifier="gtk_tree_drag_source_row_draggable">
70936         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource whether a particular row can be used as
70937 the source of a DND operation. If the source doesn't implement
70938 this interface, the row is assumed draggable.</doc>
70939         <return-value transfer-ownership="none">
70940           <doc xml:whitespace="preserve">%TRUE if the row can be dragged</doc>
70941           <type name="boolean" c:type="gboolean"/>
70942         </return-value>
70943         <parameters>
70944           <parameter name="path" transfer-ownership="none">
70945             <doc xml:whitespace="preserve">row on which user is initiating a drag</doc>
70946             <type name="TreePath" c:type="GtkTreePath*"/>
70947           </parameter>
70948         </parameters>
70949       </method>
70950       <method name="drag_data_delete"
70951               c:identifier="gtk_tree_drag_source_drag_data_delete">
70952         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource to delete the row at @path, because
70953 it was moved somewhere else via drag-and-drop. Returns %FALSE
70954 if the deletion fails because @path no longer exists, or for
70955 some model-specific reason. Should robustly handle a @path no
70956 longer found in the model!</doc>
70957         <return-value transfer-ownership="none">
70958           <doc xml:whitespace="preserve">%TRUE if the row was successfully deleted</doc>
70959           <type name="boolean" c:type="gboolean"/>
70960         </return-value>
70961         <parameters>
70962           <parameter name="path" transfer-ownership="none">
70963             <doc xml:whitespace="preserve">row that was being dragged</doc>
70964             <type name="TreePath" c:type="GtkTreePath*"/>
70965           </parameter>
70966         </parameters>
70967       </method>
70968       <method name="drag_data_get"
70969               c:identifier="gtk_tree_drag_source_drag_data_get">
70970         <doc xml:whitespace="preserve">Asks the #GtkTreeDragSource to fill in @selection_data with a
70971 representation of the row at @path. @selection_data-&gt;target gives
70972 the required type of the data.  Should robustly handle a @path no
70973 longer found in the model!</doc>
70974         <return-value transfer-ownership="none">
70975           <doc xml:whitespace="preserve">%TRUE if data of the required type was provided</doc>
70976           <type name="boolean" c:type="gboolean"/>
70977         </return-value>
70978         <parameters>
70979           <parameter name="path" transfer-ownership="none">
70980             <doc xml:whitespace="preserve">row that was dragged</doc>
70981             <type name="TreePath" c:type="GtkTreePath*"/>
70982           </parameter>
70983           <parameter name="selection_data" transfer-ownership="none">
70984             <doc xml:whitespace="preserve">a #GtkSelectionData to fill with data from the dragged row</doc>
70985             <type name="SelectionData" c:type="GtkSelectionData*"/>
70986           </parameter>
70987         </parameters>
70988       </method>
70989     </interface>
70990     <record name="TreeDragSourceIface"
70991             c:type="GtkTreeDragSourceIface"
70992             glib:is-gtype-struct-for="TreeDragSource">
70993       <field name="g_iface">
70994         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
70995       </field>
70996       <field name="row_draggable">
70997         <callback name="row_draggable" c:type="row_draggable">
70998           <return-value transfer-ownership="none">
70999             <doc xml:whitespace="preserve">%TRUE if the row can be dragged</doc>
71000             <type name="boolean" c:type="gboolean"/>
71001           </return-value>
71002           <parameters>
71003             <parameter name="drag_source" transfer-ownership="none">
71004               <type name="TreeDragSource" c:type="GtkTreeDragSource*"/>
71005             </parameter>
71006             <parameter name="path" transfer-ownership="none">
71007               <doc xml:whitespace="preserve">row on which user is initiating a drag</doc>
71008               <type name="TreePath" c:type="GtkTreePath*"/>
71009             </parameter>
71010           </parameters>
71011         </callback>
71012       </field>
71013       <field name="drag_data_get">
71014         <callback name="drag_data_get" c:type="drag_data_get">
71015           <return-value transfer-ownership="none">
71016             <doc xml:whitespace="preserve">%TRUE if data of the required type was provided</doc>
71017             <type name="boolean" c:type="gboolean"/>
71018           </return-value>
71019           <parameters>
71020             <parameter name="drag_source" transfer-ownership="none">
71021               <type name="TreeDragSource" c:type="GtkTreeDragSource*"/>
71022             </parameter>
71023             <parameter name="path" transfer-ownership="none">
71024               <doc xml:whitespace="preserve">row that was dragged</doc>
71025               <type name="TreePath" c:type="GtkTreePath*"/>
71026             </parameter>
71027             <parameter name="selection_data" transfer-ownership="none">
71028               <doc xml:whitespace="preserve">a #GtkSelectionData to fill with data from the dragged row</doc>
71029               <type name="SelectionData" c:type="GtkSelectionData*"/>
71030             </parameter>
71031           </parameters>
71032         </callback>
71033       </field>
71034       <field name="drag_data_delete">
71035         <callback name="drag_data_delete" c:type="drag_data_delete">
71036           <return-value transfer-ownership="none">
71037             <doc xml:whitespace="preserve">%TRUE if the row was successfully deleted</doc>
71038             <type name="boolean" c:type="gboolean"/>
71039           </return-value>
71040           <parameters>
71041             <parameter name="drag_source" transfer-ownership="none">
71042               <type name="TreeDragSource" c:type="GtkTreeDragSource*"/>
71043             </parameter>
71044             <parameter name="path" transfer-ownership="none">
71045               <doc xml:whitespace="preserve">row that was being dragged</doc>
71046               <type name="TreePath" c:type="GtkTreePath*"/>
71047             </parameter>
71048           </parameters>
71049         </callback>
71050       </field>
71051     </record>
71052     <record name="TreeIter"
71053             c:type="GtkTreeIter"
71054             glib:type-name="GtkTreeIter"
71055             glib:get-type="gtk_tree_iter_get_type">
71056       <field name="stamp" writable="1">
71057         <type name="int" c:type="gint"/>
71058       </field>
71059       <field name="user_data" writable="1">
71060         <type name="any" c:type="gpointer"/>
71061       </field>
71062       <field name="user_data2" writable="1">
71063         <type name="any" c:type="gpointer"/>
71064       </field>
71065       <field name="user_data3" writable="1">
71066         <type name="any" c:type="gpointer"/>
71067       </field>
71068       <method name="copy" c:identifier="gtk_tree_iter_copy">
71069         <doc xml:whitespace="preserve">Creates a dynamically allocated tree iterator as a copy of @iter.  
71070 This function is not intended for use in applications, because you 
71071 can just copy the structs by value 
71072 (&lt;literal&gt;GtkTreeIter new_iter = iter;&lt;/literal&gt;).
71073 You must free this iter with gtk_tree_iter_free().</doc>
71074         <return-value transfer-ownership="full">
71075           <doc xml:whitespace="preserve">a newly-allocated copy of @iter.</doc>
71076           <type name="TreeIter" c:type="GtkTreeIter*"/>
71077         </return-value>
71078       </method>
71079       <method name="free" c:identifier="gtk_tree_iter_free">
71080         <doc xml:whitespace="preserve">Frees an iterator that has been allocated by gtk_tree_iter_copy().
71081 This function is mainly used for language bindings.</doc>
71082         <return-value transfer-ownership="none">
71083           <type name="none" c:type="void"/>
71084         </return-value>
71085       </method>
71086     </record>
71087     <callback name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc">
71088       <return-value transfer-ownership="none">
71089         <type name="int" c:type="gint"/>
71090       </return-value>
71091       <parameters>
71092         <parameter name="model" transfer-ownership="none">
71093           <type name="TreeModel" c:type="GtkTreeModel*"/>
71094         </parameter>
71095         <parameter name="a" transfer-ownership="none">
71096           <type name="TreeIter" c:type="GtkTreeIter*"/>
71097         </parameter>
71098         <parameter name="b" transfer-ownership="none">
71099           <type name="TreeIter" c:type="GtkTreeIter*"/>
71100         </parameter>
71101         <parameter name="user_data" transfer-ownership="none" closure="3">
71102           <type name="any" c:type="gpointer"/>
71103         </parameter>
71104       </parameters>
71105     </callback>
71106     <interface name="TreeModel"
71107                c:type="GtkTreeModel"
71108                glib:type-name="GtkTreeModel"
71109                glib:get-type="gtk_tree_model_get_type"
71110                glib:type-struct="TreeModelIface">
71111       <virtual-method name="get_flags" invoker="get_flags">
71112         <doc xml:whitespace="preserve">Returns a set of flags supported by this interface.  The flags are a bitwise
71113 combination of #GtkTreeModelFlags.  The flags supported should not change
71114 during the lifecycle of the @tree_model.</doc>
71115         <return-value transfer-ownership="full">
71116           <doc xml:whitespace="preserve">The flags supported by this interface.</doc>
71117           <type name="TreeModelFlags" c:type="GtkTreeModelFlags"/>
71118         </return-value>
71119       </virtual-method>
71120       <virtual-method name="get_n_columns" invoker="get_n_columns">
71121         <doc xml:whitespace="preserve">Returns the number of columns supported by @tree_model.</doc>
71122         <return-value transfer-ownership="none">
71123           <doc xml:whitespace="preserve">The number of columns.</doc>
71124           <type name="int" c:type="gint"/>
71125         </return-value>
71126       </virtual-method>
71127       <virtual-method name="get_column_type" invoker="get_column_type">
71128         <doc xml:whitespace="preserve">Returns the type of the column.</doc>
71129         <return-value transfer-ownership="none">
71130           <doc xml:whitespace="preserve">The type of the column.</doc>
71131           <type name="GType" c:type="GType"/>
71132         </return-value>
71133         <parameters>
71134           <parameter name="index_" transfer-ownership="none">
71135             <doc xml:whitespace="preserve">The column index.</doc>
71136             <type name="int" c:type="gint"/>
71137           </parameter>
71138         </parameters>
71139       </virtual-method>
71140       <virtual-method name="get_iter" invoker="get_iter">
71141         <doc xml:whitespace="preserve">Sets @iter to a valid iterator pointing to @path.</doc>
71142         <return-value transfer-ownership="none">
71143           <doc xml:whitespace="preserve">%TRUE, if @iter was set.</doc>
71144           <type name="boolean" c:type="gboolean"/>
71145         </return-value>
71146         <parameters>
71147           <parameter name="iter" transfer-ownership="none">
71148             <doc xml:whitespace="preserve">The uninitialized #GtkTreeIter.</doc>
71149             <type name="TreeIter" c:type="GtkTreeIter*"/>
71150           </parameter>
71151           <parameter name="path" transfer-ownership="none">
71152             <doc xml:whitespace="preserve">The #GtkTreePath.</doc>
71153             <type name="TreePath" c:type="GtkTreePath*"/>
71154           </parameter>
71155         </parameters>
71156       </virtual-method>
71157       <virtual-method name="get_path" invoker="get_path">
71158         <doc xml:whitespace="preserve">Returns a newly-created #GtkTreePath referenced by @iter.  This path should
71159 be freed with gtk_tree_path_free().</doc>
71160         <return-value transfer-ownership="full">
71161           <doc xml:whitespace="preserve">a newly-created #GtkTreePath.</doc>
71162           <type name="TreePath" c:type="GtkTreePath*"/>
71163         </return-value>
71164         <parameters>
71165           <parameter name="iter" transfer-ownership="none">
71166             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71167             <type name="TreeIter" c:type="GtkTreeIter*"/>
71168           </parameter>
71169         </parameters>
71170       </virtual-method>
71171       <virtual-method name="get_value" invoker="get_value">
71172         <doc xml:whitespace="preserve">Initializes and sets @value to that at @column.
71173 When done with @value, g_value_unset() needs to be called 
71174 to free any allocated memory.</doc>
71175         <return-value transfer-ownership="none">
71176           <type name="none" c:type="void"/>
71177         </return-value>
71178         <parameters>
71179           <parameter name="iter" transfer-ownership="none">
71180             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71181             <type name="TreeIter" c:type="GtkTreeIter*"/>
71182           </parameter>
71183           <parameter name="column" transfer-ownership="none">
71184             <doc xml:whitespace="preserve">The column to lookup the value at.</doc>
71185             <type name="int" c:type="gint"/>
71186           </parameter>
71187           <parameter name="value" transfer-ownership="none">
71188             <doc xml:whitespace="preserve">(inout) (transfer none) An empty #GValue to set.</doc>
71189             <type name="GObject.Value" c:type="GValue*"/>
71190           </parameter>
71191         </parameters>
71192       </virtual-method>
71193       <virtual-method name="iter_next" invoker="iter_next">
71194         <doc xml:whitespace="preserve">Sets @iter to point to the node following it at the current level.  If there
71195 is no next @iter, %FALSE is returned and @iter is set to be invalid.</doc>
71196         <return-value transfer-ownership="none">
71197           <doc xml:whitespace="preserve">%TRUE if @iter has been changed to the next node.</doc>
71198           <type name="boolean" c:type="gboolean"/>
71199         </return-value>
71200         <parameters>
71201           <parameter name="iter" transfer-ownership="none">
71202             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71203             <type name="TreeIter" c:type="GtkTreeIter*"/>
71204           </parameter>
71205         </parameters>
71206       </virtual-method>
71207       <virtual-method name="iter_children" invoker="iter_children">
71208         <doc xml:whitespace="preserve">Sets @iter to point to the first child of @parent.  If @parent has no
71209 children, %FALSE is returned and @iter is set to be invalid.  @parent
71210 will remain a valid node after this function has been called.
71211 If @parent is %NULL returns the first node, equivalent to
71212 &lt;literal&gt;gtk_tree_model_get_iter_first (tree_model, iter);&lt;/literal&gt;</doc>
71213         <return-value transfer-ownership="none">
71214           <doc xml:whitespace="preserve">%TRUE, if @child has been set to the first child.</doc>
71215           <type name="boolean" c:type="gboolean"/>
71216         </return-value>
71217         <parameters>
71218           <parameter name="iter" transfer-ownership="none">
71219             <doc xml:whitespace="preserve">The new #GtkTreeIter to be set to the child.</doc>
71220             <type name="TreeIter" c:type="GtkTreeIter*"/>
71221           </parameter>
71222           <parameter name="parent" transfer-ownership="none" allow-none="1">
71223             <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL</doc>
71224             <type name="TreeIter" c:type="GtkTreeIter*"/>
71225           </parameter>
71226         </parameters>
71227       </virtual-method>
71228       <virtual-method name="iter_has_child" invoker="iter_has_child">
71229         <doc xml:whitespace="preserve">Returns %TRUE if @iter has children, %FALSE otherwise.</doc>
71230         <return-value transfer-ownership="none">
71231           <doc xml:whitespace="preserve">%TRUE if @iter has children.</doc>
71232           <type name="boolean" c:type="gboolean"/>
71233         </return-value>
71234         <parameters>
71235           <parameter name="iter" transfer-ownership="none">
71236             <doc xml:whitespace="preserve">The #GtkTreeIter to test for children.</doc>
71237             <type name="TreeIter" c:type="GtkTreeIter*"/>
71238           </parameter>
71239         </parameters>
71240       </virtual-method>
71241       <virtual-method name="iter_n_children" invoker="iter_n_children">
71242         <doc xml:whitespace="preserve">Returns the number of children that @iter has.  As a special case, if @iter
71243 is %NULL, then the number of toplevel nodes is returned.</doc>
71244         <return-value transfer-ownership="none">
71245           <doc xml:whitespace="preserve">The number of children of @iter.</doc>
71246           <type name="int" c:type="gint"/>
71247         </return-value>
71248         <parameters>
71249           <parameter name="iter" transfer-ownership="none" allow-none="1">
71250             <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL.</doc>
71251             <type name="TreeIter" c:type="GtkTreeIter*"/>
71252           </parameter>
71253         </parameters>
71254       </virtual-method>
71255       <virtual-method name="iter_nth_child" invoker="iter_nth_child">
71256         <doc xml:whitespace="preserve">Sets @iter to be the child of @parent, using the given index.  The first
71257 index is 0.  If @n is too big, or @parent has no children, @iter is set
71258 to an invalid iterator and %FALSE is returned.  @parent will remain a valid
71259 node after this function has been called.  As a special case, if @parent is
71260 %NULL, then the @n&lt;!-- --&gt;th root node is set.</doc>
71261         <return-value transfer-ownership="none">
71262           <doc xml:whitespace="preserve">%TRUE, if @parent has an @n&lt;!-- --&gt;th child.</doc>
71263           <type name="boolean" c:type="gboolean"/>
71264         </return-value>
71265         <parameters>
71266           <parameter name="iter" transfer-ownership="none">
71267             <doc xml:whitespace="preserve">The #GtkTreeIter to set to the nth child.</doc>
71268             <type name="TreeIter" c:type="GtkTreeIter*"/>
71269           </parameter>
71270           <parameter name="parent" transfer-ownership="none" allow-none="1">
71271             <doc xml:whitespace="preserve">The #GtkTreeIter to get the child from, or %NULL.</doc>
71272             <type name="TreeIter" c:type="GtkTreeIter*"/>
71273           </parameter>
71274           <parameter name="n" transfer-ownership="none">
71275             <doc xml:whitespace="preserve">Then index of the desired child.</doc>
71276             <type name="int" c:type="gint"/>
71277           </parameter>
71278         </parameters>
71279       </virtual-method>
71280       <virtual-method name="iter_parent" invoker="iter_parent">
71281         <doc xml:whitespace="preserve">Sets @iter to be the parent of @child.  If @child is at the toplevel, and
71282 doesn't have a parent, then @iter is set to an invalid iterator and %FALSE
71283 is returned.  @child will remain a valid node after this function has been
71284 called.</doc>
71285         <return-value transfer-ownership="none">
71286           <doc xml:whitespace="preserve">%TRUE, if @iter is set to the parent of @child.</doc>
71287           <type name="boolean" c:type="gboolean"/>
71288         </return-value>
71289         <parameters>
71290           <parameter name="iter" transfer-ownership="none">
71291             <doc xml:whitespace="preserve">The new #GtkTreeIter to set to the parent.</doc>
71292             <type name="TreeIter" c:type="GtkTreeIter*"/>
71293           </parameter>
71294           <parameter name="child" transfer-ownership="none">
71295             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71296             <type name="TreeIter" c:type="GtkTreeIter*"/>
71297           </parameter>
71298         </parameters>
71299       </virtual-method>
71300       <virtual-method name="ref_node" invoker="ref_node">
71301         <doc xml:whitespace="preserve">Lets the tree ref the node.  This is an optional method for models to
71302 implement.  To be more specific, models may ignore this call as it exists
71303 primarily for performance reasons.
71304 This function is primarily meant as a way for views to let caching model 
71305 know when nodes are being displayed (and hence, whether or not to cache that
71306 node.)  For example, a file-system based model would not want to keep the
71307 entire file-hierarchy in memory, just the sections that are currently being
71308 displayed by every current view.
71309 A model should be expected to be able to get an iter independent of its
71310 reffed state.</doc>
71311         <return-value transfer-ownership="none">
71312           <type name="none" c:type="void"/>
71313         </return-value>
71314         <parameters>
71315           <parameter name="iter" transfer-ownership="none">
71316             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71317             <type name="TreeIter" c:type="GtkTreeIter*"/>
71318           </parameter>
71319         </parameters>
71320       </virtual-method>
71321       <virtual-method name="unref_node" invoker="unref_node">
71322         <doc xml:whitespace="preserve">Lets the tree unref the node.  This is an optional method for models to
71323 implement.  To be more specific, models may ignore this call as it exists
71324 primarily for performance reasons.
71325 For more information on what this means, see gtk_tree_model_ref_node().
71326 Please note that nodes that are deleted are not unreffed.</doc>
71327         <return-value transfer-ownership="none">
71328           <type name="none" c:type="void"/>
71329         </return-value>
71330         <parameters>
71331           <parameter name="iter" transfer-ownership="none">
71332             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71333             <type name="TreeIter" c:type="GtkTreeIter*"/>
71334           </parameter>
71335         </parameters>
71336       </virtual-method>
71337       <method name="get_flags" c:identifier="gtk_tree_model_get_flags">
71338         <doc xml:whitespace="preserve">Returns a set of flags supported by this interface.  The flags are a bitwise
71339 combination of #GtkTreeModelFlags.  The flags supported should not change
71340 during the lifecycle of the @tree_model.</doc>
71341         <return-value transfer-ownership="full">
71342           <doc xml:whitespace="preserve">The flags supported by this interface.</doc>
71343           <type name="TreeModelFlags" c:type="GtkTreeModelFlags"/>
71344         </return-value>
71345       </method>
71346       <method name="get_n_columns" c:identifier="gtk_tree_model_get_n_columns">
71347         <doc xml:whitespace="preserve">Returns the number of columns supported by @tree_model.</doc>
71348         <return-value transfer-ownership="none">
71349           <doc xml:whitespace="preserve">The number of columns.</doc>
71350           <type name="int" c:type="gint"/>
71351         </return-value>
71352       </method>
71353       <method name="get_column_type"
71354               c:identifier="gtk_tree_model_get_column_type">
71355         <doc xml:whitespace="preserve">Returns the type of the column.</doc>
71356         <return-value transfer-ownership="none">
71357           <doc xml:whitespace="preserve">The type of the column.</doc>
71358           <type name="GType" c:type="GType"/>
71359         </return-value>
71360         <parameters>
71361           <parameter name="index_" transfer-ownership="none">
71362             <doc xml:whitespace="preserve">The column index.</doc>
71363             <type name="int" c:type="gint"/>
71364           </parameter>
71365         </parameters>
71366       </method>
71367       <method name="get_iter" c:identifier="gtk_tree_model_get_iter">
71368         <doc xml:whitespace="preserve">Sets @iter to a valid iterator pointing to @path.</doc>
71369         <return-value transfer-ownership="none">
71370           <doc xml:whitespace="preserve">%TRUE, if @iter was set.</doc>
71371           <type name="boolean" c:type="gboolean"/>
71372         </return-value>
71373         <parameters>
71374           <parameter name="iter" transfer-ownership="none">
71375             <doc xml:whitespace="preserve">The uninitialized #GtkTreeIter.</doc>
71376             <type name="TreeIter" c:type="GtkTreeIter*"/>
71377           </parameter>
71378           <parameter name="path" transfer-ownership="none">
71379             <doc xml:whitespace="preserve">The #GtkTreePath.</doc>
71380             <type name="TreePath" c:type="GtkTreePath*"/>
71381           </parameter>
71382         </parameters>
71383       </method>
71384       <method name="get_iter_from_string"
71385               c:identifier="gtk_tree_model_get_iter_from_string">
71386         <doc xml:whitespace="preserve">Sets @iter to a valid iterator pointing to @path_string, if it
71387 exists. Otherwise, @iter is left invalid and %FALSE is returned.</doc>
71388         <return-value transfer-ownership="none">
71389           <doc xml:whitespace="preserve">%TRUE, if @iter was set.</doc>
71390           <type name="boolean" c:type="gboolean"/>
71391         </return-value>
71392         <parameters>
71393           <parameter name="iter" transfer-ownership="none">
71394             <doc xml:whitespace="preserve">An uninitialized #GtkTreeIter.</doc>
71395             <type name="TreeIter" c:type="GtkTreeIter*"/>
71396           </parameter>
71397           <parameter name="path_string" transfer-ownership="none">
71398             <doc xml:whitespace="preserve">A string representation of a #GtkTreePath.</doc>
71399             <type name="utf8" c:type="gchar*"/>
71400           </parameter>
71401         </parameters>
71402       </method>
71403       <method name="get_string_from_iter"
71404               c:identifier="gtk_tree_model_get_string_from_iter"
71405               version="2.2">
71406         <doc xml:whitespace="preserve">Generates a string representation of the iter. This string is a ':'
71407 separated list of numbers. For example, "4:10:0:3" would be an
71408 acceptable return value for this string.</doc>
71409         <return-value transfer-ownership="full">
71410           <doc xml:whitespace="preserve">A newly-allocated string. Must be freed with g_free().</doc>
71411           <type name="utf8" c:type="gchar*"/>
71412         </return-value>
71413         <parameters>
71414           <parameter name="iter" transfer-ownership="none">
71415             <doc xml:whitespace="preserve">An #GtkTreeIter.</doc>
71416             <type name="TreeIter" c:type="GtkTreeIter*"/>
71417           </parameter>
71418         </parameters>
71419       </method>
71420       <method name="get_iter_first"
71421               c:identifier="gtk_tree_model_get_iter_first">
71422         <doc xml:whitespace="preserve">Initializes @iter with the first iterator in the tree (the one at the path
71423 "0") and returns %TRUE.  Returns %FALSE if the tree is empty.</doc>
71424         <return-value transfer-ownership="none">
71425           <doc xml:whitespace="preserve">%TRUE, if @iter was set.</doc>
71426           <type name="boolean" c:type="gboolean"/>
71427         </return-value>
71428         <parameters>
71429           <parameter name="iter" transfer-ownership="none">
71430             <doc xml:whitespace="preserve">The uninitialized #GtkTreeIter.</doc>
71431             <type name="TreeIter" c:type="GtkTreeIter*"/>
71432           </parameter>
71433         </parameters>
71434       </method>
71435       <method name="get_path" c:identifier="gtk_tree_model_get_path">
71436         <doc xml:whitespace="preserve">Returns a newly-created #GtkTreePath referenced by @iter.  This path should
71437 be freed with gtk_tree_path_free().</doc>
71438         <return-value transfer-ownership="full">
71439           <doc xml:whitespace="preserve">a newly-created #GtkTreePath.</doc>
71440           <type name="TreePath" c:type="GtkTreePath*"/>
71441         </return-value>
71442         <parameters>
71443           <parameter name="iter" transfer-ownership="none">
71444             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71445             <type name="TreeIter" c:type="GtkTreeIter*"/>
71446           </parameter>
71447         </parameters>
71448       </method>
71449       <method name="get_value" c:identifier="gtk_tree_model_get_value">
71450         <doc xml:whitespace="preserve">Initializes and sets @value to that at @column.
71451 When done with @value, g_value_unset() needs to be called 
71452 to free any allocated memory.</doc>
71453         <return-value transfer-ownership="none">
71454           <type name="none" c:type="void"/>
71455         </return-value>
71456         <parameters>
71457           <parameter name="iter" transfer-ownership="none">
71458             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71459             <type name="TreeIter" c:type="GtkTreeIter*"/>
71460           </parameter>
71461           <parameter name="column" transfer-ownership="none">
71462             <doc xml:whitespace="preserve">The column to lookup the value at.</doc>
71463             <type name="int" c:type="gint"/>
71464           </parameter>
71465           <parameter name="value" transfer-ownership="none">
71466             <doc xml:whitespace="preserve">(inout) (transfer none) An empty #GValue to set.</doc>
71467             <type name="GObject.Value" c:type="GValue*"/>
71468           </parameter>
71469         </parameters>
71470       </method>
71471       <method name="iter_next" c:identifier="gtk_tree_model_iter_next">
71472         <doc xml:whitespace="preserve">Sets @iter to point to the node following it at the current level.  If there
71473 is no next @iter, %FALSE is returned and @iter is set to be invalid.</doc>
71474         <return-value transfer-ownership="none">
71475           <doc xml:whitespace="preserve">%TRUE if @iter has been changed to the next node.</doc>
71476           <type name="boolean" c:type="gboolean"/>
71477         </return-value>
71478         <parameters>
71479           <parameter name="iter" transfer-ownership="none">
71480             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71481             <type name="TreeIter" c:type="GtkTreeIter*"/>
71482           </parameter>
71483         </parameters>
71484       </method>
71485       <method name="iter_children" c:identifier="gtk_tree_model_iter_children">
71486         <doc xml:whitespace="preserve">Sets @iter to point to the first child of @parent.  If @parent has no
71487 children, %FALSE is returned and @iter is set to be invalid.  @parent
71488 will remain a valid node after this function has been called.
71489 If @parent is %NULL returns the first node, equivalent to
71490 &lt;literal&gt;gtk_tree_model_get_iter_first (tree_model, iter);&lt;/literal&gt;</doc>
71491         <return-value transfer-ownership="none">
71492           <doc xml:whitespace="preserve">%TRUE, if @child has been set to the first child.</doc>
71493           <type name="boolean" c:type="gboolean"/>
71494         </return-value>
71495         <parameters>
71496           <parameter name="iter" transfer-ownership="none">
71497             <doc xml:whitespace="preserve">The new #GtkTreeIter to be set to the child.</doc>
71498             <type name="TreeIter" c:type="GtkTreeIter*"/>
71499           </parameter>
71500           <parameter name="parent" transfer-ownership="none" allow-none="1">
71501             <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL</doc>
71502             <type name="TreeIter" c:type="GtkTreeIter*"/>
71503           </parameter>
71504         </parameters>
71505       </method>
71506       <method name="iter_has_child"
71507               c:identifier="gtk_tree_model_iter_has_child">
71508         <doc xml:whitespace="preserve">Returns %TRUE if @iter has children, %FALSE otherwise.</doc>
71509         <return-value transfer-ownership="none">
71510           <doc xml:whitespace="preserve">%TRUE if @iter has children.</doc>
71511           <type name="boolean" c:type="gboolean"/>
71512         </return-value>
71513         <parameters>
71514           <parameter name="iter" transfer-ownership="none">
71515             <doc xml:whitespace="preserve">The #GtkTreeIter to test for children.</doc>
71516             <type name="TreeIter" c:type="GtkTreeIter*"/>
71517           </parameter>
71518         </parameters>
71519       </method>
71520       <method name="iter_n_children"
71521               c:identifier="gtk_tree_model_iter_n_children">
71522         <doc xml:whitespace="preserve">Returns the number of children that @iter has.  As a special case, if @iter
71523 is %NULL, then the number of toplevel nodes is returned.</doc>
71524         <return-value transfer-ownership="none">
71525           <doc xml:whitespace="preserve">The number of children of @iter.</doc>
71526           <type name="int" c:type="gint"/>
71527         </return-value>
71528         <parameters>
71529           <parameter name="iter" transfer-ownership="none" allow-none="1">
71530             <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL.</doc>
71531             <type name="TreeIter" c:type="GtkTreeIter*"/>
71532           </parameter>
71533         </parameters>
71534       </method>
71535       <method name="iter_nth_child"
71536               c:identifier="gtk_tree_model_iter_nth_child">
71537         <doc xml:whitespace="preserve">Sets @iter to be the child of @parent, using the given index.  The first
71538 index is 0.  If @n is too big, or @parent has no children, @iter is set
71539 to an invalid iterator and %FALSE is returned.  @parent will remain a valid
71540 node after this function has been called.  As a special case, if @parent is
71541 %NULL, then the @n&lt;!-- --&gt;th root node is set.</doc>
71542         <return-value transfer-ownership="none">
71543           <doc xml:whitespace="preserve">%TRUE, if @parent has an @n&lt;!-- --&gt;th child.</doc>
71544           <type name="boolean" c:type="gboolean"/>
71545         </return-value>
71546         <parameters>
71547           <parameter name="iter" transfer-ownership="none">
71548             <doc xml:whitespace="preserve">The #GtkTreeIter to set to the nth child.</doc>
71549             <type name="TreeIter" c:type="GtkTreeIter*"/>
71550           </parameter>
71551           <parameter name="parent" transfer-ownership="none" allow-none="1">
71552             <doc xml:whitespace="preserve">The #GtkTreeIter to get the child from, or %NULL.</doc>
71553             <type name="TreeIter" c:type="GtkTreeIter*"/>
71554           </parameter>
71555           <parameter name="n" transfer-ownership="none">
71556             <doc xml:whitespace="preserve">Then index of the desired child.</doc>
71557             <type name="int" c:type="gint"/>
71558           </parameter>
71559         </parameters>
71560       </method>
71561       <method name="iter_parent" c:identifier="gtk_tree_model_iter_parent">
71562         <doc xml:whitespace="preserve">Sets @iter to be the parent of @child.  If @child is at the toplevel, and
71563 doesn't have a parent, then @iter is set to an invalid iterator and %FALSE
71564 is returned.  @child will remain a valid node after this function has been
71565 called.</doc>
71566         <return-value transfer-ownership="none">
71567           <doc xml:whitespace="preserve">%TRUE, if @iter is set to the parent of @child.</doc>
71568           <type name="boolean" c:type="gboolean"/>
71569         </return-value>
71570         <parameters>
71571           <parameter name="iter" transfer-ownership="none">
71572             <doc xml:whitespace="preserve">The new #GtkTreeIter to set to the parent.</doc>
71573             <type name="TreeIter" c:type="GtkTreeIter*"/>
71574           </parameter>
71575           <parameter name="child" transfer-ownership="none">
71576             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71577             <type name="TreeIter" c:type="GtkTreeIter*"/>
71578           </parameter>
71579         </parameters>
71580       </method>
71581       <method name="ref_node" c:identifier="gtk_tree_model_ref_node">
71582         <doc xml:whitespace="preserve">Lets the tree ref the node.  This is an optional method for models to
71583 implement.  To be more specific, models may ignore this call as it exists
71584 primarily for performance reasons.
71585 This function is primarily meant as a way for views to let caching model 
71586 know when nodes are being displayed (and hence, whether or not to cache that
71587 node.)  For example, a file-system based model would not want to keep the
71588 entire file-hierarchy in memory, just the sections that are currently being
71589 displayed by every current view.
71590 A model should be expected to be able to get an iter independent of its
71591 reffed state.</doc>
71592         <return-value transfer-ownership="none">
71593           <type name="none" c:type="void"/>
71594         </return-value>
71595         <parameters>
71596           <parameter name="iter" transfer-ownership="none">
71597             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71598             <type name="TreeIter" c:type="GtkTreeIter*"/>
71599           </parameter>
71600         </parameters>
71601       </method>
71602       <method name="unref_node" c:identifier="gtk_tree_model_unref_node">
71603         <doc xml:whitespace="preserve">Lets the tree unref the node.  This is an optional method for models to
71604 implement.  To be more specific, models may ignore this call as it exists
71605 primarily for performance reasons.
71606 For more information on what this means, see gtk_tree_model_ref_node().
71607 Please note that nodes that are deleted are not unreffed.</doc>
71608         <return-value transfer-ownership="none">
71609           <type name="none" c:type="void"/>
71610         </return-value>
71611         <parameters>
71612           <parameter name="iter" transfer-ownership="none">
71613             <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
71614             <type name="TreeIter" c:type="GtkTreeIter*"/>
71615           </parameter>
71616         </parameters>
71617       </method>
71618       <method name="get" c:identifier="gtk_tree_model_get" introspectable="0">
71619         <doc xml:whitespace="preserve">Gets the value of one or more cells in the row referenced by @iter.
71620 The variable argument list should contain integer column numbers,
71621 each column number followed by a place to store the value being
71622 retrieved.  The list is terminated by a -1. For example, to get a
71623 value from column 0 with type %G_TYPE_STRING, you would
71624 where &lt;literal&gt;place_string_here&lt;/literal&gt; is a &lt;type&gt;gchar*&lt;/type&gt; to be 
71625 filled with the string.
71626 If appropriate, the returned values have to be freed or unreferenced.</doc>
71627         <return-value transfer-ownership="none">
71628           <type name="none" c:type="void"/>
71629         </return-value>
71630         <parameters>
71631           <parameter name="iter" transfer-ownership="none">
71632             <doc xml:whitespace="preserve">a row in @tree_model</doc>
71633             <type name="TreeIter" c:type="GtkTreeIter*"/>
71634           </parameter>
71635           <parameter transfer-ownership="none">
71636             <varargs>
71637             </varargs>
71638           </parameter>
71639         </parameters>
71640       </method>
71641       <method name="foreach" c:identifier="gtk_tree_model_foreach">
71642         <doc xml:whitespace="preserve">Calls func on each node in model in a depth-first fashion.  
71643 If @func returns %TRUE, then the tree ceases to be walked, and 
71644 gtk_tree_model_foreach() returns.</doc>
71645         <return-value transfer-ownership="none">
71646           <type name="none" c:type="void"/>
71647         </return-value>
71648         <parameters>
71649           <parameter name="func"
71650                      transfer-ownership="none"
71651                      scope="call"
71652                      closure="2">
71653             <doc xml:whitespace="preserve">A function to be called on each row</doc>
71654             <type name="TreeModelForeachFunc"
71655                   c:type="GtkTreeModelForeachFunc"/>
71656           </parameter>
71657           <parameter name="user_data" transfer-ownership="none">
71658             <doc xml:whitespace="preserve">User data to passed to func.</doc>
71659             <type name="any" c:type="gpointer"/>
71660           </parameter>
71661         </parameters>
71662       </method>
71663       <method name="row_changed" c:identifier="gtk_tree_model_row_changed">
71664         <doc xml:whitespace="preserve">Emits the "row-changed" signal on @tree_model.</doc>
71665         <return-value transfer-ownership="none">
71666           <type name="none" c:type="void"/>
71667         </return-value>
71668         <parameters>
71669           <parameter name="path" transfer-ownership="none">
71670             <doc xml:whitespace="preserve">A #GtkTreePath pointing to the changed row</doc>
71671             <type name="TreePath" c:type="GtkTreePath*"/>
71672           </parameter>
71673           <parameter name="iter" transfer-ownership="none">
71674             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to the changed row</doc>
71675             <type name="TreeIter" c:type="GtkTreeIter*"/>
71676           </parameter>
71677         </parameters>
71678       </method>
71679       <method name="row_inserted" c:identifier="gtk_tree_model_row_inserted">
71680         <doc xml:whitespace="preserve">Emits the "row-inserted" signal on @tree_model</doc>
71681         <return-value transfer-ownership="none">
71682           <type name="none" c:type="void"/>
71683         </return-value>
71684         <parameters>
71685           <parameter name="path" transfer-ownership="none">
71686             <doc xml:whitespace="preserve">A #GtkTreePath pointing to the inserted row</doc>
71687             <type name="TreePath" c:type="GtkTreePath*"/>
71688           </parameter>
71689           <parameter name="iter" transfer-ownership="none">
71690             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to the inserted row</doc>
71691             <type name="TreeIter" c:type="GtkTreeIter*"/>
71692           </parameter>
71693         </parameters>
71694       </method>
71695       <method name="row_has_child_toggled"
71696               c:identifier="gtk_tree_model_row_has_child_toggled">
71697         <doc xml:whitespace="preserve">Emits the "row-has-child-toggled" signal on @tree_model.  This should be
71698 called by models after the child state of a node changes.</doc>
71699         <return-value transfer-ownership="none">
71700           <type name="none" c:type="void"/>
71701         </return-value>
71702         <parameters>
71703           <parameter name="path" transfer-ownership="none">
71704             <doc xml:whitespace="preserve">A #GtkTreePath pointing to the changed row</doc>
71705             <type name="TreePath" c:type="GtkTreePath*"/>
71706           </parameter>
71707           <parameter name="iter" transfer-ownership="none">
71708             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to the changed row</doc>
71709             <type name="TreeIter" c:type="GtkTreeIter*"/>
71710           </parameter>
71711         </parameters>
71712       </method>
71713       <method name="row_deleted" c:identifier="gtk_tree_model_row_deleted">
71714         <doc xml:whitespace="preserve">Emits the "row-deleted" signal on @tree_model.  This should be called by
71715 models after a row has been removed.  The location pointed to by @path 
71716 should be the location that the row previously was at.  It may not be a 
71717 valid location anymore.</doc>
71718         <return-value transfer-ownership="none">
71719           <type name="none" c:type="void"/>
71720         </return-value>
71721         <parameters>
71722           <parameter name="path" transfer-ownership="none">
71723             <doc xml:whitespace="preserve">A #GtkTreePath pointing to the previous location of the deleted row.</doc>
71724             <type name="TreePath" c:type="GtkTreePath*"/>
71725           </parameter>
71726         </parameters>
71727       </method>
71728       <method name="rows_reordered"
71729               c:identifier="gtk_tree_model_rows_reordered">
71730         <doc xml:whitespace="preserve">Emits the "rows-reordered" signal on @tree_model.  This should be called by
71731 models when their rows have been reordered.</doc>
71732         <return-value transfer-ownership="none">
71733           <type name="none" c:type="void"/>
71734         </return-value>
71735         <parameters>
71736           <parameter name="path" transfer-ownership="none">
71737             <doc xml:whitespace="preserve">A #GtkTreePath pointing to the tree node whose children have been reordered</doc>
71738             <type name="TreePath" c:type="GtkTreePath*"/>
71739           </parameter>
71740           <parameter name="iter" transfer-ownership="none">
71741             <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>
71742             <type name="TreeIter" c:type="GtkTreeIter*"/>
71743           </parameter>
71744           <parameter name="new_order"
71745                      direction="out"
71746                      caller-allocates="0"
71747                      transfer-ownership="full">
71748             <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>
71749             <type name="int" c:type="gint*"/>
71750           </parameter>
71751         </parameters>
71752       </method>
71753       <glib:signal name="row-changed">
71754         <doc xml:whitespace="preserve">This signal is emitted when a row in the model has changed.</doc>
71755         <return-value transfer-ownership="full">
71756           <type name="none" c:type="void"/>
71757         </return-value>
71758         <parameters>
71759           <parameter name="path" transfer-ownership="none">
71760             <doc xml:whitespace="preserve">a #GtkTreePath identifying the changed row</doc>
71761             <type name="TreePath" c:type="GtkTreePath"/>
71762           </parameter>
71763           <parameter name="iter" transfer-ownership="none">
71764             <doc xml:whitespace="preserve">a valid #GtkTreeIter pointing to the changed row</doc>
71765             <type name="TreeIter" c:type="GtkTreeIter"/>
71766           </parameter>
71767         </parameters>
71768       </glib:signal>
71769       <glib:signal name="row-deleted">
71770         <doc xml:whitespace="preserve">This signal is emitted when a row has been deleted.
71771 Note that no iterator is passed to the signal handler,
71772 since the row is already deleted.
71773 Implementations of GtkTreeModel must emit row-deleted 
71774 &lt;emphasis&gt;before&lt;/emphasis&gt; removing the node from its
71775 internal data structures.  This is because models and 
71776 views which access and monitor this model might have
71777 references on the node which need to be released in the
71778 row-deleted handler.</doc>
71779         <return-value transfer-ownership="full">
71780           <type name="none" c:type="void"/>
71781         </return-value>
71782         <parameters>
71783           <parameter name="path" transfer-ownership="none">
71784             <doc xml:whitespace="preserve">a #GtkTreePath identifying the row</doc>
71785             <type name="TreePath" c:type="GtkTreePath"/>
71786           </parameter>
71787         </parameters>
71788       </glib:signal>
71789       <glib:signal name="row-has-child-toggled">
71790         <doc xml:whitespace="preserve">This signal is emitted when a row has gotten the first child row or lost
71791 its last child row.</doc>
71792         <return-value transfer-ownership="full">
71793           <type name="none" c:type="void"/>
71794         </return-value>
71795         <parameters>
71796           <parameter name="path" transfer-ownership="none">
71797             <doc xml:whitespace="preserve">a #GtkTreePath identifying the row</doc>
71798             <type name="TreePath" c:type="GtkTreePath"/>
71799           </parameter>
71800           <parameter name="iter" transfer-ownership="none">
71801             <doc xml:whitespace="preserve">a valid #GtkTreeIter pointing to the row</doc>
71802             <type name="TreeIter" c:type="GtkTreeIter"/>
71803           </parameter>
71804         </parameters>
71805       </glib:signal>
71806       <glib:signal name="row-inserted">
71807         <doc xml:whitespace="preserve">This signal is emitted when a new row has been inserted in the model.
71808 Note that the row may still be empty at this point, since
71809 it is a common pattern to first insert an empty row, and 
71810 then fill it with the desired values.</doc>
71811         <return-value transfer-ownership="full">
71812           <type name="none" c:type="void"/>
71813         </return-value>
71814         <parameters>
71815           <parameter name="path" transfer-ownership="none">
71816             <doc xml:whitespace="preserve">a #GtkTreePath identifying the new row</doc>
71817             <type name="TreePath" c:type="GtkTreePath"/>
71818           </parameter>
71819           <parameter name="iter" transfer-ownership="none">
71820             <doc xml:whitespace="preserve">a valid #GtkTreeIter pointing to the new row</doc>
71821             <type name="TreeIter" c:type="GtkTreeIter"/>
71822           </parameter>
71823         </parameters>
71824       </glib:signal>
71825       <glib:signal name="rows-reordered">
71826         <doc xml:whitespace="preserve">This signal is emitted when the children of a node in the #GtkTreeModel
71827 have been reordered. 
71828 Note that this signal is &lt;emphasis&gt;not&lt;/emphasis&gt; emitted
71829 when rows are reordered by DND, since this is implemented
71830 by removing and then reinserting the row.</doc>
71831         <return-value transfer-ownership="full">
71832           <type name="none" c:type="void"/>
71833         </return-value>
71834         <parameters>
71835           <parameter name="path" transfer-ownership="none">
71836             <doc xml:whitespace="preserve">a #GtkTreePath identifying the tree node whose children have been reordered</doc>
71837             <type name="TreePath" c:type="GtkTreePath"/>
71838           </parameter>
71839           <parameter name="iter" transfer-ownership="none">
71840             <doc xml:whitespace="preserve">a valid #GtkTreeIter pointing to the node whose</doc>
71841             <type name="TreeIter" c:type="GtkTreeIter"/>
71842           </parameter>
71843           <parameter name="new_order" transfer-ownership="none">
71844             <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>
71845             <type name="any" c:type="gpointer"/>
71846           </parameter>
71847         </parameters>
71848       </glib:signal>
71849     </interface>
71850     <class name="TreeModelFilter"
71851            c:type="GtkTreeModelFilter"
71852            parent="GObject.Object"
71853            glib:type-name="GtkTreeModelFilter"
71854            glib:get-type="gtk_tree_model_filter_get_type"
71855            glib:type-struct="TreeModelFilterClass">
71856       <implements name="TreeDragSource"/>
71857       <implements name="TreeModel"/>
71858       <constructor name="new"
71859                    c:identifier="gtk_tree_model_filter_new"
71860                    version="2.4">
71861         <doc xml:whitespace="preserve">Creates a new #GtkTreeModel, with @child_model as the child_model
71862 and @root as the virtual root.</doc>
71863         <return-value transfer-ownership="full">
71864           <doc xml:whitespace="preserve">A new #GtkTreeModel.</doc>
71865           <type name="TreeModelFilter" c:type="GtkTreeModel*"/>
71866         </return-value>
71867         <parameters>
71868           <parameter name="child_model" transfer-ownership="none">
71869             <doc xml:whitespace="preserve">A #GtkTreeModel.</doc>
71870             <type name="TreeModel" c:type="GtkTreeModel*"/>
71871           </parameter>
71872           <parameter name="root" transfer-ownership="none" allow-none="1">
71873             <doc xml:whitespace="preserve">A #GtkTreePath or %NULL.</doc>
71874             <type name="TreePath" c:type="GtkTreePath*"/>
71875           </parameter>
71876         </parameters>
71877       </constructor>
71878       <method name="set_visible_func"
71879               c:identifier="gtk_tree_model_filter_set_visible_func"
71880               version="2.4">
71881         <doc xml:whitespace="preserve">Sets the visible function used when filtering the @filter to be @func. The
71882 function should return %TRUE if the given row should be visible and
71883 %FALSE otherwise.
71884 If the condition calculated by the function changes over time (e.g. because
71885 it depends on some global parameters), you must call 
71886 gtk_tree_model_filter_refilter() to keep the visibility information of 
71887 the model uptodate.
71888 Note that @func is called whenever a row is inserted, when it may still be
71889 empty. The visible function should therefore take special care of empty
71890 rows, like in the example below.
71891 &lt;informalexample&gt;&lt;programlisting&gt;
71892 static gboolean
71893 visible_func (GtkTreeModel *model,
71894 GtkTreeIter  *iter,
71895 gpointer      data)
71896 {
71897 /&amp;ast; Visible if row is non-empty and first column is "HI" &amp;ast;/
71898 gchar *str;
71899 gboolean visible = FALSE;
71900 gtk_tree_model_get (model, iter, 0, &amp;str, -1);
71901 if (str &amp;&amp; strcmp (str, "HI") == 0)
71902 visible = TRUE;
71903 g_free (str);
71904 return visible;
71905 }
71906 &lt;/programlisting&gt;&lt;/informalexample&gt;</doc>
71907         <return-value transfer-ownership="none">
71908           <type name="none" c:type="void"/>
71909         </return-value>
71910         <parameters>
71911           <parameter name="func"
71912                      transfer-ownership="none"
71913                      scope="notified"
71914                      closure="2"
71915                      destroy="3">
71916             <doc xml:whitespace="preserve">A #GtkTreeModelFilterVisibleFunc, the visible function.</doc>
71917             <type name="TreeModelFilterVisibleFunc"
71918                   c:type="GtkTreeModelFilterVisibleFunc"/>
71919           </parameter>
71920           <parameter name="data" transfer-ownership="none" allow-none="1">
71921             <doc xml:whitespace="preserve">User data to pass to the visible function, or %NULL.</doc>
71922             <type name="any" c:type="gpointer"/>
71923           </parameter>
71924           <parameter name="destroy"
71925                      transfer-ownership="none"
71926                      allow-none="1"
71927                      scope="call">
71928             <doc xml:whitespace="preserve">Destroy notifier of @data, or %NULL.</doc>
71929             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
71930           </parameter>
71931         </parameters>
71932       </method>
71933       <method name="set_modify_func"
71934               c:identifier="gtk_tree_model_filter_set_modify_func"
71935               version="2.4">
71936         <doc xml:whitespace="preserve">With the @n_columns and @types parameters, you give an array of column
71937 types for this model (which will be exposed to the parent model/view).
71938 The @func, @data and @destroy parameters are for specifying the modify
71939 function. The modify function will get called for &lt;emphasis&gt;each&lt;/emphasis&gt;
71940 data access, the goal of the modify function is to return the data which 
71941 should be displayed at the location specified using the parameters of the 
71942 modify function.</doc>
71943         <return-value transfer-ownership="none">
71944           <type name="none" c:type="void"/>
71945         </return-value>
71946         <parameters>
71947           <parameter name="n_columns" transfer-ownership="none">
71948             <doc xml:whitespace="preserve">The number of columns in the filter model.</doc>
71949             <type name="int" c:type="gint"/>
71950           </parameter>
71951           <parameter name="types"
71952                      direction="out"
71953                      caller-allocates="0"
71954                      transfer-ownership="full">
71955             <doc xml:whitespace="preserve">The #GType&lt;!-- --&gt;s of the columns.</doc>
71956             <type name="GType" c:type="GType*"/>
71957           </parameter>
71958           <parameter name="func"
71959                      transfer-ownership="none"
71960                      scope="notified"
71961                      closure="4"
71962                      destroy="5">
71963             <doc xml:whitespace="preserve">A #GtkTreeModelFilterModifyFunc</doc>
71964             <type name="TreeModelFilterModifyFunc"
71965                   c:type="GtkTreeModelFilterModifyFunc"/>
71966           </parameter>
71967           <parameter name="data" transfer-ownership="none" allow-none="1">
71968             <doc xml:whitespace="preserve">User data to pass to the modify function, or %NULL.</doc>
71969             <type name="any" c:type="gpointer"/>
71970           </parameter>
71971           <parameter name="destroy"
71972                      transfer-ownership="none"
71973                      allow-none="1"
71974                      scope="call">
71975             <doc xml:whitespace="preserve">Destroy notifier of @data, or %NULL.</doc>
71976             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
71977           </parameter>
71978         </parameters>
71979       </method>
71980       <method name="set_visible_column"
71981               c:identifier="gtk_tree_model_filter_set_visible_column"
71982               version="2.4">
71983         <doc xml:whitespace="preserve">Sets @column of the child_model to be the column where @filter should
71984 look for visibility information. @columns should be a column of type
71985 %G_TYPE_BOOLEAN, where %TRUE means that a row is visible, and %FALSE
71986 if not.</doc>
71987         <return-value transfer-ownership="none">
71988           <type name="none" c:type="void"/>
71989         </return-value>
71990         <parameters>
71991           <parameter name="column" transfer-ownership="none">
71992             <doc xml:whitespace="preserve">A #gint which is the column containing the visible information.</doc>
71993             <type name="int" c:type="gint"/>
71994           </parameter>
71995         </parameters>
71996       </method>
71997       <method name="get_model"
71998               c:identifier="gtk_tree_model_filter_get_model"
71999               version="2.4">
72000         <doc xml:whitespace="preserve">Returns a pointer to the child model of @filter.</doc>
72001         <return-value transfer-ownership="full">
72002           <doc xml:whitespace="preserve">A pointer to a #GtkTreeModel.</doc>
72003           <type name="TreeModel" c:type="GtkTreeModel*"/>
72004         </return-value>
72005       </method>
72006       <method name="convert_child_iter_to_iter"
72007               c:identifier="gtk_tree_model_filter_convert_child_iter_to_iter"
72008               version="2.4">
72009         <doc xml:whitespace="preserve">Sets @filter_iter to point to the row in @filter that corresponds to the
72010 row pointed at by @child_iter.  If @filter_iter was not set, %FALSE is
72011 returned.
72012 valid iterator pointing to a visible row in child model.</doc>
72013         <return-value transfer-ownership="none">
72014           <doc xml:whitespace="preserve">%TRUE, if @filter_iter was set, i.e. if @child_iter is a</doc>
72015           <type name="boolean" c:type="gboolean"/>
72016         </return-value>
72017         <parameters>
72018           <parameter name="filter_iter" transfer-ownership="none">
72019             <doc xml:whitespace="preserve">An uninitialized #GtkTreeIter.</doc>
72020             <type name="TreeIter" c:type="GtkTreeIter*"/>
72021           </parameter>
72022           <parameter name="child_iter" transfer-ownership="none">
72023             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to a row on the child model.</doc>
72024             <type name="TreeIter" c:type="GtkTreeIter*"/>
72025           </parameter>
72026         </parameters>
72027       </method>
72028       <method name="convert_iter_to_child_iter"
72029               c:identifier="gtk_tree_model_filter_convert_iter_to_child_iter"
72030               version="2.4">
72031         <doc xml:whitespace="preserve">Sets @child_iter to point to the row pointed to by @filter_iter.</doc>
72032         <return-value transfer-ownership="none">
72033           <type name="none" c:type="void"/>
72034         </return-value>
72035         <parameters>
72036           <parameter name="child_iter" transfer-ownership="none">
72037             <doc xml:whitespace="preserve">An uninitialized #GtkTreeIter.</doc>
72038             <type name="TreeIter" c:type="GtkTreeIter*"/>
72039           </parameter>
72040           <parameter name="filter_iter" transfer-ownership="none">
72041             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to a row on @filter.</doc>
72042             <type name="TreeIter" c:type="GtkTreeIter*"/>
72043           </parameter>
72044         </parameters>
72045       </method>
72046       <method name="convert_child_path_to_path"
72047               c:identifier="gtk_tree_model_filter_convert_child_path_to_path"
72048               version="2.4">
72049         <doc xml:whitespace="preserve">Converts @child_path to a path relative to @filter. That is, @child_path
72050 points to a path in the child model. The rerturned path will point to the
72051 same row in the filtered model. If @child_path isn't a valid path on the
72052 child model or points to a row which is not visible in @filter, then %NULL
72053 is returned.</doc>
72054         <return-value transfer-ownership="full">
72055           <doc xml:whitespace="preserve">A newly allocated #GtkTreePath, or %NULL.</doc>
72056           <type name="TreePath" c:type="GtkTreePath*"/>
72057         </return-value>
72058         <parameters>
72059           <parameter name="child_path" transfer-ownership="none">
72060             <doc xml:whitespace="preserve">A #GtkTreePath to convert.</doc>
72061             <type name="TreePath" c:type="GtkTreePath*"/>
72062           </parameter>
72063         </parameters>
72064       </method>
72065       <method name="convert_path_to_child_path"
72066               c:identifier="gtk_tree_model_filter_convert_path_to_child_path"
72067               version="2.4">
72068         <doc xml:whitespace="preserve">Converts @filter_path to a path on the child model of @filter. That is,
72069 point to the same location in the model not being filtered. If @filter_path
72070 does not point to a location in the child model, %NULL is returned.</doc>
72071         <return-value transfer-ownership="full">
72072           <doc xml:whitespace="preserve">A newly allocated #GtkTreePath, or %NULL.</doc>
72073           <type name="TreePath" c:type="GtkTreePath*"/>
72074         </return-value>
72075         <parameters>
72076           <parameter name="filter_path" transfer-ownership="none">
72077             <doc xml:whitespace="preserve">A #GtkTreePath to convert.</doc>
72078             <type name="TreePath" c:type="GtkTreePath*"/>
72079           </parameter>
72080         </parameters>
72081       </method>
72082       <method name="refilter"
72083               c:identifier="gtk_tree_model_filter_refilter"
72084               version="2.4">
72085         <doc xml:whitespace="preserve">Emits ::row_changed for each row in the child model, which causes
72086 the filter to re-evaluate whether a row is visible or not.</doc>
72087         <return-value transfer-ownership="none">
72088           <type name="none" c:type="void"/>
72089         </return-value>
72090       </method>
72091       <method name="clear_cache"
72092               c:identifier="gtk_tree_model_filter_clear_cache"
72093               version="2.4">
72094         <doc xml:whitespace="preserve">This function should almost never be called. It clears the @filter
72095 of any cached iterators that haven't been reffed with
72096 gtk_tree_model_ref_node(). This might be useful if the child model
72097 being filtered is static (and doesn't change often) and there has been
72098 a lot of unreffed access to nodes. As a side effect of this function,
72099 all unreffed iters will be invalid.</doc>
72100         <return-value transfer-ownership="none">
72101           <type name="none" c:type="void"/>
72102         </return-value>
72103       </method>
72104       <property name="child-model"
72105                 writable="1"
72106                 construct-only="1"
72107                 transfer-ownership="none">
72108         <type name="TreeModel" c:type="GtkTreeModel"/>
72109       </property>
72110       <property name="virtual-root"
72111                 writable="1"
72112                 construct-only="1"
72113                 transfer-ownership="none">
72114         <type name="TreePath" c:type="GtkTreePath"/>
72115       </property>
72116       <field name="parent">
72117         <type name="GObject.Object" c:type="GObject"/>
72118       </field>
72119       <field name="priv">
72120         <type name="TreeModelFilterPrivate"
72121               c:type="GtkTreeModelFilterPrivate*"/>
72122       </field>
72123     </class>
72124     <record name="TreeModelFilterClass"
72125             c:type="GtkTreeModelFilterClass"
72126             glib:is-gtype-struct-for="TreeModelFilter">
72127       <field name="parent_class">
72128         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
72129       </field>
72130       <field name="gtk_reserved0">
72131         <callback name="gtk_reserved0" c:type="_gtk_reserved0">
72132           <return-value transfer-ownership="none">
72133             <type name="none" c:type="void"/>
72134           </return-value>
72135         </callback>
72136       </field>
72137       <field name="gtk_reserved1">
72138         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
72139           <return-value transfer-ownership="none">
72140             <type name="none" c:type="void"/>
72141           </return-value>
72142         </callback>
72143       </field>
72144       <field name="gtk_reserved2">
72145         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
72146           <return-value transfer-ownership="none">
72147             <type name="none" c:type="void"/>
72148           </return-value>
72149         </callback>
72150       </field>
72151       <field name="gtk_reserved3">
72152         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
72153           <return-value transfer-ownership="none">
72154             <type name="none" c:type="void"/>
72155           </return-value>
72156         </callback>
72157       </field>
72158     </record>
72159     <callback name="TreeModelFilterModifyFunc"
72160               c:type="GtkTreeModelFilterModifyFunc">
72161       <return-value transfer-ownership="none">
72162         <type name="none" c:type="void"/>
72163       </return-value>
72164       <parameters>
72165         <parameter name="model" transfer-ownership="none">
72166           <type name="TreeModel" c:type="GtkTreeModel*"/>
72167         </parameter>
72168         <parameter name="iter" transfer-ownership="none">
72169           <type name="TreeIter" c:type="GtkTreeIter*"/>
72170         </parameter>
72171         <parameter name="value" transfer-ownership="none">
72172           <type name="GObject.Value" c:type="GValue*"/>
72173         </parameter>
72174         <parameter name="column" transfer-ownership="none">
72175           <type name="int" c:type="gint"/>
72176         </parameter>
72177         <parameter name="data" transfer-ownership="none">
72178           <type name="any" c:type="gpointer"/>
72179         </parameter>
72180       </parameters>
72181     </callback>
72182     <record name="TreeModelFilterPrivate" c:type="GtkTreeModelFilterPrivate">
72183     </record>
72184     <callback name="TreeModelFilterVisibleFunc"
72185               c:type="GtkTreeModelFilterVisibleFunc">
72186       <return-value transfer-ownership="none">
72187         <type name="boolean" c:type="gboolean"/>
72188       </return-value>
72189       <parameters>
72190         <parameter name="model" transfer-ownership="none">
72191           <type name="TreeModel" c:type="GtkTreeModel*"/>
72192         </parameter>
72193         <parameter name="iter" transfer-ownership="none">
72194           <type name="TreeIter" c:type="GtkTreeIter*"/>
72195         </parameter>
72196         <parameter name="data" transfer-ownership="none">
72197           <type name="any" c:type="gpointer"/>
72198         </parameter>
72199       </parameters>
72200     </callback>
72201     <bitfield name="TreeModelFlags"
72202               glib:type-name="GtkTreeModelFlags"
72203               glib:get-type="gtk_tree_model_flags_get_type"
72204               c:type="GtkTreeModelFlags">
72205       <member name="iters_persist"
72206               value="1"
72207               c:identifier="GTK_TREE_MODEL_ITERS_PERSIST"
72208               glib:nick="iters-persist"/>
72209       <member name="list_only"
72210               value="2"
72211               c:identifier="GTK_TREE_MODEL_LIST_ONLY"
72212               glib:nick="list-only"/>
72213     </bitfield>
72214     <callback name="TreeModelForeachFunc" c:type="GtkTreeModelForeachFunc">
72215       <return-value transfer-ownership="none">
72216         <type name="boolean" c:type="gboolean"/>
72217       </return-value>
72218       <parameters>
72219         <parameter name="model" transfer-ownership="none">
72220           <type name="TreeModel" c:type="GtkTreeModel*"/>
72221         </parameter>
72222         <parameter name="path" transfer-ownership="none">
72223           <type name="TreePath" c:type="GtkTreePath*"/>
72224         </parameter>
72225         <parameter name="iter" transfer-ownership="none">
72226           <type name="TreeIter" c:type="GtkTreeIter*"/>
72227         </parameter>
72228         <parameter name="data" transfer-ownership="none">
72229           <type name="any" c:type="gpointer"/>
72230         </parameter>
72231       </parameters>
72232     </callback>
72233     <record name="TreeModelIface"
72234             c:type="GtkTreeModelIface"
72235             glib:is-gtype-struct-for="TreeModel">
72236       <field name="g_iface">
72237         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
72238       </field>
72239       <field name="row_changed">
72240         <callback name="row_changed" c:type="row_changed">
72241           <return-value transfer-ownership="none">
72242             <type name="none" c:type="void"/>
72243           </return-value>
72244           <parameters>
72245             <parameter name="tree_model" transfer-ownership="none">
72246               <type name="TreeModel" c:type="GtkTreeModel*"/>
72247             </parameter>
72248             <parameter name="path" transfer-ownership="none">
72249               <type name="TreePath" c:type="GtkTreePath*"/>
72250             </parameter>
72251             <parameter name="iter" transfer-ownership="none">
72252               <type name="TreeIter" c:type="GtkTreeIter*"/>
72253             </parameter>
72254           </parameters>
72255         </callback>
72256       </field>
72257       <field name="row_inserted">
72258         <callback name="row_inserted" c:type="row_inserted">
72259           <return-value transfer-ownership="none">
72260             <type name="none" c:type="void"/>
72261           </return-value>
72262           <parameters>
72263             <parameter name="tree_model" transfer-ownership="none">
72264               <type name="TreeModel" c:type="GtkTreeModel*"/>
72265             </parameter>
72266             <parameter name="path" transfer-ownership="none">
72267               <type name="TreePath" c:type="GtkTreePath*"/>
72268             </parameter>
72269             <parameter name="iter" transfer-ownership="none">
72270               <type name="TreeIter" c:type="GtkTreeIter*"/>
72271             </parameter>
72272           </parameters>
72273         </callback>
72274       </field>
72275       <field name="row_has_child_toggled">
72276         <callback name="row_has_child_toggled" c:type="row_has_child_toggled">
72277           <return-value transfer-ownership="none">
72278             <type name="none" c:type="void"/>
72279           </return-value>
72280           <parameters>
72281             <parameter name="tree_model" transfer-ownership="none">
72282               <type name="TreeModel" c:type="GtkTreeModel*"/>
72283             </parameter>
72284             <parameter name="path" transfer-ownership="none">
72285               <type name="TreePath" c:type="GtkTreePath*"/>
72286             </parameter>
72287             <parameter name="iter" transfer-ownership="none">
72288               <type name="TreeIter" c:type="GtkTreeIter*"/>
72289             </parameter>
72290           </parameters>
72291         </callback>
72292       </field>
72293       <field name="row_deleted">
72294         <callback name="row_deleted" c:type="row_deleted">
72295           <return-value transfer-ownership="none">
72296             <type name="none" c:type="void"/>
72297           </return-value>
72298           <parameters>
72299             <parameter name="tree_model" transfer-ownership="none">
72300               <type name="TreeModel" c:type="GtkTreeModel*"/>
72301             </parameter>
72302             <parameter name="path" transfer-ownership="none">
72303               <type name="TreePath" c:type="GtkTreePath*"/>
72304             </parameter>
72305           </parameters>
72306         </callback>
72307       </field>
72308       <field name="rows_reordered">
72309         <callback name="rows_reordered" c:type="rows_reordered">
72310           <return-value transfer-ownership="none">
72311             <type name="none" c:type="void"/>
72312           </return-value>
72313           <parameters>
72314             <parameter name="tree_model" transfer-ownership="none">
72315               <type name="TreeModel" c:type="GtkTreeModel*"/>
72316             </parameter>
72317             <parameter name="path" transfer-ownership="none">
72318               <type name="TreePath" c:type="GtkTreePath*"/>
72319             </parameter>
72320             <parameter name="iter" transfer-ownership="none">
72321               <type name="TreeIter" c:type="GtkTreeIter*"/>
72322             </parameter>
72323             <parameter name="new_order"
72324                        direction="out"
72325                        caller-allocates="0"
72326                        transfer-ownership="full">
72327               <type name="int" c:type="gint*"/>
72328             </parameter>
72329           </parameters>
72330         </callback>
72331       </field>
72332       <field name="get_flags">
72333         <callback name="get_flags" c:type="get_flags">
72334           <return-value transfer-ownership="full">
72335             <doc xml:whitespace="preserve">The flags supported by this interface.</doc>
72336             <type name="TreeModelFlags" c:type="GtkTreeModelFlags"/>
72337           </return-value>
72338           <parameters>
72339             <parameter name="tree_model" transfer-ownership="none">
72340               <type name="TreeModel" c:type="GtkTreeModel*"/>
72341             </parameter>
72342           </parameters>
72343         </callback>
72344       </field>
72345       <field name="get_n_columns">
72346         <callback name="get_n_columns" c:type="get_n_columns">
72347           <return-value transfer-ownership="none">
72348             <doc xml:whitespace="preserve">The number of columns.</doc>
72349             <type name="int" c:type="gint"/>
72350           </return-value>
72351           <parameters>
72352             <parameter name="tree_model" transfer-ownership="none">
72353               <type name="TreeModel" c:type="GtkTreeModel*"/>
72354             </parameter>
72355           </parameters>
72356         </callback>
72357       </field>
72358       <field name="get_column_type">
72359         <callback name="get_column_type" c:type="get_column_type">
72360           <return-value transfer-ownership="none">
72361             <doc xml:whitespace="preserve">The type of the column.</doc>
72362             <type name="GType" c:type="GType"/>
72363           </return-value>
72364           <parameters>
72365             <parameter name="tree_model" transfer-ownership="none">
72366               <type name="TreeModel" c:type="GtkTreeModel*"/>
72367             </parameter>
72368             <parameter name="index_" transfer-ownership="none">
72369               <doc xml:whitespace="preserve">The column index.</doc>
72370               <type name="int" c:type="gint"/>
72371             </parameter>
72372           </parameters>
72373         </callback>
72374       </field>
72375       <field name="get_iter">
72376         <callback name="get_iter" c:type="get_iter">
72377           <return-value transfer-ownership="none">
72378             <doc xml:whitespace="preserve">%TRUE, if @iter was set.</doc>
72379             <type name="boolean" c:type="gboolean"/>
72380           </return-value>
72381           <parameters>
72382             <parameter name="tree_model" transfer-ownership="none">
72383               <type name="TreeModel" c:type="GtkTreeModel*"/>
72384             </parameter>
72385             <parameter name="iter" transfer-ownership="none">
72386               <doc xml:whitespace="preserve">The uninitialized #GtkTreeIter.</doc>
72387               <type name="TreeIter" c:type="GtkTreeIter*"/>
72388             </parameter>
72389             <parameter name="path" transfer-ownership="none">
72390               <doc xml:whitespace="preserve">The #GtkTreePath.</doc>
72391               <type name="TreePath" c:type="GtkTreePath*"/>
72392             </parameter>
72393           </parameters>
72394         </callback>
72395       </field>
72396       <field name="get_path">
72397         <callback name="get_path" c:type="get_path">
72398           <return-value transfer-ownership="full">
72399             <doc xml:whitespace="preserve">a newly-created #GtkTreePath.</doc>
72400             <type name="TreePath" c:type="GtkTreePath*"/>
72401           </return-value>
72402           <parameters>
72403             <parameter name="tree_model" transfer-ownership="none">
72404               <type name="TreeModel" c:type="GtkTreeModel*"/>
72405             </parameter>
72406             <parameter name="iter" transfer-ownership="none">
72407               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
72408               <type name="TreeIter" c:type="GtkTreeIter*"/>
72409             </parameter>
72410           </parameters>
72411         </callback>
72412       </field>
72413       <field name="get_value">
72414         <callback name="get_value" c:type="get_value">
72415           <return-value transfer-ownership="none">
72416             <type name="none" c:type="void"/>
72417           </return-value>
72418           <parameters>
72419             <parameter name="tree_model" transfer-ownership="none">
72420               <type name="TreeModel" c:type="GtkTreeModel*"/>
72421             </parameter>
72422             <parameter name="iter" transfer-ownership="none">
72423               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
72424               <type name="TreeIter" c:type="GtkTreeIter*"/>
72425             </parameter>
72426             <parameter name="column" transfer-ownership="none">
72427               <doc xml:whitespace="preserve">The column to lookup the value at.</doc>
72428               <type name="int" c:type="gint"/>
72429             </parameter>
72430             <parameter name="value" transfer-ownership="none">
72431               <doc xml:whitespace="preserve">(inout) (transfer none) An empty #GValue to set.</doc>
72432               <type name="GObject.Value" c:type="GValue*"/>
72433             </parameter>
72434           </parameters>
72435         </callback>
72436       </field>
72437       <field name="iter_next">
72438         <callback name="iter_next" c:type="iter_next">
72439           <return-value transfer-ownership="none">
72440             <doc xml:whitespace="preserve">%TRUE if @iter has been changed to the next node.</doc>
72441             <type name="boolean" c:type="gboolean"/>
72442           </return-value>
72443           <parameters>
72444             <parameter name="tree_model" transfer-ownership="none">
72445               <type name="TreeModel" c:type="GtkTreeModel*"/>
72446             </parameter>
72447             <parameter name="iter" transfer-ownership="none">
72448               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
72449               <type name="TreeIter" c:type="GtkTreeIter*"/>
72450             </parameter>
72451           </parameters>
72452         </callback>
72453       </field>
72454       <field name="iter_children">
72455         <callback name="iter_children" c:type="iter_children">
72456           <return-value transfer-ownership="none">
72457             <doc xml:whitespace="preserve">%TRUE, if @child has been set to the first child.</doc>
72458             <type name="boolean" c:type="gboolean"/>
72459           </return-value>
72460           <parameters>
72461             <parameter name="tree_model" transfer-ownership="none">
72462               <type name="TreeModel" c:type="GtkTreeModel*"/>
72463             </parameter>
72464             <parameter name="iter" transfer-ownership="none">
72465               <doc xml:whitespace="preserve">The new #GtkTreeIter to be set to the child.</doc>
72466               <type name="TreeIter" c:type="GtkTreeIter*"/>
72467             </parameter>
72468             <parameter name="parent" transfer-ownership="none" allow-none="1">
72469               <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL</doc>
72470               <type name="TreeIter" c:type="GtkTreeIter*"/>
72471             </parameter>
72472           </parameters>
72473         </callback>
72474       </field>
72475       <field name="iter_has_child">
72476         <callback name="iter_has_child" c:type="iter_has_child">
72477           <return-value transfer-ownership="none">
72478             <doc xml:whitespace="preserve">%TRUE if @iter has children.</doc>
72479             <type name="boolean" c:type="gboolean"/>
72480           </return-value>
72481           <parameters>
72482             <parameter name="tree_model" transfer-ownership="none">
72483               <type name="TreeModel" c:type="GtkTreeModel*"/>
72484             </parameter>
72485             <parameter name="iter" transfer-ownership="none">
72486               <doc xml:whitespace="preserve">The #GtkTreeIter to test for children.</doc>
72487               <type name="TreeIter" c:type="GtkTreeIter*"/>
72488             </parameter>
72489           </parameters>
72490         </callback>
72491       </field>
72492       <field name="iter_n_children">
72493         <callback name="iter_n_children" c:type="iter_n_children">
72494           <return-value transfer-ownership="none">
72495             <doc xml:whitespace="preserve">The number of children of @iter.</doc>
72496             <type name="int" c:type="gint"/>
72497           </return-value>
72498           <parameters>
72499             <parameter name="tree_model" transfer-ownership="none">
72500               <type name="TreeModel" c:type="GtkTreeModel*"/>
72501             </parameter>
72502             <parameter name="iter" transfer-ownership="none" allow-none="1">
72503               <doc xml:whitespace="preserve">The #GtkTreeIter, or %NULL.</doc>
72504               <type name="TreeIter" c:type="GtkTreeIter*"/>
72505             </parameter>
72506           </parameters>
72507         </callback>
72508       </field>
72509       <field name="iter_nth_child">
72510         <callback name="iter_nth_child" c:type="iter_nth_child">
72511           <return-value transfer-ownership="none">
72512             <doc xml:whitespace="preserve">%TRUE, if @parent has an @n&lt;!-- --&gt;th child.</doc>
72513             <type name="boolean" c:type="gboolean"/>
72514           </return-value>
72515           <parameters>
72516             <parameter name="tree_model" transfer-ownership="none">
72517               <type name="TreeModel" c:type="GtkTreeModel*"/>
72518             </parameter>
72519             <parameter name="iter" transfer-ownership="none">
72520               <doc xml:whitespace="preserve">The #GtkTreeIter to set to the nth child.</doc>
72521               <type name="TreeIter" c:type="GtkTreeIter*"/>
72522             </parameter>
72523             <parameter name="parent" transfer-ownership="none" allow-none="1">
72524               <doc xml:whitespace="preserve">The #GtkTreeIter to get the child from, or %NULL.</doc>
72525               <type name="TreeIter" c:type="GtkTreeIter*"/>
72526             </parameter>
72527             <parameter name="n" transfer-ownership="none">
72528               <doc xml:whitespace="preserve">Then index of the desired child.</doc>
72529               <type name="int" c:type="gint"/>
72530             </parameter>
72531           </parameters>
72532         </callback>
72533       </field>
72534       <field name="iter_parent">
72535         <callback name="iter_parent" c:type="iter_parent">
72536           <return-value transfer-ownership="none">
72537             <doc xml:whitespace="preserve">%TRUE, if @iter is set to the parent of @child.</doc>
72538             <type name="boolean" c:type="gboolean"/>
72539           </return-value>
72540           <parameters>
72541             <parameter name="tree_model" transfer-ownership="none">
72542               <type name="TreeModel" c:type="GtkTreeModel*"/>
72543             </parameter>
72544             <parameter name="iter" transfer-ownership="none">
72545               <doc xml:whitespace="preserve">The new #GtkTreeIter to set to the parent.</doc>
72546               <type name="TreeIter" c:type="GtkTreeIter*"/>
72547             </parameter>
72548             <parameter name="child" transfer-ownership="none">
72549               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
72550               <type name="TreeIter" c:type="GtkTreeIter*"/>
72551             </parameter>
72552           </parameters>
72553         </callback>
72554       </field>
72555       <field name="ref_node">
72556         <callback name="ref_node" c:type="ref_node">
72557           <return-value transfer-ownership="none">
72558             <type name="none" c:type="void"/>
72559           </return-value>
72560           <parameters>
72561             <parameter name="tree_model" transfer-ownership="none">
72562               <type name="TreeModel" c:type="GtkTreeModel*"/>
72563             </parameter>
72564             <parameter name="iter" transfer-ownership="none">
72565               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
72566               <type name="TreeIter" c:type="GtkTreeIter*"/>
72567             </parameter>
72568           </parameters>
72569         </callback>
72570       </field>
72571       <field name="unref_node">
72572         <callback name="unref_node" c:type="unref_node">
72573           <return-value transfer-ownership="none">
72574             <type name="none" c:type="void"/>
72575           </return-value>
72576           <parameters>
72577             <parameter name="tree_model" transfer-ownership="none">
72578               <type name="TreeModel" c:type="GtkTreeModel*"/>
72579             </parameter>
72580             <parameter name="iter" transfer-ownership="none">
72581               <doc xml:whitespace="preserve">The #GtkTreeIter.</doc>
72582               <type name="TreeIter" c:type="GtkTreeIter*"/>
72583             </parameter>
72584           </parameters>
72585         </callback>
72586       </field>
72587     </record>
72588     <class name="TreeModelSort"
72589            c:type="GtkTreeModelSort"
72590            parent="GObject.Object"
72591            glib:type-name="GtkTreeModelSort"
72592            glib:get-type="gtk_tree_model_sort_get_type"
72593            glib:type-struct="TreeModelSortClass">
72594       <implements name="TreeDragSource"/>
72595       <implements name="TreeModel"/>
72596       <implements name="TreeSortable"/>
72597       <constructor name="new_with_model"
72598                    c:identifier="gtk_tree_model_sort_new_with_model">
72599         <doc xml:whitespace="preserve">Creates a new #GtkTreeModel, with @child_model as the child model.</doc>
72600         <return-value transfer-ownership="full">
72601           <doc xml:whitespace="preserve">A new #GtkTreeModel.</doc>
72602           <type name="TreeModelSort" c:type="GtkTreeModel*"/>
72603         </return-value>
72604         <parameters>
72605           <parameter name="child_model" transfer-ownership="none">
72606             <doc xml:whitespace="preserve">A #GtkTreeModel</doc>
72607             <type name="TreeModel" c:type="GtkTreeModel*"/>
72608           </parameter>
72609         </parameters>
72610       </constructor>
72611       <method name="get_model" c:identifier="gtk_tree_model_sort_get_model">
72612         <doc xml:whitespace="preserve">Returns the model the #GtkTreeModelSort is sorting.</doc>
72613         <return-value transfer-ownership="full">
72614           <doc xml:whitespace="preserve">the "child model" being sorted</doc>
72615           <type name="TreeModel" c:type="GtkTreeModel*"/>
72616         </return-value>
72617       </method>
72618       <method name="convert_child_path_to_path"
72619               c:identifier="gtk_tree_model_sort_convert_child_path_to_path">
72620         <doc xml:whitespace="preserve">Converts @child_path to a path relative to @tree_model_sort.  That is,
72621 point to the same row in the sorted model.  If @child_path isn't a valid 
72622 path on the child model, then %NULL is returned.</doc>
72623         <return-value transfer-ownership="full">
72624           <doc xml:whitespace="preserve">A newly allocated #GtkTreePath, or %NULL</doc>
72625           <type name="TreePath" c:type="GtkTreePath*"/>
72626         </return-value>
72627         <parameters>
72628           <parameter name="child_path" transfer-ownership="none">
72629             <doc xml:whitespace="preserve">A #GtkTreePath to convert</doc>
72630             <type name="TreePath" c:type="GtkTreePath*"/>
72631           </parameter>
72632         </parameters>
72633       </method>
72634       <method name="convert_child_iter_to_iter"
72635               c:identifier="gtk_tree_model_sort_convert_child_iter_to_iter">
72636         <doc xml:whitespace="preserve">Sets @sort_iter to point to the row in @tree_model_sort that corresponds to
72637 the row pointed at by @child_iter.  If @sort_iter was not set, %FALSE
72638 valid iterator pointer to a visible row in the child model.</doc>
72639         <return-value transfer-ownership="none">
72640           <doc xml:whitespace="preserve">%TRUE, if @sort_iter was set, i.e. if @sort_iter is a</doc>
72641           <type name="boolean" c:type="gboolean"/>
72642         </return-value>
72643         <parameters>
72644           <parameter name="sort_iter" transfer-ownership="none">
72645             <doc xml:whitespace="preserve">An uninitialized #GtkTreeIter.</doc>
72646             <type name="TreeIter" c:type="GtkTreeIter*"/>
72647           </parameter>
72648           <parameter name="child_iter" transfer-ownership="none">
72649             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to a row on the child model</doc>
72650             <type name="TreeIter" c:type="GtkTreeIter*"/>
72651           </parameter>
72652         </parameters>
72653       </method>
72654       <method name="convert_path_to_child_path"
72655               c:identifier="gtk_tree_model_sort_convert_path_to_child_path">
72656         <doc xml:whitespace="preserve">Converts @sorted_path to a path on the child model of @tree_model_sort.  
72657 That is, @sorted_path points to a location in @tree_model_sort.  The 
72658 returned path will point to the same location in the model not being 
72659 sorted.  If @sorted_path does not point to a location in the child model, 
72660 %NULL is returned.</doc>
72661         <return-value transfer-ownership="full">
72662           <doc xml:whitespace="preserve">A newly allocated #GtkTreePath, or %NULL</doc>
72663           <type name="TreePath" c:type="GtkTreePath*"/>
72664         </return-value>
72665         <parameters>
72666           <parameter name="sorted_path" transfer-ownership="none">
72667             <doc xml:whitespace="preserve">A #GtkTreePath to convert</doc>
72668             <type name="TreePath" c:type="GtkTreePath*"/>
72669           </parameter>
72670         </parameters>
72671       </method>
72672       <method name="convert_iter_to_child_iter"
72673               c:identifier="gtk_tree_model_sort_convert_iter_to_child_iter">
72674         <doc xml:whitespace="preserve">Sets @child_iter to point to the row pointed to by @sorted_iter.</doc>
72675         <return-value transfer-ownership="none">
72676           <type name="none" c:type="void"/>
72677         </return-value>
72678         <parameters>
72679           <parameter name="child_iter" transfer-ownership="none">
72680             <doc xml:whitespace="preserve">An uninitialized #GtkTreeIter</doc>
72681             <type name="TreeIter" c:type="GtkTreeIter*"/>
72682           </parameter>
72683           <parameter name="sorted_iter" transfer-ownership="none">
72684             <doc xml:whitespace="preserve">A valid #GtkTreeIter pointing to a row on @tree_model_sort.</doc>
72685             <type name="TreeIter" c:type="GtkTreeIter*"/>
72686           </parameter>
72687         </parameters>
72688       </method>
72689       <method name="reset_default_sort_func"
72690               c:identifier="gtk_tree_model_sort_reset_default_sort_func">
72691         <doc xml:whitespace="preserve">This resets the default sort function to be in the 'unsorted' state.  That
72692 is, it is in the same order as the child model. It will re-sort the model
72693 to be in the same order as the child model only if the #GtkTreeModelSort
72694 is in 'unsorted' state.</doc>
72695         <return-value transfer-ownership="none">
72696           <type name="none" c:type="void"/>
72697         </return-value>
72698       </method>
72699       <method name="clear_cache"
72700               c:identifier="gtk_tree_model_sort_clear_cache">
72701         <doc xml:whitespace="preserve">This function should almost never be called.  It clears the @tree_model_sort
72702 of any cached iterators that haven't been reffed with
72703 gtk_tree_model_ref_node().  This might be useful if the child model being
72704 sorted is static (and doesn't change often) and there has been a lot of
72705 unreffed access to nodes.  As a side effect of this function, all unreffed
72706 iters will be invalid.</doc>
72707         <return-value transfer-ownership="none">
72708           <type name="none" c:type="void"/>
72709         </return-value>
72710       </method>
72711       <method name="iter_is_valid"
72712               c:identifier="gtk_tree_model_sort_iter_is_valid"
72713               version="2.2">
72714         <doc xml:whitespace="preserve">&lt;warning&gt;&lt;para&gt;
72715 This function is slow. Only use it for debugging and/or testing purposes.
72716 &lt;/para&gt;&lt;/warning&gt;
72717 Checks if the given iter is a valid iter for this #GtkTreeModelSort.</doc>
72718         <return-value transfer-ownership="none">
72719           <doc xml:whitespace="preserve">%TRUE if the iter is valid, %FALSE if the iter is invalid.</doc>
72720           <type name="boolean" c:type="gboolean"/>
72721         </return-value>
72722         <parameters>
72723           <parameter name="iter" transfer-ownership="none">
72724             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
72725             <type name="TreeIter" c:type="GtkTreeIter*"/>
72726           </parameter>
72727         </parameters>
72728       </method>
72729       <property name="model"
72730                 writable="1"
72731                 construct-only="1"
72732                 transfer-ownership="none">
72733         <type name="TreeModel" c:type="GtkTreeModel"/>
72734       </property>
72735       <field name="parent">
72736         <type name="GObject.Object" c:type="GObject"/>
72737       </field>
72738       <field name="root">
72739         <type name="any" c:type="gpointer"/>
72740       </field>
72741       <field name="stamp">
72742         <type name="int" c:type="gint"/>
72743       </field>
72744       <field name="child_flags">
72745         <type name="uint" c:type="guint"/>
72746       </field>
72747       <field name="child_model">
72748         <type name="TreeModel" c:type="GtkTreeModel*"/>
72749       </field>
72750       <field name="zero_ref_count">
72751         <type name="int" c:type="gint"/>
72752       </field>
72753       <field name="sort_list">
72754         <type name="GLib.List" c:type="GList*">
72755           <type name="any" c:type="gpointer"/>
72756         </type>
72757       </field>
72758       <field name="sort_column_id">
72759         <type name="int" c:type="gint"/>
72760       </field>
72761       <field name="order">
72762         <type name="SortType" c:type="GtkSortType"/>
72763       </field>
72764       <field name="default_sort_func">
72765         <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
72766       </field>
72767       <field name="default_sort_data">
72768         <type name="any" c:type="gpointer"/>
72769       </field>
72770       <field name="default_sort_destroy">
72771         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
72772       </field>
72773       <field name="changed_id">
72774         <type name="uint" c:type="guint"/>
72775       </field>
72776       <field name="inserted_id">
72777         <type name="uint" c:type="guint"/>
72778       </field>
72779       <field name="has_child_toggled_id">
72780         <type name="uint" c:type="guint"/>
72781       </field>
72782       <field name="deleted_id">
72783         <type name="uint" c:type="guint"/>
72784       </field>
72785       <field name="reordered_id">
72786         <type name="uint" c:type="guint"/>
72787       </field>
72788     </class>
72789     <record name="TreeModelSortClass"
72790             c:type="GtkTreeModelSortClass"
72791             glib:is-gtype-struct-for="TreeModelSort">
72792       <field name="parent_class">
72793         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
72794       </field>
72795       <field name="gtk_reserved1">
72796         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
72797           <return-value transfer-ownership="none">
72798             <type name="none" c:type="void"/>
72799           </return-value>
72800         </callback>
72801       </field>
72802       <field name="gtk_reserved2">
72803         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
72804           <return-value transfer-ownership="none">
72805             <type name="none" c:type="void"/>
72806           </return-value>
72807         </callback>
72808       </field>
72809       <field name="gtk_reserved3">
72810         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
72811           <return-value transfer-ownership="none">
72812             <type name="none" c:type="void"/>
72813           </return-value>
72814         </callback>
72815       </field>
72816       <field name="gtk_reserved4">
72817         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
72818           <return-value transfer-ownership="none">
72819             <type name="none" c:type="void"/>
72820           </return-value>
72821         </callback>
72822       </field>
72823     </record>
72824     <record name="TreePath"
72825             c:type="GtkTreePath"
72826             glib:type-name="GtkTreePath"
72827             glib:get-type="gtk_tree_path_get_type">
72828       <constructor name="new" c:identifier="gtk_tree_path_new">
72829         <doc xml:whitespace="preserve">Creates a new #GtkTreePath.  This structure refers to a row.</doc>
72830         <return-value transfer-ownership="full">
72831           <doc xml:whitespace="preserve">A newly created #GtkTreePath.</doc>
72832           <type name="TreePath" c:type="GtkTreePath*"/>
72833         </return-value>
72834       </constructor>
72835       <constructor name="new_from_string"
72836                    c:identifier="gtk_tree_path_new_from_string">
72837         <doc xml:whitespace="preserve">Creates a new #GtkTreePath initialized to @path.  @path is expected to be a
72838 colon separated list of numbers.  For example, the string "10:4:0" would
72839 create a path of depth 3 pointing to the 11th child of the root node, the 5th
72840 child of that 11th child, and the 1st child of that 5th child.  If an invalid
72841 path string is passed in, %NULL is returned.</doc>
72842         <return-value transfer-ownership="full">
72843           <doc xml:whitespace="preserve">A newly-created #GtkTreePath, or %NULL</doc>
72844           <type name="TreePath" c:type="GtkTreePath*"/>
72845         </return-value>
72846         <parameters>
72847           <parameter name="path" transfer-ownership="none">
72848             <doc xml:whitespace="preserve">The string representation of a path.</doc>
72849             <type name="utf8" c:type="gchar*"/>
72850           </parameter>
72851         </parameters>
72852       </constructor>
72853       <constructor name="new_from_indices"
72854                    c:identifier="gtk_tree_path_new_from_indices"
72855                    version="2.2"
72856                    introspectable="0">
72857         <doc xml:whitespace="preserve">Creates a new path with @first_index and @varargs as indices.</doc>
72858         <return-value transfer-ownership="full">
72859           <doc xml:whitespace="preserve">A newly created #GtkTreePath.</doc>
72860           <type name="TreePath" c:type="GtkTreePath*"/>
72861         </return-value>
72862         <parameters>
72863           <parameter name="first_index" transfer-ownership="none">
72864             <doc xml:whitespace="preserve">first integer</doc>
72865             <type name="int" c:type="gint"/>
72866           </parameter>
72867           <parameter transfer-ownership="none">
72868             <varargs>
72869             </varargs>
72870           </parameter>
72871         </parameters>
72872       </constructor>
72873       <constructor name="new_first" c:identifier="gtk_tree_path_new_first">
72874         <doc xml:whitespace="preserve">Creates a new #GtkTreePath.  The string representation of this path is "0"</doc>
72875         <return-value transfer-ownership="full">
72876           <doc xml:whitespace="preserve">A new #GtkTreePath.</doc>
72877           <type name="TreePath" c:type="GtkTreePath*"/>
72878         </return-value>
72879       </constructor>
72880       <method name="to_string" c:identifier="gtk_tree_path_to_string">
72881         <doc xml:whitespace="preserve">Generates a string representation of the path.  This string is a ':'
72882 separated list of numbers.  For example, "4:10:0:3" would be an acceptable return value for this string.</doc>
72883         <return-value transfer-ownership="full">
72884           <doc xml:whitespace="preserve">A newly-allocated string.  Must be freed with g_free().</doc>
72885           <type name="utf8" c:type="gchar*"/>
72886         </return-value>
72887       </method>
72888       <method name="append_index" c:identifier="gtk_tree_path_append_index">
72889         <doc xml:whitespace="preserve">Appends a new index to a path.  As a result, the depth of the path is
72890 increased.</doc>
72891         <return-value transfer-ownership="none">
72892           <type name="none" c:type="void"/>
72893         </return-value>
72894         <parameters>
72895           <parameter name="index_" transfer-ownership="none">
72896             <doc xml:whitespace="preserve">The index.</doc>
72897             <type name="int" c:type="gint"/>
72898           </parameter>
72899         </parameters>
72900       </method>
72901       <method name="prepend_index" c:identifier="gtk_tree_path_prepend_index">
72902         <doc xml:whitespace="preserve">Prepends a new index to a path.  As a result, the depth of the path is
72903 increased.</doc>
72904         <return-value transfer-ownership="none">
72905           <type name="none" c:type="void"/>
72906         </return-value>
72907         <parameters>
72908           <parameter name="index_" transfer-ownership="none">
72909             <doc xml:whitespace="preserve">The index.</doc>
72910             <type name="int" c:type="gint"/>
72911           </parameter>
72912         </parameters>
72913       </method>
72914       <method name="get_depth" c:identifier="gtk_tree_path_get_depth">
72915         <doc xml:whitespace="preserve">Returns the current depth of @path.</doc>
72916         <return-value transfer-ownership="none">
72917           <doc xml:whitespace="preserve">The depth of @path</doc>
72918           <type name="int" c:type="gint"/>
72919         </return-value>
72920       </method>
72921       <method name="get_indices" c:identifier="gtk_tree_path_get_indices">
72922         <doc xml:whitespace="preserve">Returns the current indices of @path.  This is an array of integers, each
72923 representing a node in a tree.  This value should not be freed.</doc>
72924         <return-value transfer-ownership="full">
72925           <doc xml:whitespace="preserve">The current indices, or %NULL.</doc>
72926           <type name="int" c:type="gint*"/>
72927         </return-value>
72928       </method>
72929       <method name="free" c:identifier="gtk_tree_path_free">
72930         <doc xml:whitespace="preserve">Frees @path.</doc>
72931         <return-value transfer-ownership="none">
72932           <type name="none" c:type="void"/>
72933         </return-value>
72934       </method>
72935       <method name="copy" c:identifier="gtk_tree_path_copy">
72936         <doc xml:whitespace="preserve">Creates a new #GtkTreePath as a copy of @path.</doc>
72937         <return-value transfer-ownership="full">
72938           <doc xml:whitespace="preserve">A new #GtkTreePath.</doc>
72939           <type name="TreePath" c:type="GtkTreePath*"/>
72940         </return-value>
72941       </method>
72942       <method name="compare" c:identifier="gtk_tree_path_compare">
72943         <doc xml:whitespace="preserve">Compares two paths.  If @a appears before @b in a tree, then -1 is returned.
72944 If @b appears before @a, then 1 is returned.  If the two nodes are equal,
72945 then 0 is returned.</doc>
72946         <return-value transfer-ownership="none">
72947           <doc xml:whitespace="preserve">The relative positions of @a and @b</doc>
72948           <type name="int" c:type="gint"/>
72949         </return-value>
72950         <parameters>
72951           <parameter name="b" transfer-ownership="none">
72952             <doc xml:whitespace="preserve">A #GtkTreePath to compare with.</doc>
72953             <type name="TreePath" c:type="GtkTreePath*"/>
72954           </parameter>
72955         </parameters>
72956       </method>
72957       <method name="next" c:identifier="gtk_tree_path_next">
72958         <doc xml:whitespace="preserve">Moves the @path to point to the next node at the current depth.</doc>
72959         <return-value transfer-ownership="none">
72960           <type name="none" c:type="void"/>
72961         </return-value>
72962       </method>
72963       <method name="prev" c:identifier="gtk_tree_path_prev">
72964         <doc xml:whitespace="preserve">Moves the @path to point to the previous node at the current depth, 
72965 if it exists.</doc>
72966         <return-value transfer-ownership="none">
72967           <doc xml:whitespace="preserve">%TRUE if @path has a previous node, and the move was made.</doc>
72968           <type name="boolean" c:type="gboolean"/>
72969         </return-value>
72970       </method>
72971       <method name="up" c:identifier="gtk_tree_path_up">
72972         <doc xml:whitespace="preserve">Moves the @path to point to its parent node, if it has a parent.</doc>
72973         <return-value transfer-ownership="none">
72974           <doc xml:whitespace="preserve">%TRUE if @path has a parent, and the move was made.</doc>
72975           <type name="boolean" c:type="gboolean"/>
72976         </return-value>
72977       </method>
72978       <method name="down" c:identifier="gtk_tree_path_down">
72979         <doc xml:whitespace="preserve">Moves @path to point to the first child of the current path.</doc>
72980         <return-value transfer-ownership="none">
72981           <type name="none" c:type="void"/>
72982         </return-value>
72983       </method>
72984       <method name="is_ancestor" c:identifier="gtk_tree_path_is_ancestor">
72985         <doc xml:whitespace="preserve">Returns %TRUE if @descendant is a descendant of @path.</doc>
72986         <return-value transfer-ownership="none">
72987           <doc xml:whitespace="preserve">%TRUE if @descendant is contained inside @path</doc>
72988           <type name="boolean" c:type="gboolean"/>
72989         </return-value>
72990         <parameters>
72991           <parameter name="descendant" transfer-ownership="none">
72992             <doc xml:whitespace="preserve">another #GtkTreePath</doc>
72993             <type name="TreePath" c:type="GtkTreePath*"/>
72994           </parameter>
72995         </parameters>
72996       </method>
72997       <method name="is_descendant" c:identifier="gtk_tree_path_is_descendant">
72998         <doc xml:whitespace="preserve">Returns %TRUE if @path is a descendant of @ancestor.</doc>
72999         <return-value transfer-ownership="none">
73000           <doc xml:whitespace="preserve">%TRUE if @ancestor contains @path somewhere below it</doc>
73001           <type name="boolean" c:type="gboolean"/>
73002         </return-value>
73003         <parameters>
73004           <parameter name="ancestor" transfer-ownership="none">
73005             <doc xml:whitespace="preserve">another #GtkTreePath</doc>
73006             <type name="TreePath" c:type="GtkTreePath*"/>
73007           </parameter>
73008         </parameters>
73009       </method>
73010     </record>
73011     <record name="TreeRowReference"
73012             c:type="GtkTreeRowReference"
73013             glib:type-name="GtkTreeRowReference"
73014             glib:get-type="gtk_tree_row_reference_get_type">
73015       <constructor name="new" c:identifier="gtk_tree_row_reference_new">
73016         <doc xml:whitespace="preserve">Creates a row reference based on @path.  This reference will keep pointing 
73017 to the node pointed to by @path, so long as it exists.  It listens to all
73018 signals emitted by @model, and updates its path appropriately.  If @path
73019 isn't a valid path in @model, then %NULL is returned.</doc>
73020         <return-value transfer-ownership="full">
73021           <doc xml:whitespace="preserve">A newly allocated #GtkTreeRowReference, or %NULL</doc>
73022           <type name="TreeRowReference" c:type="GtkTreeRowReference*"/>
73023         </return-value>
73024         <parameters>
73025           <parameter name="model" transfer-ownership="none">
73026             <doc xml:whitespace="preserve">A #GtkTreeModel</doc>
73027             <type name="TreeModel" c:type="GtkTreeModel*"/>
73028           </parameter>
73029           <parameter name="path" transfer-ownership="none">
73030             <doc xml:whitespace="preserve">A valid #GtkTreePath to monitor</doc>
73031             <type name="TreePath" c:type="GtkTreePath*"/>
73032           </parameter>
73033         </parameters>
73034       </constructor>
73035       <constructor name="new_proxy"
73036                    c:identifier="gtk_tree_row_reference_new_proxy">
73037         <doc xml:whitespace="preserve">You do not need to use this function.  Creates a row reference based on
73038 so long as it exists.  If @path isn't a valid path in @model, then %NULL is
73039 returned.  However, unlike references created with
73040 gtk_tree_row_reference_new(), it does not listen to the model for changes.
73041 The creator of the row reference must do this explicitly using
73042 gtk_tree_row_reference_inserted(), gtk_tree_row_reference_deleted(),
73043 gtk_tree_row_reference_reordered().
73044 These functions must be called exactly once per proxy when the
73045 corresponding signal on the model is emitted. This single call
73046 updates all row references for that proxy. Since built-in GTK+
73047 objects like #GtkTreeView already use this mechanism internally,
73048 using them as the proxy object will produce unpredictable results.
73049 Further more, passing the same object as @model and @proxy
73050 doesn't work for reasons of internal implementation.
73051 This type of row reference is primarily meant by structures that need to
73052 carefully monitor exactly when a row reference updates itself, and is not
73053 generally needed by most applications.</doc>
73054         <return-value transfer-ownership="full">
73055           <doc xml:whitespace="preserve">A newly allocated #GtkTreeRowReference, or %NULL</doc>
73056           <type name="TreeRowReference" c:type="GtkTreeRowReference*"/>
73057         </return-value>
73058         <parameters>
73059           <parameter name="proxy" transfer-ownership="none">
73060             <doc xml:whitespace="preserve">A proxy #GObject</doc>
73061             <type name="GObject.Object" c:type="GObject*"/>
73062           </parameter>
73063           <parameter name="model" transfer-ownership="none">
73064             <doc xml:whitespace="preserve">A #GtkTreeModel</doc>
73065             <type name="TreeModel" c:type="GtkTreeModel*"/>
73066           </parameter>
73067           <parameter name="path" transfer-ownership="none">
73068             <doc xml:whitespace="preserve">A valid #GtkTreePath to monitor</doc>
73069             <type name="TreePath" c:type="GtkTreePath*"/>
73070           </parameter>
73071         </parameters>
73072       </constructor>
73073       <method name="get_path" c:identifier="gtk_tree_row_reference_get_path">
73074         <doc xml:whitespace="preserve">Returns a path that the row reference currently points to, or %NULL if the
73075 path pointed to is no longer valid.</doc>
73076         <return-value transfer-ownership="full">
73077           <doc xml:whitespace="preserve">A current path, or %NULL.</doc>
73078           <type name="TreePath" c:type="GtkTreePath*"/>
73079         </return-value>
73080       </method>
73081       <method name="get_model"
73082               c:identifier="gtk_tree_row_reference_get_model"
73083               version="2.8">
73084         <doc xml:whitespace="preserve">Returns the model that the row reference is monitoring.</doc>
73085         <return-value transfer-ownership="full">
73086           <doc xml:whitespace="preserve">the model</doc>
73087           <type name="TreeModel" c:type="GtkTreeModel*"/>
73088         </return-value>
73089       </method>
73090       <method name="valid" c:identifier="gtk_tree_row_reference_valid">
73091         <doc xml:whitespace="preserve">Returns %TRUE if the @reference is non-%NULL and refers to a current valid
73092 path.</doc>
73093         <return-value transfer-ownership="none">
73094           <doc xml:whitespace="preserve">%TRUE if @reference points to a valid path.</doc>
73095           <type name="boolean" c:type="gboolean"/>
73096         </return-value>
73097       </method>
73098       <method name="copy"
73099               c:identifier="gtk_tree_row_reference_copy"
73100               version="2.2">
73101         <doc xml:whitespace="preserve">Copies a #GtkTreeRowReference.</doc>
73102         <return-value transfer-ownership="full">
73103           <doc xml:whitespace="preserve">a copy of @reference.</doc>
73104           <type name="TreeRowReference" c:type="GtkTreeRowReference*"/>
73105         </return-value>
73106       </method>
73107       <method name="free" c:identifier="gtk_tree_row_reference_free">
73108         <doc xml:whitespace="preserve">Free's @reference. @reference may be %NULL.</doc>
73109         <return-value transfer-ownership="none">
73110           <type name="none" c:type="void"/>
73111         </return-value>
73112       </method>
73113     </record>
73114     <class name="TreeSelection"
73115            c:type="GtkTreeSelection"
73116            parent="GObject.Object"
73117            glib:type-name="GtkTreeSelection"
73118            glib:get-type="gtk_tree_selection_get_type"
73119            glib:type-struct="TreeSelectionClass">
73120       <method name="set_mode" c:identifier="gtk_tree_selection_set_mode">
73121         <doc xml:whitespace="preserve">Sets the selection mode of the @selection.  If the previous type was
73122 #GTK_SELECTION_MULTIPLE, then the anchor is kept selected, if it was
73123 previously selected.</doc>
73124         <return-value transfer-ownership="none">
73125           <type name="none" c:type="void"/>
73126         </return-value>
73127         <parameters>
73128           <parameter name="type" transfer-ownership="none">
73129             <doc xml:whitespace="preserve">The selection mode</doc>
73130             <type name="SelectionMode" c:type="GtkSelectionMode"/>
73131           </parameter>
73132         </parameters>
73133       </method>
73134       <method name="get_mode" c:identifier="gtk_tree_selection_get_mode">
73135         <doc xml:whitespace="preserve">Gets the selection mode for @selection. See
73136 gtk_tree_selection_set_mode().</doc>
73137         <return-value transfer-ownership="full">
73138           <doc xml:whitespace="preserve">the current selection mode</doc>
73139           <type name="SelectionMode" c:type="GtkSelectionMode"/>
73140         </return-value>
73141       </method>
73142       <method name="set_select_function"
73143               c:identifier="gtk_tree_selection_set_select_function">
73144         <doc xml:whitespace="preserve">Sets the selection function.  If set, this function is called before any node
73145 is selected or unselected, giving some control over which nodes are selected.
73146 The select function should return %TRUE if the state of the node may be toggled,
73147 and %FALSE if the state of the node should be left unchanged.</doc>
73148         <return-value transfer-ownership="none">
73149           <type name="none" c:type="void"/>
73150         </return-value>
73151         <parameters>
73152           <parameter name="func"
73153                      transfer-ownership="none"
73154                      scope="notified"
73155                      closure="2"
73156                      destroy="3">
73157             <doc xml:whitespace="preserve">The selection function.</doc>
73158             <type name="TreeSelectionFunc" c:type="GtkTreeSelectionFunc"/>
73159           </parameter>
73160           <parameter name="data" transfer-ownership="none">
73161             <doc xml:whitespace="preserve">The selection function's data.</doc>
73162             <type name="any" c:type="gpointer"/>
73163           </parameter>
73164           <parameter name="destroy" transfer-ownership="none" scope="call">
73165             <doc xml:whitespace="preserve">The destroy function for user data.  May be NULL.</doc>
73166             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
73167           </parameter>
73168         </parameters>
73169       </method>
73170       <method name="get_user_data"
73171               c:identifier="gtk_tree_selection_get_user_data">
73172         <doc xml:whitespace="preserve">Returns the user data for the selection function.</doc>
73173         <return-value transfer-ownership="none">
73174           <doc xml:whitespace="preserve">The user data.</doc>
73175           <type name="any" c:type="gpointer"/>
73176         </return-value>
73177       </method>
73178       <method name="get_tree_view"
73179               c:identifier="gtk_tree_selection_get_tree_view">
73180         <doc xml:whitespace="preserve">Returns the tree view associated with @selection.</doc>
73181         <return-value transfer-ownership="full">
73182           <doc xml:whitespace="preserve">A #GtkTreeView</doc>
73183           <type name="TreeView" c:type="GtkTreeView*"/>
73184         </return-value>
73185       </method>
73186       <method name="get_select_function"
73187               c:identifier="gtk_tree_selection_get_select_function"
73188               version="2.14">
73189         <doc xml:whitespace="preserve">Returns the current selection function.</doc>
73190         <return-value transfer-ownership="full">
73191           <doc xml:whitespace="preserve">The function.</doc>
73192           <type name="TreeSelectionFunc" c:type="GtkTreeSelectionFunc"/>
73193         </return-value>
73194       </method>
73195       <method name="get_selected"
73196               c:identifier="gtk_tree_selection_get_selected">
73197         <doc xml:whitespace="preserve">Sets @iter to the currently selected node if @selection is set to
73198 #GTK_SELECTION_SINGLE or #GTK_SELECTION_BROWSE.  @iter may be NULL if you
73199 just want to test if @selection has any selected nodes.  @model is filled
73200 with the current model as a convenience.  This function will not work if you
73201 use @selection is #GTK_SELECTION_MULTIPLE.</doc>
73202         <return-value transfer-ownership="none">
73203           <doc xml:whitespace="preserve">TRUE, if there is a selected node.</doc>
73204           <type name="boolean" c:type="gboolean"/>
73205         </return-value>
73206         <parameters>
73207           <parameter name="model"
73208                      direction="out"
73209                      caller-allocates="0"
73210                      transfer-ownership="full"
73211                      allow-none="1">
73212             <doc xml:whitespace="preserve">A pointer to set to the #GtkTreeModel, or NULL.</doc>
73213             <type name="TreeModel" c:type="GtkTreeModel**"/>
73214           </parameter>
73215           <parameter name="iter" transfer-ownership="none" allow-none="1">
73216             <doc xml:whitespace="preserve">The #GtkTreeIter, or NULL.</doc>
73217             <type name="TreeIter" c:type="GtkTreeIter*"/>
73218           </parameter>
73219         </parameters>
73220       </method>
73221       <method name="get_selected_rows"
73222               c:identifier="gtk_tree_selection_get_selected_rows"
73223               version="2.2">
73224         <doc xml:whitespace="preserve">Creates a list of path of all selected rows. Additionally, if you are
73225 planning on modifying the model after calling this function, you may
73226 want to convert the returned list into a list of #GtkTreeRowReference&lt;!-- --&gt;s.
73227 To do this, you can use gtk_tree_row_reference_new().
73228 To free the return value, use:
73229 |[
73230 g_list_foreach (list, (GFunc) gtk_tree_path_free, NULL);
73231 g_list_free (list);
73232 ]|</doc>
73233         <return-value transfer-ownership="full">
73234           <doc xml:whitespace="preserve">A #GList containing a #GtkTreePath for each selected row.</doc>
73235           <type name="GLib.List" c:type="GList*">
73236             <type name="TreePath"/>
73237           </type>
73238         </return-value>
73239         <parameters>
73240           <parameter name="model" transfer-ownership="none" allow-none="1">
73241             <doc xml:whitespace="preserve">A pointer to set to the #GtkTreeModel, or NULL.</doc>
73242             <type name="TreeModel" c:type="GtkTreeModel**"/>
73243           </parameter>
73244         </parameters>
73245       </method>
73246       <method name="count_selected_rows"
73247               c:identifier="gtk_tree_selection_count_selected_rows"
73248               version="2.2">
73249         <doc xml:whitespace="preserve">Returns the number of rows that have been selected in @tree.</doc>
73250         <return-value transfer-ownership="none">
73251           <doc xml:whitespace="preserve">The number of rows selected.</doc>
73252           <type name="int" c:type="gint"/>
73253         </return-value>
73254       </method>
73255       <method name="selected_foreach"
73256               c:identifier="gtk_tree_selection_selected_foreach">
73257         <doc xml:whitespace="preserve">Calls a function for each selected node. Note that you cannot modify
73258 the tree or selection from within this function. As a result,
73259 gtk_tree_selection_get_selected_rows() might be more useful.</doc>
73260         <return-value transfer-ownership="none">
73261           <type name="none" c:type="void"/>
73262         </return-value>
73263         <parameters>
73264           <parameter name="func"
73265                      transfer-ownership="none"
73266                      scope="call"
73267                      closure="2">
73268             <doc xml:whitespace="preserve">The function to call for each selected node.</doc>
73269             <type name="TreeSelectionForeachFunc"
73270                   c:type="GtkTreeSelectionForeachFunc"/>
73271           </parameter>
73272           <parameter name="data" transfer-ownership="none">
73273             <doc xml:whitespace="preserve">user data to pass to the function.</doc>
73274             <type name="any" c:type="gpointer"/>
73275           </parameter>
73276         </parameters>
73277       </method>
73278       <method name="select_path" c:identifier="gtk_tree_selection_select_path">
73279         <doc xml:whitespace="preserve">Select the row at @path.</doc>
73280         <return-value transfer-ownership="none">
73281           <type name="none" c:type="void"/>
73282         </return-value>
73283         <parameters>
73284           <parameter name="path" transfer-ownership="none">
73285             <doc xml:whitespace="preserve">The #GtkTreePath to be selected.</doc>
73286             <type name="TreePath" c:type="GtkTreePath*"/>
73287           </parameter>
73288         </parameters>
73289       </method>
73290       <method name="unselect_path"
73291               c:identifier="gtk_tree_selection_unselect_path">
73292         <doc xml:whitespace="preserve">Unselects the row at @path.</doc>
73293         <return-value transfer-ownership="none">
73294           <type name="none" c:type="void"/>
73295         </return-value>
73296         <parameters>
73297           <parameter name="path" transfer-ownership="none">
73298             <doc xml:whitespace="preserve">The #GtkTreePath to be unselected.</doc>
73299             <type name="TreePath" c:type="GtkTreePath*"/>
73300           </parameter>
73301         </parameters>
73302       </method>
73303       <method name="select_iter" c:identifier="gtk_tree_selection_select_iter">
73304         <doc xml:whitespace="preserve">Selects the specified iterator.</doc>
73305         <return-value transfer-ownership="none">
73306           <type name="none" c:type="void"/>
73307         </return-value>
73308         <parameters>
73309           <parameter name="iter" transfer-ownership="none">
73310             <doc xml:whitespace="preserve">The #GtkTreeIter to be selected.</doc>
73311             <type name="TreeIter" c:type="GtkTreeIter*"/>
73312           </parameter>
73313         </parameters>
73314       </method>
73315       <method name="unselect_iter"
73316               c:identifier="gtk_tree_selection_unselect_iter">
73317         <doc xml:whitespace="preserve">Unselects the specified iterator.</doc>
73318         <return-value transfer-ownership="none">
73319           <type name="none" c:type="void"/>
73320         </return-value>
73321         <parameters>
73322           <parameter name="iter" transfer-ownership="none">
73323             <doc xml:whitespace="preserve">The #GtkTreeIter to be unselected.</doc>
73324             <type name="TreeIter" c:type="GtkTreeIter*"/>
73325           </parameter>
73326         </parameters>
73327       </method>
73328       <method name="path_is_selected"
73329               c:identifier="gtk_tree_selection_path_is_selected">
73330         <doc xml:whitespace="preserve">Returns %TRUE if the row pointed to by @path is currently selected.  If @path
73331 does not point to a valid location, %FALSE is returned</doc>
73332         <return-value transfer-ownership="none">
73333           <doc xml:whitespace="preserve">%TRUE if @path is selected.</doc>
73334           <type name="boolean" c:type="gboolean"/>
73335         </return-value>
73336         <parameters>
73337           <parameter name="path" transfer-ownership="none">
73338             <doc xml:whitespace="preserve">A #GtkTreePath to check selection on.</doc>
73339             <type name="TreePath" c:type="GtkTreePath*"/>
73340           </parameter>
73341         </parameters>
73342       </method>
73343       <method name="iter_is_selected"
73344               c:identifier="gtk_tree_selection_iter_is_selected">
73345         <doc xml:whitespace="preserve">Returns %TRUE if the row at @iter is currently selected.</doc>
73346         <return-value transfer-ownership="none">
73347           <doc xml:whitespace="preserve">%TRUE, if @iter is selected</doc>
73348           <type name="boolean" c:type="gboolean"/>
73349         </return-value>
73350         <parameters>
73351           <parameter name="iter" transfer-ownership="none">
73352             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
73353             <type name="TreeIter" c:type="GtkTreeIter*"/>
73354           </parameter>
73355         </parameters>
73356       </method>
73357       <method name="select_all" c:identifier="gtk_tree_selection_select_all">
73358         <doc xml:whitespace="preserve">Selects all the nodes. @selection must be set to #GTK_SELECTION_MULTIPLE
73359 mode.</doc>
73360         <return-value transfer-ownership="none">
73361           <type name="none" c:type="void"/>
73362         </return-value>
73363       </method>
73364       <method name="unselect_all"
73365               c:identifier="gtk_tree_selection_unselect_all">
73366         <doc xml:whitespace="preserve">Unselects all the nodes.</doc>
73367         <return-value transfer-ownership="none">
73368           <type name="none" c:type="void"/>
73369         </return-value>
73370       </method>
73371       <method name="select_range"
73372               c:identifier="gtk_tree_selection_select_range">
73373         <doc xml:whitespace="preserve">Selects a range of nodes, determined by @start_path and @end_path inclusive.</doc>
73374         <return-value transfer-ownership="none">
73375           <type name="none" c:type="void"/>
73376         </return-value>
73377         <parameters>
73378           <parameter name="start_path" transfer-ownership="none">
73379             <doc xml:whitespace="preserve">The initial node of the range.</doc>
73380             <type name="TreePath" c:type="GtkTreePath*"/>
73381           </parameter>
73382           <parameter name="end_path" transfer-ownership="none">
73383             <doc xml:whitespace="preserve">The final node of the range.</doc>
73384             <type name="TreePath" c:type="GtkTreePath*"/>
73385           </parameter>
73386         </parameters>
73387       </method>
73388       <method name="unselect_range"
73389               c:identifier="gtk_tree_selection_unselect_range"
73390               version="2.2">
73391         <doc xml:whitespace="preserve">Unselects a range of nodes, determined by @start_path and @end_path
73392 inclusive.</doc>
73393         <return-value transfer-ownership="none">
73394           <type name="none" c:type="void"/>
73395         </return-value>
73396         <parameters>
73397           <parameter name="start_path" transfer-ownership="none">
73398             <doc xml:whitespace="preserve">The initial node of the range.</doc>
73399             <type name="TreePath" c:type="GtkTreePath*"/>
73400           </parameter>
73401           <parameter name="end_path" transfer-ownership="none">
73402             <doc xml:whitespace="preserve">The initial node of the range.</doc>
73403             <type name="TreePath" c:type="GtkTreePath*"/>
73404           </parameter>
73405         </parameters>
73406       </method>
73407       <field name="parent">
73408         <type name="GObject.Object" c:type="GObject"/>
73409       </field>
73410       <field name="tree_view">
73411         <type name="TreeView" c:type="GtkTreeView*"/>
73412       </field>
73413       <field name="type">
73414         <type name="SelectionMode" c:type="GtkSelectionMode"/>
73415       </field>
73416       <field name="user_func">
73417         <type name="TreeSelectionFunc" c:type="GtkTreeSelectionFunc"/>
73418       </field>
73419       <field name="user_data">
73420         <type name="any" c:type="gpointer"/>
73421       </field>
73422       <field name="destroy">
73423         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
73424       </field>
73425       <glib:signal name="changed">
73426         <return-value transfer-ownership="full">
73427           <type name="none" c:type="void"/>
73428         </return-value>
73429       </glib:signal>
73430     </class>
73431     <record name="TreeSelectionClass"
73432             c:type="GtkTreeSelectionClass"
73433             glib:is-gtype-struct-for="TreeSelection">
73434       <field name="parent_class">
73435         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
73436       </field>
73437       <field name="changed">
73438         <callback name="changed" c:type="changed">
73439           <return-value transfer-ownership="none">
73440             <type name="none" c:type="void"/>
73441           </return-value>
73442           <parameters>
73443             <parameter name="selection" transfer-ownership="none">
73444               <type name="TreeSelection" c:type="GtkTreeSelection*"/>
73445             </parameter>
73446           </parameters>
73447         </callback>
73448       </field>
73449       <field name="gtk_reserved1">
73450         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
73451           <return-value transfer-ownership="none">
73452             <type name="none" c:type="void"/>
73453           </return-value>
73454         </callback>
73455       </field>
73456       <field name="gtk_reserved2">
73457         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
73458           <return-value transfer-ownership="none">
73459             <type name="none" c:type="void"/>
73460           </return-value>
73461         </callback>
73462       </field>
73463       <field name="gtk_reserved3">
73464         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
73465           <return-value transfer-ownership="none">
73466             <type name="none" c:type="void"/>
73467           </return-value>
73468         </callback>
73469       </field>
73470       <field name="gtk_reserved4">
73471         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
73472           <return-value transfer-ownership="none">
73473             <type name="none" c:type="void"/>
73474           </return-value>
73475         </callback>
73476       </field>
73477     </record>
73478     <callback name="TreeSelectionForeachFunc"
73479               c:type="GtkTreeSelectionForeachFunc">
73480       <return-value transfer-ownership="none">
73481         <type name="none" c:type="void"/>
73482       </return-value>
73483       <parameters>
73484         <parameter name="model" transfer-ownership="none">
73485           <type name="TreeModel" c:type="GtkTreeModel*"/>
73486         </parameter>
73487         <parameter name="path" transfer-ownership="none">
73488           <type name="TreePath" c:type="GtkTreePath*"/>
73489         </parameter>
73490         <parameter name="iter" transfer-ownership="none">
73491           <type name="TreeIter" c:type="GtkTreeIter*"/>
73492         </parameter>
73493         <parameter name="data" transfer-ownership="none">
73494           <type name="any" c:type="gpointer"/>
73495         </parameter>
73496       </parameters>
73497     </callback>
73498     <callback name="TreeSelectionFunc" c:type="GtkTreeSelectionFunc">
73499       <return-value transfer-ownership="none">
73500         <type name="boolean" c:type="gboolean"/>
73501       </return-value>
73502       <parameters>
73503         <parameter name="selection" transfer-ownership="none">
73504           <type name="TreeSelection" c:type="GtkTreeSelection*"/>
73505         </parameter>
73506         <parameter name="model" transfer-ownership="none">
73507           <type name="TreeModel" c:type="GtkTreeModel*"/>
73508         </parameter>
73509         <parameter name="path" transfer-ownership="none">
73510           <type name="TreePath" c:type="GtkTreePath*"/>
73511         </parameter>
73512         <parameter name="path_currently_selected" transfer-ownership="none">
73513           <type name="boolean" c:type="gboolean"/>
73514         </parameter>
73515         <parameter name="data" transfer-ownership="none">
73516           <type name="any" c:type="gpointer"/>
73517         </parameter>
73518       </parameters>
73519     </callback>
73520     <interface name="TreeSortable"
73521                c:type="GtkTreeSortable"
73522                glib:type-name="GtkTreeSortable"
73523                glib:get-type="gtk_tree_sortable_get_type"
73524                glib:type-struct="TreeSortableIface">
73525       <prerequisite name="TreeModel"/>
73526       <virtual-method name="get_sort_column_id" invoker="get_sort_column_id">
73527         <doc xml:whitespace="preserve">Fills in @sort_column_id and @order with the current sort column and the
73528 order. It returns %TRUE unless the @sort_column_id is 
73529 %GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID or 
73530 %GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID.
73531 column ids.</doc>
73532         <return-value transfer-ownership="none">
73533           <doc xml:whitespace="preserve">%TRUE if the sort column is not one of the special sort</doc>
73534           <type name="boolean" c:type="gboolean"/>
73535         </return-value>
73536         <parameters>
73537           <parameter name="sort_column_id"
73538                      direction="out"
73539                      caller-allocates="0"
73540                      transfer-ownership="full">
73541             <doc xml:whitespace="preserve">The sort column id to be filled in</doc>
73542             <type name="int" c:type="gint*"/>
73543           </parameter>
73544           <parameter name="order" transfer-ownership="none">
73545             <doc xml:whitespace="preserve">The #GtkSortType to be filled in</doc>
73546             <type name="SortType" c:type="GtkSortType*"/>
73547           </parameter>
73548         </parameters>
73549       </virtual-method>
73550       <virtual-method name="set_sort_column_id" invoker="set_sort_column_id">
73551         <doc xml:whitespace="preserve">Sets the current sort column to be @sort_column_id. The @sortable will
73552 resort itself to reflect this change, after emitting a
73553 #GtkTreeSortable::sort-column-changed signal. @sortable may either be 
73554 a regular column id, or one of the following special values:
73555 &lt;variablelist&gt;
73556 &lt;varlistentry&gt;
73557 &lt;term&gt;%GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID&lt;/term&gt;
73558 &lt;listitem&gt;the default sort function will be used, if it is set&lt;/listitem&gt;
73559 &lt;/varlistentry&gt;
73560 &lt;varlistentry&gt;
73561 &lt;term&gt;%GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID&lt;/term&gt;
73562 &lt;listitem&gt;no sorting will occur&lt;/listitem&gt;
73563 &lt;/varlistentry&gt;
73564 &lt;/variablelist&gt;</doc>
73565         <return-value transfer-ownership="none">
73566           <type name="none" c:type="void"/>
73567         </return-value>
73568         <parameters>
73569           <parameter name="sort_column_id" transfer-ownership="none">
73570             <doc xml:whitespace="preserve">the sort column id to set</doc>
73571             <type name="int" c:type="gint"/>
73572           </parameter>
73573           <parameter name="order" transfer-ownership="none">
73574             <doc xml:whitespace="preserve">The sort order of the column</doc>
73575             <type name="SortType" c:type="GtkSortType"/>
73576           </parameter>
73577         </parameters>
73578       </virtual-method>
73579       <virtual-method name="set_sort_func">
73580         <return-value transfer-ownership="none">
73581           <type name="none" c:type="void"/>
73582         </return-value>
73583         <parameters>
73584           <parameter name="sort_column_id" transfer-ownership="none">
73585             <type name="int" c:type="gint"/>
73586           </parameter>
73587           <parameter name="func" transfer-ownership="none">
73588             <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
73589           </parameter>
73590           <parameter name="data" transfer-ownership="none">
73591             <type name="any" c:type="gpointer"/>
73592           </parameter>
73593           <parameter name="destroy" transfer-ownership="none">
73594             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
73595           </parameter>
73596         </parameters>
73597       </virtual-method>
73598       <virtual-method name="set_default_sort_func">
73599         <return-value transfer-ownership="none">
73600           <type name="none" c:type="void"/>
73601         </return-value>
73602         <parameters>
73603           <parameter name="func" transfer-ownership="none">
73604             <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
73605           </parameter>
73606           <parameter name="data" transfer-ownership="none">
73607             <type name="any" c:type="gpointer"/>
73608           </parameter>
73609           <parameter name="destroy" transfer-ownership="none">
73610             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
73611           </parameter>
73612         </parameters>
73613       </virtual-method>
73614       <virtual-method name="has_default_sort_func"
73615                       invoker="has_default_sort_func">
73616         <doc xml:whitespace="preserve">Returns %TRUE if the model has a default sort function. This is used
73617 primarily by GtkTreeViewColumns in order to determine if a model can 
73618 go back to the default state, or not.</doc>
73619         <return-value transfer-ownership="none">
73620           <doc xml:whitespace="preserve">%TRUE, if the model has a default sort function</doc>
73621           <type name="boolean" c:type="gboolean"/>
73622         </return-value>
73623       </virtual-method>
73624       <method name="sort_column_changed"
73625               c:identifier="gtk_tree_sortable_sort_column_changed">
73626         <doc xml:whitespace="preserve">Emits a #GtkTreeSortable::sort-column-changed signal on @sortable.</doc>
73627         <return-value transfer-ownership="none">
73628           <type name="none" c:type="void"/>
73629         </return-value>
73630       </method>
73631       <method name="get_sort_column_id"
73632               c:identifier="gtk_tree_sortable_get_sort_column_id">
73633         <doc xml:whitespace="preserve">Fills in @sort_column_id and @order with the current sort column and the
73634 order. It returns %TRUE unless the @sort_column_id is 
73635 %GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID or 
73636 %GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID.
73637 column ids.</doc>
73638         <return-value transfer-ownership="none">
73639           <doc xml:whitespace="preserve">%TRUE if the sort column is not one of the special sort</doc>
73640           <type name="boolean" c:type="gboolean"/>
73641         </return-value>
73642         <parameters>
73643           <parameter name="sort_column_id"
73644                      direction="out"
73645                      caller-allocates="0"
73646                      transfer-ownership="full">
73647             <doc xml:whitespace="preserve">The sort column id to be filled in</doc>
73648             <type name="int" c:type="gint*"/>
73649           </parameter>
73650           <parameter name="order" transfer-ownership="none">
73651             <doc xml:whitespace="preserve">The #GtkSortType to be filled in</doc>
73652             <type name="SortType" c:type="GtkSortType*"/>
73653           </parameter>
73654         </parameters>
73655       </method>
73656       <method name="set_sort_column_id"
73657               c:identifier="gtk_tree_sortable_set_sort_column_id">
73658         <doc xml:whitespace="preserve">Sets the current sort column to be @sort_column_id. The @sortable will
73659 resort itself to reflect this change, after emitting a
73660 #GtkTreeSortable::sort-column-changed signal. @sortable may either be 
73661 a regular column id, or one of the following special values:
73662 &lt;variablelist&gt;
73663 &lt;varlistentry&gt;
73664 &lt;term&gt;%GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID&lt;/term&gt;
73665 &lt;listitem&gt;the default sort function will be used, if it is set&lt;/listitem&gt;
73666 &lt;/varlistentry&gt;
73667 &lt;varlistentry&gt;
73668 &lt;term&gt;%GTK_TREE_SORTABLE_UNSORTED_SORT_COLUMN_ID&lt;/term&gt;
73669 &lt;listitem&gt;no sorting will occur&lt;/listitem&gt;
73670 &lt;/varlistentry&gt;
73671 &lt;/variablelist&gt;</doc>
73672         <return-value transfer-ownership="none">
73673           <type name="none" c:type="void"/>
73674         </return-value>
73675         <parameters>
73676           <parameter name="sort_column_id" transfer-ownership="none">
73677             <doc xml:whitespace="preserve">the sort column id to set</doc>
73678             <type name="int" c:type="gint"/>
73679           </parameter>
73680           <parameter name="order" transfer-ownership="none">
73681             <doc xml:whitespace="preserve">The sort order of the column</doc>
73682             <type name="SortType" c:type="GtkSortType"/>
73683           </parameter>
73684         </parameters>
73685       </method>
73686       <method name="set_sort_func"
73687               c:identifier="gtk_tree_sortable_set_sort_func">
73688         <doc xml:whitespace="preserve">Sets the comparison function used when sorting to be @sort_func. If the
73689 current sort column id of @sortable is the same as @sort_column_id, then 
73690 the model will sort using this function.</doc>
73691         <return-value transfer-ownership="none">
73692           <type name="none" c:type="void"/>
73693         </return-value>
73694         <parameters>
73695           <parameter name="sort_column_id" transfer-ownership="none">
73696             <doc xml:whitespace="preserve">the sort column id to set the function for</doc>
73697             <type name="int" c:type="gint"/>
73698           </parameter>
73699           <parameter name="sort_func"
73700                      transfer-ownership="none"
73701                      scope="notified"
73702                      closure="3"
73703                      destroy="4">
73704             <doc xml:whitespace="preserve">The comparison function</doc>
73705             <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
73706           </parameter>
73707           <parameter name="user_data" transfer-ownership="none" allow-none="1">
73708             <doc xml:whitespace="preserve">User data to pass to @sort_func, or %NULL</doc>
73709             <type name="any" c:type="gpointer"/>
73710           </parameter>
73711           <parameter name="destroy"
73712                      transfer-ownership="none"
73713                      allow-none="1"
73714                      scope="call">
73715             <doc xml:whitespace="preserve">Destroy notifier of @user_data, or %NULL</doc>
73716             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
73717           </parameter>
73718         </parameters>
73719       </method>
73720       <method name="set_default_sort_func"
73721               c:identifier="gtk_tree_sortable_set_default_sort_func">
73722         <doc xml:whitespace="preserve">Sets the default comparison function used when sorting to be @sort_func.  
73723 If the current sort column id of @sortable is
73724 %GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID, then the model will sort using 
73725 this function.
73726 If @sort_func is %NULL, then there will be no default comparison function.
73727 This means that once the model  has been sorted, it can't go back to the
73728 default state. In this case, when the current sort column id of @sortable 
73729 is %GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID, the model will be unsorted.</doc>
73730         <return-value transfer-ownership="none">
73731           <type name="none" c:type="void"/>
73732         </return-value>
73733         <parameters>
73734           <parameter name="sort_func"
73735                      transfer-ownership="none"
73736                      scope="notified"
73737                      closure="2"
73738                      destroy="3">
73739             <doc xml:whitespace="preserve">The comparison function</doc>
73740             <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
73741           </parameter>
73742           <parameter name="user_data" transfer-ownership="none" allow-none="1">
73743             <doc xml:whitespace="preserve">User data to pass to @sort_func, or %NULL</doc>
73744             <type name="any" c:type="gpointer"/>
73745           </parameter>
73746           <parameter name="destroy"
73747                      transfer-ownership="none"
73748                      allow-none="1"
73749                      scope="call">
73750             <doc xml:whitespace="preserve">Destroy notifier of @user_data, or %NULL</doc>
73751             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
73752           </parameter>
73753         </parameters>
73754       </method>
73755       <method name="has_default_sort_func"
73756               c:identifier="gtk_tree_sortable_has_default_sort_func">
73757         <doc xml:whitespace="preserve">Returns %TRUE if the model has a default sort function. This is used
73758 primarily by GtkTreeViewColumns in order to determine if a model can 
73759 go back to the default state, or not.</doc>
73760         <return-value transfer-ownership="none">
73761           <doc xml:whitespace="preserve">%TRUE, if the model has a default sort function</doc>
73762           <type name="boolean" c:type="gboolean"/>
73763         </return-value>
73764       </method>
73765       <glib:signal name="sort-column-changed">
73766         <doc xml:whitespace="preserve">The ::sort-column-changed signal is emitted when the sort column
73767 or sort order of @sortable is changed. The signal is emitted before
73768 the contents of @sortable are resorted.</doc>
73769         <return-value transfer-ownership="full">
73770           <type name="none" c:type="void"/>
73771         </return-value>
73772       </glib:signal>
73773     </interface>
73774     <record name="TreeSortableIface"
73775             c:type="GtkTreeSortableIface"
73776             glib:is-gtype-struct-for="TreeSortable">
73777       <field name="g_iface">
73778         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
73779       </field>
73780       <field name="sort_column_changed">
73781         <callback name="sort_column_changed" c:type="sort_column_changed">
73782           <return-value transfer-ownership="none">
73783             <type name="none" c:type="void"/>
73784           </return-value>
73785           <parameters>
73786             <parameter name="sortable" transfer-ownership="none">
73787               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
73788             </parameter>
73789           </parameters>
73790         </callback>
73791       </field>
73792       <field name="get_sort_column_id">
73793         <callback name="get_sort_column_id" c:type="get_sort_column_id">
73794           <return-value transfer-ownership="none">
73795             <doc xml:whitespace="preserve">%TRUE if the sort column is not one of the special sort</doc>
73796             <type name="boolean" c:type="gboolean"/>
73797           </return-value>
73798           <parameters>
73799             <parameter name="sortable" transfer-ownership="none">
73800               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
73801             </parameter>
73802             <parameter name="sort_column_id"
73803                        direction="out"
73804                        caller-allocates="0"
73805                        transfer-ownership="full">
73806               <doc xml:whitespace="preserve">The sort column id to be filled in</doc>
73807               <type name="int" c:type="gint*"/>
73808             </parameter>
73809             <parameter name="order" transfer-ownership="none">
73810               <doc xml:whitespace="preserve">The #GtkSortType to be filled in</doc>
73811               <type name="SortType" c:type="GtkSortType*"/>
73812             </parameter>
73813           </parameters>
73814         </callback>
73815       </field>
73816       <field name="set_sort_column_id">
73817         <callback name="set_sort_column_id" c:type="set_sort_column_id">
73818           <return-value transfer-ownership="none">
73819             <type name="none" c:type="void"/>
73820           </return-value>
73821           <parameters>
73822             <parameter name="sortable" transfer-ownership="none">
73823               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
73824             </parameter>
73825             <parameter name="sort_column_id" transfer-ownership="none">
73826               <doc xml:whitespace="preserve">the sort column id to set</doc>
73827               <type name="int" c:type="gint"/>
73828             </parameter>
73829             <parameter name="order" transfer-ownership="none">
73830               <doc xml:whitespace="preserve">The sort order of the column</doc>
73831               <type name="SortType" c:type="GtkSortType"/>
73832             </parameter>
73833           </parameters>
73834         </callback>
73835       </field>
73836       <field name="set_sort_func">
73837         <callback name="set_sort_func" c:type="set_sort_func">
73838           <return-value transfer-ownership="none">
73839             <type name="none" c:type="void"/>
73840           </return-value>
73841           <parameters>
73842             <parameter name="sortable" transfer-ownership="none">
73843               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
73844             </parameter>
73845             <parameter name="sort_column_id" transfer-ownership="none">
73846               <type name="int" c:type="gint"/>
73847             </parameter>
73848             <parameter name="func" transfer-ownership="none">
73849               <type name="TreeIterCompareFunc"
73850                     c:type="GtkTreeIterCompareFunc"/>
73851             </parameter>
73852             <parameter name="data" transfer-ownership="none">
73853               <type name="any" c:type="gpointer"/>
73854             </parameter>
73855             <parameter name="destroy" transfer-ownership="none">
73856               <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
73857             </parameter>
73858           </parameters>
73859         </callback>
73860       </field>
73861       <field name="set_default_sort_func">
73862         <callback name="set_default_sort_func" c:type="set_default_sort_func">
73863           <return-value transfer-ownership="none">
73864             <type name="none" c:type="void"/>
73865           </return-value>
73866           <parameters>
73867             <parameter name="sortable" transfer-ownership="none">
73868               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
73869             </parameter>
73870             <parameter name="func" transfer-ownership="none">
73871               <type name="TreeIterCompareFunc"
73872                     c:type="GtkTreeIterCompareFunc"/>
73873             </parameter>
73874             <parameter name="data" transfer-ownership="none">
73875               <type name="any" c:type="gpointer"/>
73876             </parameter>
73877             <parameter name="destroy" transfer-ownership="none">
73878               <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
73879             </parameter>
73880           </parameters>
73881         </callback>
73882       </field>
73883       <field name="has_default_sort_func">
73884         <callback name="has_default_sort_func" c:type="has_default_sort_func">
73885           <return-value transfer-ownership="none">
73886             <doc xml:whitespace="preserve">%TRUE, if the model has a default sort function</doc>
73887             <type name="boolean" c:type="gboolean"/>
73888           </return-value>
73889           <parameters>
73890             <parameter name="sortable" transfer-ownership="none">
73891               <type name="TreeSortable" c:type="GtkTreeSortable*"/>
73892             </parameter>
73893           </parameters>
73894         </callback>
73895       </field>
73896     </record>
73897     <class name="TreeStore"
73898            c:type="GtkTreeStore"
73899            parent="GObject.Object"
73900            glib:type-name="GtkTreeStore"
73901            glib:get-type="gtk_tree_store_get_type"
73902            glib:type-struct="TreeStoreClass">
73903       <implements name="Buildable"/>
73904       <implements name="TreeDragDest"/>
73905       <implements name="TreeDragSource"/>
73906       <implements name="TreeModel"/>
73907       <implements name="TreeSortable"/>
73908       <constructor name="new"
73909                    c:identifier="gtk_tree_store_new"
73910                    introspectable="0">
73911         <doc xml:whitespace="preserve">Creates a new tree store as with @n_columns columns each of the types passed
73912 in.  Note that only types derived from standard GObject fundamental types 
73913 are supported. 
73914 As an example, &lt;literal&gt;gtk_tree_store_new (3, G_TYPE_INT, G_TYPE_STRING,
73915 GDK_TYPE_PIXBUF);&lt;/literal&gt; will create a new #GtkTreeStore with three columns, of type
73916 &lt;type&gt;int&lt;/type&gt;, &lt;type&gt;string&lt;/type&gt; and #GdkPixbuf respectively.</doc>
73917         <return-value transfer-ownership="full">
73918           <doc xml:whitespace="preserve">a new #GtkTreeStore</doc>
73919           <type name="TreeStore" c:type="GtkTreeStore*"/>
73920         </return-value>
73921         <parameters>
73922           <parameter name="n_columns" transfer-ownership="none">
73923             <doc xml:whitespace="preserve">number of columns in the tree store</doc>
73924             <type name="int" c:type="gint"/>
73925           </parameter>
73926           <parameter transfer-ownership="none">
73927             <varargs>
73928             </varargs>
73929           </parameter>
73930         </parameters>
73931       </constructor>
73932       <constructor name="newv" c:identifier="gtk_tree_store_newv">
73933         <doc xml:whitespace="preserve">Non vararg creation function.  Used primarily by language bindings.</doc>
73934         <return-value transfer-ownership="full">
73935           <doc xml:whitespace="preserve">a new #GtkTreeStore</doc>
73936           <type name="TreeStore" c:type="GtkTreeStore*"/>
73937         </return-value>
73938         <parameters>
73939           <parameter name="n_columns" transfer-ownership="none">
73940             <doc xml:whitespace="preserve">number of columns in the tree store</doc>
73941             <type name="int" c:type="gint"/>
73942           </parameter>
73943           <parameter name="types" transfer-ownership="none">
73944             <doc xml:whitespace="preserve">an array of #GType types for the columns, from first to last</doc>
73945             <array length="0" c:type="GType*">
73946               <type name="GType"/>
73947             </array>
73948           </parameter>
73949         </parameters>
73950       </constructor>
73951       <method name="set_column_types"
73952               c:identifier="gtk_tree_store_set_column_types">
73953         <doc xml:whitespace="preserve">This function is meant primarily for #GObjects that inherit from 
73954 #GtkTreeStore, and should only be used when constructing a new 
73955 #GtkTreeStore.  It will not function after a row has been added, 
73956 or a method on the #GtkTreeModel interface is called.</doc>
73957         <return-value transfer-ownership="none">
73958           <type name="none" c:type="void"/>
73959         </return-value>
73960         <parameters>
73961           <parameter name="n_columns" transfer-ownership="none">
73962             <doc xml:whitespace="preserve">Number of columns for the tree store</doc>
73963             <type name="int" c:type="gint"/>
73964           </parameter>
73965           <parameter name="types" transfer-ownership="none">
73966             <doc xml:whitespace="preserve">An array of #GType types, one for each column</doc>
73967             <array length="1" c:type="GType*">
73968               <type name="GType"/>
73969             </array>
73970           </parameter>
73971         </parameters>
73972       </method>
73973       <method name="set_value" c:identifier="gtk_tree_store_set_value">
73974         <doc xml:whitespace="preserve">Sets the data in the cell specified by @iter and @column.
73975 The type of @value must be convertible to the type of the
73976 column.</doc>
73977         <return-value transfer-ownership="none">
73978           <type name="none" c:type="void"/>
73979         </return-value>
73980         <parameters>
73981           <parameter name="iter" transfer-ownership="none">
73982             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
73983             <type name="TreeIter" c:type="GtkTreeIter*"/>
73984           </parameter>
73985           <parameter name="column" transfer-ownership="none">
73986             <doc xml:whitespace="preserve">column number to modify</doc>
73987             <type name="int" c:type="gint"/>
73988           </parameter>
73989           <parameter name="value" transfer-ownership="none">
73990             <doc xml:whitespace="preserve">new value for the cell</doc>
73991             <type name="GObject.Value" c:type="GValue*"/>
73992           </parameter>
73993         </parameters>
73994       </method>
73995       <method name="set" c:identifier="gtk_tree_store_set" introspectable="0">
73996         <doc xml:whitespace="preserve">Sets the value of one or more cells in the row referenced by @iter.
73997 The variable argument list should contain integer column numbers,
73998 each column number followed by the value to be set. 
73999 The list is terminated by a -1. For example, to set column 0 with type
74000 %G_TYPE_STRING to "Foo", you would write 
74001 &lt;literal&gt;gtk_tree_store_set (store, iter, 0, "Foo", -1)&lt;/literal&gt;.
74002 The value will be copied or referenced by the store if appropriate.</doc>
74003         <return-value transfer-ownership="none">
74004           <type name="none" c:type="void"/>
74005         </return-value>
74006         <parameters>
74007           <parameter name="iter" transfer-ownership="none">
74008             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
74009             <type name="TreeIter" c:type="GtkTreeIter*"/>
74010           </parameter>
74011           <parameter transfer-ownership="none">
74012             <varargs>
74013             </varargs>
74014           </parameter>
74015         </parameters>
74016       </method>
74017       <method name="set_valuesv"
74018               c:identifier="gtk_tree_store_set_valuesv"
74019               version="2.12">
74020         <doc xml:whitespace="preserve">A variant of gtk_tree_store_set_valist() which takes
74021 the columns and values as two arrays, instead of varargs.  This
74022 function is mainly intended for language bindings or in case
74023 the number of columns to change is not known until run-time.</doc>
74024         <return-value transfer-ownership="none">
74025           <type name="none" c:type="void"/>
74026         </return-value>
74027         <parameters>
74028           <parameter name="iter" transfer-ownership="none">
74029             <doc xml:whitespace="preserve">A valid #GtkTreeIter for the row being modified</doc>
74030             <type name="TreeIter" c:type="GtkTreeIter*"/>
74031           </parameter>
74032           <parameter name="columns" transfer-ownership="none">
74033             <doc xml:whitespace="preserve">an array of column numbers</doc>
74034             <array length="4" c:type="gint*">
74035               <type name="int"/>
74036             </array>
74037           </parameter>
74038           <parameter name="values" transfer-ownership="none">
74039             <doc xml:whitespace="preserve">an array of GValues</doc>
74040             <array length="4" c:type="GValue*">
74041               <type name="GObject.Value"/>
74042             </array>
74043           </parameter>
74044           <parameter name="n_values" transfer-ownership="none">
74045             <doc xml:whitespace="preserve">the length of the @columns and @values arrays</doc>
74046             <type name="int" c:type="gint"/>
74047           </parameter>
74048         </parameters>
74049       </method>
74050       <method name="remove" c:identifier="gtk_tree_store_remove">
74051         <doc xml:whitespace="preserve">Removes @iter from @tree_store.  After being removed, @iter is set to the
74052 next valid row at that level, or invalidated if it previously pointed to the
74053 last one.</doc>
74054         <return-value transfer-ownership="none">
74055           <doc xml:whitespace="preserve">%TRUE if @iter is still valid, %FALSE if not.</doc>
74056           <type name="boolean" c:type="gboolean"/>
74057         </return-value>
74058         <parameters>
74059           <parameter name="iter" transfer-ownership="none">
74060             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
74061             <type name="TreeIter" c:type="GtkTreeIter*"/>
74062           </parameter>
74063         </parameters>
74064       </method>
74065       <method name="insert" c:identifier="gtk_tree_store_insert">
74066         <doc xml:whitespace="preserve">Creates a new row at @position.  If parent is non-%NULL, then the row will be
74067 made a child of @parent.  Otherwise, the row will be created at the toplevel.
74068 If @position is larger than the number of rows at that level, then the new
74069 row will be inserted to the end of the list.  @iter will be changed to point
74070 to this new row.  The row will be empty after this function is called.  To
74071 fill in values, you need to call gtk_tree_store_set() or
74072 gtk_tree_store_set_value().</doc>
74073         <return-value transfer-ownership="none">
74074           <type name="none" c:type="void"/>
74075         </return-value>
74076         <parameters>
74077           <parameter name="iter" transfer-ownership="none">
74078             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
74079             <type name="TreeIter" c:type="GtkTreeIter*"/>
74080           </parameter>
74081           <parameter name="parent" transfer-ownership="none" allow-none="1">
74082             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
74083             <type name="TreeIter" c:type="GtkTreeIter*"/>
74084           </parameter>
74085           <parameter name="position" transfer-ownership="none">
74086             <doc xml:whitespace="preserve">position to insert the new row</doc>
74087             <type name="int" c:type="gint"/>
74088           </parameter>
74089         </parameters>
74090       </method>
74091       <method name="insert_before" c:identifier="gtk_tree_store_insert_before">
74092         <doc xml:whitespace="preserve">Inserts a new row before @sibling.  If @sibling is %NULL, then the row will
74093 be appended to @parent 's children.  If @parent and @sibling are %NULL, then
74094 the row will be appended to the toplevel.  If both @sibling and @parent are
74095 set, then @parent must be the parent of @sibling.  When @sibling is set,
74096 this function is called.  To fill in values, you need to call
74097 gtk_tree_store_set() or gtk_tree_store_set_value().</doc>
74098         <return-value transfer-ownership="none">
74099           <type name="none" c:type="void"/>
74100         </return-value>
74101         <parameters>
74102           <parameter name="iter" transfer-ownership="none">
74103             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
74104             <type name="TreeIter" c:type="GtkTreeIter*"/>
74105           </parameter>
74106           <parameter name="parent" transfer-ownership="none" allow-none="1">
74107             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
74108             <type name="TreeIter" c:type="GtkTreeIter*"/>
74109           </parameter>
74110           <parameter name="sibling" transfer-ownership="none" allow-none="1">
74111             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
74112             <type name="TreeIter" c:type="GtkTreeIter*"/>
74113           </parameter>
74114         </parameters>
74115       </method>
74116       <method name="insert_after" c:identifier="gtk_tree_store_insert_after">
74117         <doc xml:whitespace="preserve">Inserts a new row after @sibling.  If @sibling is %NULL, then the row will be
74118 prepended to @parent 's children.  If @parent and @sibling are %NULL, then
74119 the row will be prepended to the toplevel.  If both @sibling and @parent are
74120 set, then @parent must be the parent of @sibling.  When @sibling is set,
74121 this function is called.  To fill in values, you need to call
74122 gtk_tree_store_set() or gtk_tree_store_set_value().</doc>
74123         <return-value transfer-ownership="none">
74124           <type name="none" c:type="void"/>
74125         </return-value>
74126         <parameters>
74127           <parameter name="iter" transfer-ownership="none">
74128             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the new row</doc>
74129             <type name="TreeIter" c:type="GtkTreeIter*"/>
74130           </parameter>
74131           <parameter name="parent" transfer-ownership="none" allow-none="1">
74132             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
74133             <type name="TreeIter" c:type="GtkTreeIter*"/>
74134           </parameter>
74135           <parameter name="sibling" transfer-ownership="none" allow-none="1">
74136             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
74137             <type name="TreeIter" c:type="GtkTreeIter*"/>
74138           </parameter>
74139         </parameters>
74140       </method>
74141       <method name="insert_with_values"
74142               c:identifier="gtk_tree_store_insert_with_values"
74143               version="2.10"
74144               introspectable="0">
74145         <doc xml:whitespace="preserve">Creates a new row at @position.  @iter will be changed to point to this
74146 new row.  If @position is larger than the number of rows on the list, then
74147 the new row will be appended to the list.  The row will be filled with
74148 the values given to this function.
74149 Calling
74150 &lt;literal&gt;gtk_tree_store_insert_with_values (tree_store, iter, position, ...)&lt;/literal&gt;
74151 has the same effect as calling
74152 |[
74153 gtk_tree_store_insert (tree_store, iter, position);
74154 gtk_tree_store_set (tree_store, iter, ...);
74155 ]|
74156 with the different that the former will only emit a row_inserted signal,
74157 while the latter will emit row_inserted, row_changed and if the tree store
74158 is sorted, rows_reordered.  Since emitting the rows_reordered signal
74159 repeatedly can affect the performance of the program,
74160 gtk_tree_store_insert_with_values() should generally be preferred when
74161 inserting rows in a sorted tree store.</doc>
74162         <return-value transfer-ownership="none">
74163           <type name="none" c:type="void"/>
74164         </return-value>
74165         <parameters>
74166           <parameter name="iter" transfer-ownership="none" allow-none="1">
74167             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set the new row, or %NULL.</doc>
74168             <type name="TreeIter" c:type="GtkTreeIter*"/>
74169           </parameter>
74170           <parameter name="parent" transfer-ownership="none" allow-none="1">
74171             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
74172             <type name="TreeIter" c:type="GtkTreeIter*"/>
74173           </parameter>
74174           <parameter name="position" transfer-ownership="none">
74175             <doc xml:whitespace="preserve">position to insert the new row</doc>
74176             <type name="int" c:type="gint"/>
74177           </parameter>
74178           <parameter transfer-ownership="none">
74179             <varargs>
74180             </varargs>
74181           </parameter>
74182         </parameters>
74183       </method>
74184       <method name="insert_with_valuesv"
74185               c:identifier="gtk_tree_store_insert_with_valuesv"
74186               version="2.10">
74187         <doc xml:whitespace="preserve">A variant of gtk_tree_store_insert_with_values() which takes
74188 the columns and values as two arrays, instead of varargs.  This
74189 function is mainly intended for language bindings.</doc>
74190         <return-value transfer-ownership="none">
74191           <type name="none" c:type="void"/>
74192         </return-value>
74193         <parameters>
74194           <parameter name="iter" transfer-ownership="none" allow-none="1">
74195             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set the new row, or %NULL.</doc>
74196             <type name="TreeIter" c:type="GtkTreeIter*"/>
74197           </parameter>
74198           <parameter name="parent" transfer-ownership="none" allow-none="1">
74199             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
74200             <type name="TreeIter" c:type="GtkTreeIter*"/>
74201           </parameter>
74202           <parameter name="position" transfer-ownership="none">
74203             <doc xml:whitespace="preserve">position to insert the new row</doc>
74204             <type name="int" c:type="gint"/>
74205           </parameter>
74206           <parameter name="columns"
74207                      direction="out"
74208                      caller-allocates="0"
74209                      transfer-ownership="full">
74210             <doc xml:whitespace="preserve">an array of column numbers</doc>
74211             <type name="int" c:type="gint*"/>
74212           </parameter>
74213           <parameter name="values" transfer-ownership="none">
74214             <doc xml:whitespace="preserve">an array of GValues</doc>
74215             <type name="GObject.Value" c:type="GValue*"/>
74216           </parameter>
74217           <parameter name="n_values" transfer-ownership="none">
74218             <doc xml:whitespace="preserve">the length of the @columns and @values arrays</doc>
74219             <type name="int" c:type="gint"/>
74220           </parameter>
74221         </parameters>
74222       </method>
74223       <method name="prepend" c:identifier="gtk_tree_store_prepend">
74224         <doc xml:whitespace="preserve">Prepends a new row to @tree_store.  If @parent is non-%NULL, then it will prepend
74225 the new row before the first child of @parent, otherwise it will prepend a row
74226 to the top level.  @iter will be changed to point to this new row.  The row
74227 will be empty after this function is called.  To fill in values, you need to
74228 call gtk_tree_store_set() or gtk_tree_store_set_value().</doc>
74229         <return-value transfer-ownership="none">
74230           <type name="none" c:type="void"/>
74231         </return-value>
74232         <parameters>
74233           <parameter name="iter" transfer-ownership="none">
74234             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the prepended row</doc>
74235             <type name="TreeIter" c:type="GtkTreeIter*"/>
74236           </parameter>
74237           <parameter name="parent" transfer-ownership="none" allow-none="1">
74238             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
74239             <type name="TreeIter" c:type="GtkTreeIter*"/>
74240           </parameter>
74241         </parameters>
74242       </method>
74243       <method name="append" c:identifier="gtk_tree_store_append">
74244         <doc xml:whitespace="preserve">Appends a new row to @tree_store.  If @parent is non-%NULL, then it will append the
74245 new row after the last child of @parent, otherwise it will append a row to
74246 the top level.  @iter will be changed to point to this new row.  The row will
74247 be empty after this function is called.  To fill in values, you need to call
74248 gtk_tree_store_set() or gtk_tree_store_set_value().</doc>
74249         <return-value transfer-ownership="none">
74250           <type name="none" c:type="void"/>
74251         </return-value>
74252         <parameters>
74253           <parameter name="iter" transfer-ownership="none">
74254             <doc xml:whitespace="preserve">An unset #GtkTreeIter to set to the appended row</doc>
74255             <type name="TreeIter" c:type="GtkTreeIter*"/>
74256           </parameter>
74257           <parameter name="parent" transfer-ownership="none" allow-none="1">
74258             <doc xml:whitespace="preserve">A valid #GtkTreeIter, or %NULL</doc>
74259             <type name="TreeIter" c:type="GtkTreeIter*"/>
74260           </parameter>
74261         </parameters>
74262       </method>
74263       <method name="is_ancestor" c:identifier="gtk_tree_store_is_ancestor">
74264         <doc xml:whitespace="preserve">Returns %TRUE if @iter is an ancestor of @descendant.  That is, @iter is the
74265 parent (or grandparent or great-grandparent) of @descendant.</doc>
74266         <return-value transfer-ownership="none">
74267           <doc xml:whitespace="preserve">%TRUE, if @iter is an ancestor of @descendant</doc>
74268           <type name="boolean" c:type="gboolean"/>
74269         </return-value>
74270         <parameters>
74271           <parameter name="iter" transfer-ownership="none">
74272             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
74273             <type name="TreeIter" c:type="GtkTreeIter*"/>
74274           </parameter>
74275           <parameter name="descendant" transfer-ownership="none">
74276             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
74277             <type name="TreeIter" c:type="GtkTreeIter*"/>
74278           </parameter>
74279         </parameters>
74280       </method>
74281       <method name="iter_depth" c:identifier="gtk_tree_store_iter_depth">
74282         <doc xml:whitespace="preserve">Returns the depth of @iter.  This will be 0 for anything on the root level, 1
74283 for anything down a level, etc.</doc>
74284         <return-value transfer-ownership="none">
74285           <doc xml:whitespace="preserve">The depth of @iter</doc>
74286           <type name="int" c:type="gint"/>
74287         </return-value>
74288         <parameters>
74289           <parameter name="iter" transfer-ownership="none">
74290             <doc xml:whitespace="preserve">A valid #GtkTreeIter</doc>
74291             <type name="TreeIter" c:type="GtkTreeIter*"/>
74292           </parameter>
74293         </parameters>
74294       </method>
74295       <method name="clear" c:identifier="gtk_tree_store_clear">
74296         <doc xml:whitespace="preserve">Removes all rows from @tree_store</doc>
74297         <return-value transfer-ownership="none">
74298           <type name="none" c:type="void"/>
74299         </return-value>
74300       </method>
74301       <method name="iter_is_valid"
74302               c:identifier="gtk_tree_store_iter_is_valid"
74303               version="2.2">
74304         <doc xml:whitespace="preserve">purposes.
74305 Checks if the given iter is a valid iter for this #GtkTreeStore.</doc>
74306         <return-value transfer-ownership="none">
74307           <doc xml:whitespace="preserve">%TRUE if the iter is valid, %FALSE if the iter is invalid.</doc>
74308           <type name="boolean" c:type="gboolean"/>
74309         </return-value>
74310         <parameters>
74311           <parameter name="iter" transfer-ownership="none">
74312             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
74313             <type name="TreeIter" c:type="GtkTreeIter*"/>
74314           </parameter>
74315         </parameters>
74316       </method>
74317       <method name="reorder"
74318               c:identifier="gtk_tree_store_reorder"
74319               version="2.2">
74320         <doc xml:whitespace="preserve">Reorders the children of @parent in @tree_store to follow the order
74321 indicated by @new_order. Note that this function only works with
74322 unsorted stores.</doc>
74323         <return-value transfer-ownership="none">
74324           <type name="none" c:type="void"/>
74325         </return-value>
74326         <parameters>
74327           <parameter name="parent" transfer-ownership="none">
74328             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
74329             <type name="TreeIter" c:type="GtkTreeIter*"/>
74330           </parameter>
74331           <parameter name="new_order"
74332                      direction="out"
74333                      caller-allocates="0"
74334                      transfer-ownership="full">
74335             <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>
74336             <type name="int" c:type="gint*"/>
74337           </parameter>
74338         </parameters>
74339       </method>
74340       <method name="swap" c:identifier="gtk_tree_store_swap" version="2.2">
74341         <doc xml:whitespace="preserve">Swaps @a and @b in the same level of @tree_store. Note that this function
74342 only works with unsorted stores.</doc>
74343         <return-value transfer-ownership="none">
74344           <type name="none" c:type="void"/>
74345         </return-value>
74346         <parameters>
74347           <parameter name="a" transfer-ownership="none">
74348             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
74349             <type name="TreeIter" c:type="GtkTreeIter*"/>
74350           </parameter>
74351           <parameter name="b" transfer-ownership="none">
74352             <doc xml:whitespace="preserve">Another #GtkTreeIter.</doc>
74353             <type name="TreeIter" c:type="GtkTreeIter*"/>
74354           </parameter>
74355         </parameters>
74356       </method>
74357       <method name="move_before"
74358               c:identifier="gtk_tree_store_move_before"
74359               version="2.2">
74360         <doc xml:whitespace="preserve">Moves @iter in @tree_store to the position before @position. @iter and
74361 works with unsorted stores. If @position is %NULL, @iter will be
74362 moved to the end of the level.</doc>
74363         <return-value transfer-ownership="none">
74364           <type name="none" c:type="void"/>
74365         </return-value>
74366         <parameters>
74367           <parameter name="iter" transfer-ownership="none">
74368             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
74369             <type name="TreeIter" c:type="GtkTreeIter*"/>
74370           </parameter>
74371           <parameter name="position" transfer-ownership="none" allow-none="1">
74372             <doc xml:whitespace="preserve">A #GtkTreeIter or %NULL.</doc>
74373             <type name="TreeIter" c:type="GtkTreeIter*"/>
74374           </parameter>
74375         </parameters>
74376       </method>
74377       <method name="move_after"
74378               c:identifier="gtk_tree_store_move_after"
74379               version="2.2">
74380         <doc xml:whitespace="preserve">Moves @iter in @tree_store to the position after @position. @iter and
74381 works with unsorted stores. If @position is %NULL, @iter will be moved
74382 to the start of the level.</doc>
74383         <return-value transfer-ownership="none">
74384           <type name="none" c:type="void"/>
74385         </return-value>
74386         <parameters>
74387           <parameter name="iter" transfer-ownership="none">
74388             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
74389             <type name="TreeIter" c:type="GtkTreeIter*"/>
74390           </parameter>
74391           <parameter name="position" transfer-ownership="none" allow-none="1">
74392             <doc xml:whitespace="preserve">A #GtkTreeIter.</doc>
74393             <type name="TreeIter" c:type="GtkTreeIter*"/>
74394           </parameter>
74395         </parameters>
74396       </method>
74397       <field name="parent">
74398         <type name="GObject.Object" c:type="GObject"/>
74399       </field>
74400       <field name="stamp">
74401         <type name="int" c:type="gint"/>
74402       </field>
74403       <field name="root">
74404         <type name="any" c:type="gpointer"/>
74405       </field>
74406       <field name="last">
74407         <type name="any" c:type="gpointer"/>
74408       </field>
74409       <field name="n_columns">
74410         <type name="int" c:type="gint"/>
74411       </field>
74412       <field name="sort_column_id">
74413         <type name="int" c:type="gint"/>
74414       </field>
74415       <field name="sort_list">
74416         <type name="GLib.List" c:type="GList*">
74417           <type name="any" c:type="gpointer"/>
74418         </type>
74419       </field>
74420       <field name="order">
74421         <type name="SortType" c:type="GtkSortType"/>
74422       </field>
74423       <field name="column_headers">
74424         <type name="any" c:type="GType*"/>
74425       </field>
74426       <field name="default_sort_func">
74427         <type name="TreeIterCompareFunc" c:type="GtkTreeIterCompareFunc"/>
74428       </field>
74429       <field name="default_sort_data">
74430         <type name="any" c:type="gpointer"/>
74431       </field>
74432       <field name="default_sort_destroy">
74433         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
74434       </field>
74435       <field name="columns_dirty" bits="1">
74436         <type name="uint" c:type="guint"/>
74437       </field>
74438     </class>
74439     <record name="TreeStoreClass"
74440             c:type="GtkTreeStoreClass"
74441             glib:is-gtype-struct-for="TreeStore">
74442       <field name="parent_class">
74443         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
74444       </field>
74445       <field name="gtk_reserved1">
74446         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
74447           <return-value transfer-ownership="none">
74448             <type name="none" c:type="void"/>
74449           </return-value>
74450         </callback>
74451       </field>
74452       <field name="gtk_reserved2">
74453         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
74454           <return-value transfer-ownership="none">
74455             <type name="none" c:type="void"/>
74456           </return-value>
74457         </callback>
74458       </field>
74459       <field name="gtk_reserved3">
74460         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
74461           <return-value transfer-ownership="none">
74462             <type name="none" c:type="void"/>
74463           </return-value>
74464         </callback>
74465       </field>
74466       <field name="gtk_reserved4">
74467         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
74468           <return-value transfer-ownership="none">
74469             <type name="none" c:type="void"/>
74470           </return-value>
74471         </callback>
74472       </field>
74473     </record>
74474     <class name="TreeView"
74475            c:type="GtkTreeView"
74476            parent="Container"
74477            glib:type-name="GtkTreeView"
74478            glib:get-type="gtk_tree_view_get_type"
74479            glib:type-struct="TreeViewClass">
74480       <implements name="Atk.ImplementorIface"/>
74481       <implements name="Buildable"/>
74482       <constructor name="new" c:identifier="gtk_tree_view_new">
74483         <doc xml:whitespace="preserve">Creates a new #GtkTreeView widget.</doc>
74484         <return-value transfer-ownership="full">
74485           <doc xml:whitespace="preserve">A newly created #GtkTreeView widget.</doc>
74486           <type name="TreeView" c:type="GtkWidget*"/>
74487         </return-value>
74488       </constructor>
74489       <constructor name="new_with_model"
74490                    c:identifier="gtk_tree_view_new_with_model">
74491         <doc xml:whitespace="preserve">Creates a new #GtkTreeView widget with the model initialized to @model.</doc>
74492         <return-value transfer-ownership="full">
74493           <doc xml:whitespace="preserve">A newly created #GtkTreeView widget.</doc>
74494           <type name="TreeView" c:type="GtkWidget*"/>
74495         </return-value>
74496         <parameters>
74497           <parameter name="model" transfer-ownership="none">
74498             <doc xml:whitespace="preserve">the model.</doc>
74499             <type name="TreeModel" c:type="GtkTreeModel*"/>
74500           </parameter>
74501         </parameters>
74502       </constructor>
74503       <method name="get_model" c:identifier="gtk_tree_view_get_model">
74504         <doc xml:whitespace="preserve">Returns the model the #GtkTreeView is based on.  Returns %NULL if the
74505 model is unset.</doc>
74506         <return-value transfer-ownership="full">
74507           <doc xml:whitespace="preserve">A #GtkTreeModel, or %NULL if none is currently being used.</doc>
74508           <type name="TreeModel" c:type="GtkTreeModel*"/>
74509         </return-value>
74510       </method>
74511       <method name="set_model" c:identifier="gtk_tree_view_set_model">
74512         <doc xml:whitespace="preserve">Sets the model for a #GtkTreeView.  If the @tree_view already has a model
74513 set, it will remove it before setting the new model.  If @model is %NULL,
74514 then it will unset the old model.</doc>
74515         <return-value transfer-ownership="none">
74516           <type name="none" c:type="void"/>
74517         </return-value>
74518         <parameters>
74519           <parameter name="model" transfer-ownership="none" allow-none="1">
74520             <doc xml:whitespace="preserve">The model.</doc>
74521             <type name="TreeModel" c:type="GtkTreeModel*"/>
74522           </parameter>
74523         </parameters>
74524       </method>
74525       <method name="get_selection" c:identifier="gtk_tree_view_get_selection">
74526         <doc xml:whitespace="preserve">Gets the #GtkTreeSelection associated with @tree_view.</doc>
74527         <return-value transfer-ownership="full">
74528           <doc xml:whitespace="preserve">A #GtkTreeSelection object.</doc>
74529           <type name="TreeSelection" c:type="GtkTreeSelection*"/>
74530         </return-value>
74531       </method>
74532       <method name="get_hadjustment"
74533               c:identifier="gtk_tree_view_get_hadjustment">
74534         <doc xml:whitespace="preserve">Gets the #GtkAdjustment currently being used for the horizontal aspect.
74535 used.</doc>
74536         <return-value transfer-ownership="full">
74537           <doc xml:whitespace="preserve">A #GtkAdjustment object, or %NULL if none is currently being</doc>
74538           <type name="Adjustment" c:type="GtkAdjustment*"/>
74539         </return-value>
74540       </method>
74541       <method name="set_hadjustment"
74542               c:identifier="gtk_tree_view_set_hadjustment">
74543         <doc xml:whitespace="preserve">Sets the #GtkAdjustment for the current horizontal aspect.</doc>
74544         <return-value transfer-ownership="none">
74545           <type name="none" c:type="void"/>
74546         </return-value>
74547         <parameters>
74548           <parameter name="adjustment"
74549                      transfer-ownership="none"
74550                      allow-none="1">
74551             <doc xml:whitespace="preserve">The #GtkAdjustment to set, or %NULL</doc>
74552             <type name="Adjustment" c:type="GtkAdjustment*"/>
74553           </parameter>
74554         </parameters>
74555       </method>
74556       <method name="get_vadjustment"
74557               c:identifier="gtk_tree_view_get_vadjustment">
74558         <doc xml:whitespace="preserve">Gets the #GtkAdjustment currently being used for the vertical aspect.
74559 used.</doc>
74560         <return-value transfer-ownership="full">
74561           <doc xml:whitespace="preserve">A #GtkAdjustment object, or %NULL if none is currently being</doc>
74562           <type name="Adjustment" c:type="GtkAdjustment*"/>
74563         </return-value>
74564       </method>
74565       <method name="set_vadjustment"
74566               c:identifier="gtk_tree_view_set_vadjustment">
74567         <doc xml:whitespace="preserve">Sets the #GtkAdjustment for the current vertical aspect.</doc>
74568         <return-value transfer-ownership="none">
74569           <type name="none" c:type="void"/>
74570         </return-value>
74571         <parameters>
74572           <parameter name="adjustment"
74573                      transfer-ownership="none"
74574                      allow-none="1">
74575             <doc xml:whitespace="preserve">The #GtkAdjustment to set, or %NULL</doc>
74576             <type name="Adjustment" c:type="GtkAdjustment*"/>
74577           </parameter>
74578         </parameters>
74579       </method>
74580       <method name="get_headers_visible"
74581               c:identifier="gtk_tree_view_get_headers_visible">
74582         <doc xml:whitespace="preserve">Returns %TRUE if the headers on the @tree_view are visible.</doc>
74583         <return-value transfer-ownership="none">
74584           <doc xml:whitespace="preserve">Whether the headers are visible or not.</doc>
74585           <type name="boolean" c:type="gboolean"/>
74586         </return-value>
74587       </method>
74588       <method name="set_headers_visible"
74589               c:identifier="gtk_tree_view_set_headers_visible">
74590         <doc xml:whitespace="preserve">Sets the visibility state of the headers.</doc>
74591         <return-value transfer-ownership="none">
74592           <type name="none" c:type="void"/>
74593         </return-value>
74594         <parameters>
74595           <parameter name="headers_visible" transfer-ownership="none">
74596             <doc xml:whitespace="preserve">%TRUE if the headers are visible</doc>
74597             <type name="boolean" c:type="gboolean"/>
74598           </parameter>
74599         </parameters>
74600       </method>
74601       <method name="columns_autosize"
74602               c:identifier="gtk_tree_view_columns_autosize">
74603         <doc xml:whitespace="preserve">Resizes all columns to their optimal width. Only works after the
74604 treeview has been realized.</doc>
74605         <return-value transfer-ownership="none">
74606           <type name="none" c:type="void"/>
74607         </return-value>
74608       </method>
74609       <method name="get_headers_clickable"
74610               c:identifier="gtk_tree_view_get_headers_clickable"
74611               version="2.10">
74612         <doc xml:whitespace="preserve">Returns whether all header columns are clickable.</doc>
74613         <return-value transfer-ownership="none">
74614           <doc xml:whitespace="preserve">%TRUE if all header columns are clickable, otherwise %FALSE</doc>
74615           <type name="boolean" c:type="gboolean"/>
74616         </return-value>
74617       </method>
74618       <method name="set_headers_clickable"
74619               c:identifier="gtk_tree_view_set_headers_clickable">
74620         <doc xml:whitespace="preserve">Allow the column title buttons to be clicked.</doc>
74621         <return-value transfer-ownership="none">
74622           <type name="none" c:type="void"/>
74623         </return-value>
74624         <parameters>
74625           <parameter name="setting" transfer-ownership="none">
74626             <doc xml:whitespace="preserve">%TRUE if the columns are clickable.</doc>
74627             <type name="boolean" c:type="gboolean"/>
74628           </parameter>
74629         </parameters>
74630       </method>
74631       <method name="set_rules_hint"
74632               c:identifier="gtk_tree_view_set_rules_hint">
74633         <return-value transfer-ownership="none">
74634           <type name="none" c:type="void"/>
74635         </return-value>
74636         <parameters>
74637           <parameter name="setting" transfer-ownership="none">
74638             <type name="boolean" c:type="gboolean"/>
74639           </parameter>
74640         </parameters>
74641       </method>
74642       <method name="get_rules_hint"
74643               c:identifier="gtk_tree_view_get_rules_hint">
74644         <return-value transfer-ownership="none">
74645           <type name="boolean" c:type="gboolean"/>
74646         </return-value>
74647       </method>
74648       <method name="append_column" c:identifier="gtk_tree_view_append_column">
74649         <doc xml:whitespace="preserve">Appends @column to the list of columns. If @tree_view has "fixed_height"
74650 mode enabled, then @column must have its "sizing" property set to be
74651 GTK_TREE_VIEW_COLUMN_FIXED.</doc>
74652         <return-value transfer-ownership="none">
74653           <doc xml:whitespace="preserve">The number of columns in @tree_view after appending.</doc>
74654           <type name="int" c:type="gint"/>
74655         </return-value>
74656         <parameters>
74657           <parameter name="column" transfer-ownership="none">
74658             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to add.</doc>
74659             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
74660           </parameter>
74661         </parameters>
74662       </method>
74663       <method name="remove_column" c:identifier="gtk_tree_view_remove_column">
74664         <doc xml:whitespace="preserve">Removes @column from @tree_view.</doc>
74665         <return-value transfer-ownership="none">
74666           <doc xml:whitespace="preserve">The number of columns in @tree_view after removing.</doc>
74667           <type name="int" c:type="gint"/>
74668         </return-value>
74669         <parameters>
74670           <parameter name="column" transfer-ownership="none">
74671             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to remove.</doc>
74672             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
74673           </parameter>
74674         </parameters>
74675       </method>
74676       <method name="insert_column" c:identifier="gtk_tree_view_insert_column">
74677         <doc xml:whitespace="preserve">This inserts the @column into the @tree_view at @position.  If @position is
74678 -1, then the column is inserted at the end. If @tree_view has
74679 "fixed_height" mode enabled, then @column must have its "sizing" property
74680 set to be GTK_TREE_VIEW_COLUMN_FIXED.</doc>
74681         <return-value transfer-ownership="none">
74682           <doc xml:whitespace="preserve">The number of columns in @tree_view after insertion.</doc>
74683           <type name="int" c:type="gint"/>
74684         </return-value>
74685         <parameters>
74686           <parameter name="column" transfer-ownership="none">
74687             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to be inserted.</doc>
74688             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
74689           </parameter>
74690           <parameter name="position" transfer-ownership="none">
74691             <doc xml:whitespace="preserve">The position to insert @column in.</doc>
74692             <type name="int" c:type="gint"/>
74693           </parameter>
74694         </parameters>
74695       </method>
74696       <method name="insert_column_with_attributes"
74697               c:identifier="gtk_tree_view_insert_column_with_attributes"
74698               introspectable="0">
74699         <doc xml:whitespace="preserve">Creates a new #GtkTreeViewColumn and inserts it into the @tree_view at
74700 the end.  The column is initialized with the attributes given. If @tree_view
74701 has "fixed_height" mode enabled, then the new column will have its sizing
74702 property set to be GTK_TREE_VIEW_COLUMN_FIXED.</doc>
74703         <return-value transfer-ownership="none">
74704           <doc xml:whitespace="preserve">The number of columns in @tree_view after insertion.</doc>
74705           <type name="int" c:type="gint"/>
74706         </return-value>
74707         <parameters>
74708           <parameter name="position" transfer-ownership="none">
74709             <doc xml:whitespace="preserve">The position to insert the new column in.</doc>
74710             <type name="int" c:type="gint"/>
74711           </parameter>
74712           <parameter name="title" transfer-ownership="none">
74713             <doc xml:whitespace="preserve">The title to set the header to.</doc>
74714             <type name="utf8" c:type="gchar*"/>
74715           </parameter>
74716           <parameter name="cell" transfer-ownership="none">
74717             <doc xml:whitespace="preserve">The #GtkCellRenderer.</doc>
74718             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
74719           </parameter>
74720           <parameter transfer-ownership="none">
74721             <varargs>
74722             </varargs>
74723           </parameter>
74724         </parameters>
74725       </method>
74726       <method name="insert_column_with_data_func"
74727               c:identifier="gtk_tree_view_insert_column_with_data_func">
74728         <doc xml:whitespace="preserve">Convenience function that inserts a new column into the #GtkTreeView
74729 with the given cell renderer and a #GtkCellDataFunc to set cell renderer
74730 attributes (normally using data from the model). See also
74731 gtk_tree_view_column_set_cell_data_func(), gtk_tree_view_column_pack_start().
74732 If @tree_view has "fixed_height" mode enabled, then the new column will have its
74733 "sizing" property set to be GTK_TREE_VIEW_COLUMN_FIXED.</doc>
74734         <return-value transfer-ownership="none">
74735           <doc xml:whitespace="preserve">number of columns in the tree view post-insert</doc>
74736           <type name="int" c:type="gint"/>
74737         </return-value>
74738         <parameters>
74739           <parameter name="position" transfer-ownership="none">
74740             <doc xml:whitespace="preserve">Position to insert, -1 for append</doc>
74741             <type name="int" c:type="gint"/>
74742           </parameter>
74743           <parameter name="title" transfer-ownership="none">
74744             <doc xml:whitespace="preserve">column title</doc>
74745             <type name="utf8" c:type="gchar*"/>
74746           </parameter>
74747           <parameter name="cell" transfer-ownership="none">
74748             <doc xml:whitespace="preserve">cell renderer for column</doc>
74749             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
74750           </parameter>
74751           <parameter name="func"
74752                      transfer-ownership="none"
74753                      scope="notified"
74754                      closure="5"
74755                      destroy="6">
74756             <doc xml:whitespace="preserve">function to set attributes of cell renderer</doc>
74757             <type name="TreeCellDataFunc" c:type="GtkTreeCellDataFunc"/>
74758           </parameter>
74759           <parameter name="data" transfer-ownership="none">
74760             <doc xml:whitespace="preserve">data for @func</doc>
74761             <type name="any" c:type="gpointer"/>
74762           </parameter>
74763           <parameter name="dnotify" transfer-ownership="none" scope="call">
74764             <doc xml:whitespace="preserve">destroy notifier for @data</doc>
74765             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
74766           </parameter>
74767         </parameters>
74768       </method>
74769       <method name="get_column" c:identifier="gtk_tree_view_get_column">
74770         <doc xml:whitespace="preserve">Gets the #GtkTreeViewColumn at the given position in the #tree_view.
74771 range of columns.</doc>
74772         <return-value transfer-ownership="full">
74773           <doc xml:whitespace="preserve">The #GtkTreeViewColumn, or %NULL if the position is outside the</doc>
74774           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
74775         </return-value>
74776         <parameters>
74777           <parameter name="n" transfer-ownership="none">
74778             <doc xml:whitespace="preserve">The position of the column, counting from 0.</doc>
74779             <type name="int" c:type="gint"/>
74780           </parameter>
74781         </parameters>
74782       </method>
74783       <method name="get_columns" c:identifier="gtk_tree_view_get_columns">
74784         <doc xml:whitespace="preserve">Returns a #GList of all the #GtkTreeViewColumn s currently in @tree_view.
74785 The returned list must be freed with g_list_free ().</doc>
74786         <return-value transfer-ownership="container">
74787           <doc xml:whitespace="preserve">A list of #GtkTreeViewColumn s</doc>
74788           <type name="GLib.List" c:type="GList*">
74789             <type name="TreeViewColumn"/>
74790           </type>
74791         </return-value>
74792       </method>
74793       <method name="move_column_after"
74794               c:identifier="gtk_tree_view_move_column_after">
74795         <doc xml:whitespace="preserve">Moves @column to be after to @base_column.  If @base_column is %NULL, then</doc>
74796         <return-value transfer-ownership="none">
74797           <type name="none" c:type="void"/>
74798         </return-value>
74799         <parameters>
74800           <parameter name="column" transfer-ownership="none">
74801             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to be moved.</doc>
74802             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
74803           </parameter>
74804           <parameter name="base_column"
74805                      transfer-ownership="none"
74806                      allow-none="1">
74807             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to be moved relative to, or %NULL.</doc>
74808             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
74809           </parameter>
74810         </parameters>
74811       </method>
74812       <method name="set_expander_column"
74813               c:identifier="gtk_tree_view_set_expander_column">
74814         <doc xml:whitespace="preserve">Sets the column to draw the expander arrow at. It must be in @tree_view.  
74815 If @column is %NULL, then the expander arrow is always at the first 
74816 visible column.
74817 If you do not want expander arrow to appear in your tree, set the 
74818 expander column to a hidden column.</doc>
74819         <return-value transfer-ownership="none">
74820           <type name="none" c:type="void"/>
74821         </return-value>
74822         <parameters>
74823           <parameter name="column" transfer-ownership="none">
74824             <doc xml:whitespace="preserve">%NULL, or the column to draw the expander arrow at.</doc>
74825             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
74826           </parameter>
74827         </parameters>
74828       </method>
74829       <method name="get_expander_column"
74830               c:identifier="gtk_tree_view_get_expander_column">
74831         <doc xml:whitespace="preserve">Returns the column that is the current expander column.  This
74832 column has the expander arrow drawn next to it.</doc>
74833         <return-value transfer-ownership="full">
74834           <doc xml:whitespace="preserve">The expander column.</doc>
74835           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
74836         </return-value>
74837       </method>
74838       <method name="set_column_drag_function"
74839               c:identifier="gtk_tree_view_set_column_drag_function">
74840         <doc xml:whitespace="preserve">Sets a user function for determining where a column may be dropped when
74841 dragged.  This function is called on every column pair in turn at the
74842 beginning of a column drag to determine where a drop can take place.  The
74843 dragged, the two #GtkTreeViewColumn s determining the drop spot, and
74844 are %NULL, then they indicate an edge.  If @func is set to be %NULL, then
74845 dropped everywhere.</doc>
74846         <return-value transfer-ownership="none">
74847           <type name="none" c:type="void"/>
74848         </return-value>
74849         <parameters>
74850           <parameter name="func"
74851                      transfer-ownership="none"
74852                      allow-none="1"
74853                      scope="notified"
74854                      closure="2"
74855                      destroy="3">
74856             <doc xml:whitespace="preserve">A function to determine which columns are reorderable, or %NULL.</doc>
74857             <type name="TreeViewColumnDropFunc"
74858                   c:type="GtkTreeViewColumnDropFunc"/>
74859           </parameter>
74860           <parameter name="user_data" transfer-ownership="none" allow-none="1">
74861             <doc xml:whitespace="preserve">User data to be passed to @func, or %NULL</doc>
74862             <type name="any" c:type="gpointer"/>
74863           </parameter>
74864           <parameter name="destroy"
74865                      transfer-ownership="none"
74866                      allow-none="1"
74867                      scope="call">
74868             <doc xml:whitespace="preserve">Destroy notifier for @user_data, or %NULL</doc>
74869             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
74870           </parameter>
74871         </parameters>
74872       </method>
74873       <method name="scroll_to_point"
74874               c:identifier="gtk_tree_view_scroll_to_point">
74875         <doc xml:whitespace="preserve">Scrolls the tree view such that the top-left corner of the visible
74876 area is @tree_x, @tree_y, where @tree_x and @tree_y are specified
74877 in tree coordinates.  The @tree_view must be realized before
74878 this function is called.  If it isn't, you probably want to be
74879 using gtk_tree_view_scroll_to_cell().
74880 If either @tree_x or @tree_y are -1, then that direction isn't scrolled.</doc>
74881         <return-value transfer-ownership="none">
74882           <type name="none" c:type="void"/>
74883         </return-value>
74884         <parameters>
74885           <parameter name="tree_x" transfer-ownership="none">
74886             <doc xml:whitespace="preserve">X coordinate of new top-left pixel of visible area, or -1</doc>
74887             <type name="int" c:type="gint"/>
74888           </parameter>
74889           <parameter name="tree_y" transfer-ownership="none">
74890             <doc xml:whitespace="preserve">Y coordinate of new top-left pixel of visible area, or -1</doc>
74891             <type name="int" c:type="gint"/>
74892           </parameter>
74893         </parameters>
74894       </method>
74895       <method name="scroll_to_cell"
74896               c:identifier="gtk_tree_view_scroll_to_cell">
74897         <doc xml:whitespace="preserve">Moves the alignments of @tree_view to the position specified by @column and
74898 if @path is %NULL no vertical scrolling occurs.  At a minimum, one of @column
74899 or @path need to be non-%NULL.  @row_align determines where the row is
74900 placed, and @col_align determines where @column is placed.  Both are expected
74901 to be between 0.0 and 1.0. 0.0 means left/top alignment, 1.0 means
74902 right/bottom alignment, 0.5 means center.
74903 If @use_align is %FALSE, then the alignment arguments are ignored, and the
74904 tree does the minimum amount of work to scroll the cell onto the screen.
74905 This means that the cell will be scrolled to the edge closest to its current
74906 position.  If the cell is currently visible on the screen, nothing is done.
74907 This function only works if the model is set, and @path is a valid row on the
74908 model.  If the model changes before the @tree_view is realized, the centered
74909 path will be modified to reflect this change.</doc>
74910         <return-value transfer-ownership="none">
74911           <type name="none" c:type="void"/>
74912         </return-value>
74913         <parameters>
74914           <parameter name="path" transfer-ownership="none" allow-none="1">
74915             <doc xml:whitespace="preserve">The path of the row to move to, or %NULL.</doc>
74916             <type name="TreePath" c:type="GtkTreePath*"/>
74917           </parameter>
74918           <parameter name="column" transfer-ownership="none" allow-none="1">
74919             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to move horizontally to, or %NULL.</doc>
74920             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
74921           </parameter>
74922           <parameter name="use_align" transfer-ownership="none">
74923             <doc xml:whitespace="preserve">whether to use alignment arguments, or %FALSE.</doc>
74924             <type name="boolean" c:type="gboolean"/>
74925           </parameter>
74926           <parameter name="row_align" transfer-ownership="none">
74927             <doc xml:whitespace="preserve">The vertical alignment of the row specified by @path.</doc>
74928             <type name="float" c:type="gfloat"/>
74929           </parameter>
74930           <parameter name="col_align" transfer-ownership="none">
74931             <doc xml:whitespace="preserve">The horizontal alignment of the column specified by @column.</doc>
74932             <type name="float" c:type="gfloat"/>
74933           </parameter>
74934         </parameters>
74935       </method>
74936       <method name="row_activated" c:identifier="gtk_tree_view_row_activated">
74937         <doc xml:whitespace="preserve">Activates the cell determined by @path and @column.</doc>
74938         <return-value transfer-ownership="none">
74939           <type name="none" c:type="void"/>
74940         </return-value>
74941         <parameters>
74942           <parameter name="path" transfer-ownership="none">
74943             <doc xml:whitespace="preserve">The #GtkTreePath to be activated.</doc>
74944             <type name="TreePath" c:type="GtkTreePath*"/>
74945           </parameter>
74946           <parameter name="column" transfer-ownership="none">
74947             <doc xml:whitespace="preserve">The #GtkTreeViewColumn to be activated.</doc>
74948             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
74949           </parameter>
74950         </parameters>
74951       </method>
74952       <method name="expand_all" c:identifier="gtk_tree_view_expand_all">
74953         <doc xml:whitespace="preserve">Recursively expands all nodes in the @tree_view.</doc>
74954         <return-value transfer-ownership="none">
74955           <type name="none" c:type="void"/>
74956         </return-value>
74957       </method>
74958       <method name="collapse_all" c:identifier="gtk_tree_view_collapse_all">
74959         <doc xml:whitespace="preserve">Recursively collapses all visible, expanded nodes in @tree_view.</doc>
74960         <return-value transfer-ownership="none">
74961           <type name="none" c:type="void"/>
74962         </return-value>
74963       </method>
74964       <method name="expand_to_path"
74965               c:identifier="gtk_tree_view_expand_to_path"
74966               version="2.2">
74967         <doc xml:whitespace="preserve">Expands the row at @path. This will also expand all parent rows of</doc>
74968         <return-value transfer-ownership="none">
74969           <type name="none" c:type="void"/>
74970         </return-value>
74971         <parameters>
74972           <parameter name="path" transfer-ownership="none">
74973             <doc xml:whitespace="preserve">path to a row.</doc>
74974             <type name="TreePath" c:type="GtkTreePath*"/>
74975           </parameter>
74976         </parameters>
74977       </method>
74978       <method name="expand_row" c:identifier="gtk_tree_view_expand_row">
74979         <doc xml:whitespace="preserve">Opens the row so its children are visible.</doc>
74980         <return-value transfer-ownership="none">
74981           <doc xml:whitespace="preserve">%TRUE if the row existed and had children</doc>
74982           <type name="boolean" c:type="gboolean"/>
74983         </return-value>
74984         <parameters>
74985           <parameter name="path" transfer-ownership="none">
74986             <doc xml:whitespace="preserve">path to a row</doc>
74987             <type name="TreePath" c:type="GtkTreePath*"/>
74988           </parameter>
74989           <parameter name="open_all" transfer-ownership="none">
74990             <doc xml:whitespace="preserve">whether to recursively expand, or just expand immediate children</doc>
74991             <type name="boolean" c:type="gboolean"/>
74992           </parameter>
74993         </parameters>
74994       </method>
74995       <method name="collapse_row" c:identifier="gtk_tree_view_collapse_row">
74996         <doc xml:whitespace="preserve">Collapses a row (hides its child rows, if they exist).</doc>
74997         <return-value transfer-ownership="none">
74998           <doc xml:whitespace="preserve">%TRUE if the row was collapsed.</doc>
74999           <type name="boolean" c:type="gboolean"/>
75000         </return-value>
75001         <parameters>
75002           <parameter name="path" transfer-ownership="none">
75003             <doc xml:whitespace="preserve">path to a row in the @tree_view</doc>
75004             <type name="TreePath" c:type="GtkTreePath*"/>
75005           </parameter>
75006         </parameters>
75007       </method>
75008       <method name="map_expanded_rows"
75009               c:identifier="gtk_tree_view_map_expanded_rows">
75010         <doc xml:whitespace="preserve">Calls @func on all expanded rows.</doc>
75011         <return-value transfer-ownership="none">
75012           <type name="none" c:type="void"/>
75013         </return-value>
75014         <parameters>
75015           <parameter name="func"
75016                      transfer-ownership="none"
75017                      scope="call"
75018                      closure="2">
75019             <doc xml:whitespace="preserve">A function to be called</doc>
75020             <type name="TreeViewMappingFunc" c:type="GtkTreeViewMappingFunc"/>
75021           </parameter>
75022           <parameter name="data" transfer-ownership="none">
75023             <doc xml:whitespace="preserve">User data to be passed to the function.</doc>
75024             <type name="any" c:type="gpointer"/>
75025           </parameter>
75026         </parameters>
75027       </method>
75028       <method name="row_expanded" c:identifier="gtk_tree_view_row_expanded">
75029         <doc xml:whitespace="preserve">Returns %TRUE if the node pointed to by @path is expanded in @tree_view.</doc>
75030         <return-value transfer-ownership="none">
75031           <doc xml:whitespace="preserve">%TRUE if #path is expanded.</doc>
75032           <type name="boolean" c:type="gboolean"/>
75033         </return-value>
75034         <parameters>
75035           <parameter name="path" transfer-ownership="none">
75036             <doc xml:whitespace="preserve">A #GtkTreePath to test expansion state.</doc>
75037             <type name="TreePath" c:type="GtkTreePath*"/>
75038           </parameter>
75039         </parameters>
75040       </method>
75041       <method name="set_reorderable"
75042               c:identifier="gtk_tree_view_set_reorderable">
75043         <doc xml:whitespace="preserve">This function is a convenience function to allow you to reorder
75044 models that support the #GtkDragSourceIface and the
75045 #GtkDragDestIface.  Both #GtkTreeStore and #GtkListStore support
75046 these.  If @reorderable is %TRUE, then the user can reorder the
75047 model by dragging and dropping rows. The developer can listen to
75048 these changes by connecting to the model's row_inserted and
75049 row_deleted signals. The reordering is implemented by setting up
75050 the tree view as a drag source and destination. Therefore, drag and
75051 drop can not be used in a reorderable view for any other purpose.
75052 This function does not give you any degree of control over the order -- any
75053 reordering is allowed.  If more control is needed, you should probably
75054 handle drag and drop manually.</doc>
75055         <return-value transfer-ownership="none">
75056           <type name="none" c:type="void"/>
75057         </return-value>
75058         <parameters>
75059           <parameter name="reorderable" transfer-ownership="none">
75060             <doc xml:whitespace="preserve">%TRUE, if the tree can be reordered.</doc>
75061             <type name="boolean" c:type="gboolean"/>
75062           </parameter>
75063         </parameters>
75064       </method>
75065       <method name="get_reorderable"
75066               c:identifier="gtk_tree_view_get_reorderable">
75067         <doc xml:whitespace="preserve">Retrieves whether the user can reorder the tree via drag-and-drop. See
75068 gtk_tree_view_set_reorderable().</doc>
75069         <return-value transfer-ownership="none">
75070           <doc xml:whitespace="preserve">%TRUE if the tree can be reordered.</doc>
75071           <type name="boolean" c:type="gboolean"/>
75072         </return-value>
75073       </method>
75074       <method name="set_cursor" c:identifier="gtk_tree_view_set_cursor">
75075         <doc xml:whitespace="preserve">Sets the current keyboard focus to be at @path, and selects it.  This is
75076 useful when you want to focus the user's attention on a particular row.  If
75077 it. Additionally, if @focus_column is specified, and @start_editing is 
75078 %TRUE, then editing should be started in the specified cell.  
75079 This function is often followed by @gtk_widget_grab_focus (@tree_view) 
75080 in order to give keyboard focus to the widget.  Please note that editing 
75081 can only happen when the widget is realized.
75082 If @path is invalid for @model, the current cursor (if any) will be unset
75083 and the function will return without failing.</doc>
75084         <return-value transfer-ownership="none">
75085           <type name="none" c:type="void"/>
75086         </return-value>
75087         <parameters>
75088           <parameter name="path" transfer-ownership="none">
75089             <doc xml:whitespace="preserve">A #GtkTreePath</doc>
75090             <type name="TreePath" c:type="GtkTreePath*"/>
75091           </parameter>
75092           <parameter name="focus_column"
75093                      transfer-ownership="none"
75094                      allow-none="1">
75095             <doc xml:whitespace="preserve">A #GtkTreeViewColumn, or %NULL</doc>
75096             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
75097           </parameter>
75098           <parameter name="start_editing" transfer-ownership="none">
75099             <doc xml:whitespace="preserve">%TRUE if the specified cell should start being edited.</doc>
75100             <type name="boolean" c:type="gboolean"/>
75101           </parameter>
75102         </parameters>
75103       </method>
75104       <method name="set_cursor_on_cell"
75105               c:identifier="gtk_tree_view_set_cursor_on_cell"
75106               version="2.2">
75107         <doc xml:whitespace="preserve">Sets the current keyboard focus to be at @path, and selects it.  This is
75108 useful when you want to focus the user's attention on a particular row.  If
75109 it. If @focus_column and @focus_cell are not %NULL, and @focus_column
75110 contains 2 or more editable or activatable cells, then focus is given to
75111 the cell specified by @focus_cell. Additionally, if @focus_column is
75112 specified, and @start_editing is %TRUE, then editing should be started in
75113 the specified cell.  This function is often followed by
75114 widget.  Please note that editing can only happen when the widget is
75115 realized.
75116 If @path is invalid for @model, the current cursor (if any) will be unset
75117 and the function will return without failing.</doc>
75118         <return-value transfer-ownership="none">
75119           <type name="none" c:type="void"/>
75120         </return-value>
75121         <parameters>
75122           <parameter name="path" transfer-ownership="none">
75123             <doc xml:whitespace="preserve">A #GtkTreePath</doc>
75124             <type name="TreePath" c:type="GtkTreePath*"/>
75125           </parameter>
75126           <parameter name="focus_column"
75127                      transfer-ownership="none"
75128                      allow-none="1">
75129             <doc xml:whitespace="preserve">A #GtkTreeViewColumn, or %NULL</doc>
75130             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
75131           </parameter>
75132           <parameter name="focus_cell"
75133                      transfer-ownership="none"
75134                      allow-none="1">
75135             <doc xml:whitespace="preserve">A #GtkCellRenderer, or %NULL</doc>
75136             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
75137           </parameter>
75138           <parameter name="start_editing" transfer-ownership="none">
75139             <doc xml:whitespace="preserve">%TRUE if the specified cell should start being edited.</doc>
75140             <type name="boolean" c:type="gboolean"/>
75141           </parameter>
75142         </parameters>
75143       </method>
75144       <method name="get_cursor" c:identifier="gtk_tree_view_get_cursor">
75145         <doc xml:whitespace="preserve">Fills in @path and @focus_column with the current path and focus column.  If
75146 the cursor isn't currently set, then *@path will be %NULL.  If no column
75147 currently has focus, then *@focus_column will be %NULL.
75148 The returned #GtkTreePath must be freed with gtk_tree_path_free() when
75149 you are done with it.</doc>
75150         <return-value transfer-ownership="none">
75151           <type name="none" c:type="void"/>
75152         </return-value>
75153         <parameters>
75154           <parameter name="path"
75155                      direction="out"
75156                      caller-allocates="0"
75157                      transfer-ownership="full"
75158                      allow-none="1">
75159             <doc xml:whitespace="preserve">A pointer to be filled with the current cursor path, or %NULL</doc>
75160             <type name="TreePath" c:type="GtkTreePath**"/>
75161           </parameter>
75162           <parameter name="focus_column"
75163                      direction="out"
75164                      caller-allocates="0"
75165                      transfer-ownership="full"
75166                      allow-none="1">
75167             <doc xml:whitespace="preserve">A pointer to be filled with the current focus column, or %NULL</doc>
75168             <type name="TreeViewColumn" c:type="GtkTreeViewColumn**"/>
75169           </parameter>
75170         </parameters>
75171       </method>
75172       <method name="get_bin_window"
75173               c:identifier="gtk_tree_view_get_bin_window">
75174         <doc xml:whitespace="preserve">Returns the window that @tree_view renders to.  This is used primarily to
75175 compare to &lt;literal&gt;event-&gt;window&lt;/literal&gt; to confirm that the event on</doc>
75176         <return-value transfer-ownership="full">
75177           <doc xml:whitespace="preserve">A #GdkWindow, or %NULL when @tree_view hasn't been realized yet</doc>
75178           <type name="Gdk.Window" c:type="GdkWindow*"/>
75179         </return-value>
75180       </method>
75181       <method name="get_path_at_pos"
75182               c:identifier="gtk_tree_view_get_path_at_pos">
75183         <doc xml:whitespace="preserve">Finds the path at the point (@x, @y), relative to bin_window coordinates
75184 (please see gtk_tree_view_get_bin_window()).
75185 That is, @x and @y are relative to an events coordinates. @x and @y must
75186 come from an event on the @tree_view only where &lt;literal&gt;event-&gt;window ==
75187 gtk_tree_view_get_bin_window (&lt;!-- --&gt;)&lt;/literal&gt;. It is primarily for
75188 things like popup menus. If @path is non-%NULL, then it will be filled
75189 with the #GtkTreePath at that point.  This path should be freed with
75190 gtk_tree_path_free().  If @column is non-%NULL, then it will be filled
75191 with the column at that point.  @cell_x and @cell_y return the coordinates
75192 relative to the cell background (i.e. the @background_area passed to
75193 gtk_cell_renderer_render()).  This function is only meaningful if
75194 if @tree_view is not realized or does not have a model.
75195 For converting widget coordinates (eg. the ones you get from
75196 GtkWidget::query-tooltip), please see
75197 gtk_tree_view_convert_widget_to_bin_window_coords().</doc>
75198         <return-value transfer-ownership="none">
75199           <doc xml:whitespace="preserve">%TRUE if a row exists at that coordinate.</doc>
75200           <type name="boolean" c:type="gboolean"/>
75201         </return-value>
75202         <parameters>
75203           <parameter name="x" transfer-ownership="none">
75204             <doc xml:whitespace="preserve">The x position to be identified (relative to bin_window).</doc>
75205             <type name="int" c:type="gint"/>
75206           </parameter>
75207           <parameter name="y" transfer-ownership="none">
75208             <doc xml:whitespace="preserve">The y position to be identified (relative to bin_window).</doc>
75209             <type name="int" c:type="gint"/>
75210           </parameter>
75211           <parameter name="path"
75212                      direction="out"
75213                      caller-allocates="0"
75214                      transfer-ownership="full"
75215                      allow-none="1">
75216             <doc xml:whitespace="preserve">A pointer to a #GtkTreePath pointer to be filled in, or %NULL</doc>
75217             <type name="TreePath" c:type="GtkTreePath**"/>
75218           </parameter>
75219           <parameter name="column"
75220                      direction="out"
75221                      caller-allocates="0"
75222                      transfer-ownership="full"
75223                      allow-none="1">
75224             <doc xml:whitespace="preserve">A pointer to a #GtkTreeViewColumn pointer to be filled in, or %NULL</doc>
75225             <type name="TreeViewColumn" c:type="GtkTreeViewColumn**"/>
75226           </parameter>
75227           <parameter name="cell_x"
75228                      direction="out"
75229                      caller-allocates="0"
75230                      transfer-ownership="full"
75231                      allow-none="1">
75232             <doc xml:whitespace="preserve">A pointer where the X coordinate relative to the cell can be placed, or %NULL</doc>
75233             <type name="int" c:type="gint*"/>
75234           </parameter>
75235           <parameter name="cell_y"
75236                      direction="out"
75237                      caller-allocates="0"
75238                      transfer-ownership="full"
75239                      allow-none="1">
75240             <doc xml:whitespace="preserve">A pointer where the Y coordinate relative to the cell can be placed, or %NULL</doc>
75241             <type name="int" c:type="gint*"/>
75242           </parameter>
75243         </parameters>
75244       </method>
75245       <method name="get_cell_area" c:identifier="gtk_tree_view_get_cell_area">
75246         <doc xml:whitespace="preserve">Fills the bounding rectangle in bin_window coordinates for the cell at the
75247 row specified by @path and the column specified by @column.  If @path is
75248 %NULL, or points to a path not currently displayed, the @y and @height fields
75249 of the rectangle will be filled with 0. If @column is %NULL, the @x and @width
75250 fields will be filled with 0.  The sum of all cell rects does not cover the
75251 entire tree; there are extra pixels in between rows, for example. The
75252 returned rectangle is equivalent to the @cell_area passed to
75253 gtk_cell_renderer_render().  This function is only valid if @tree_view is
75254 realized.</doc>
75255         <return-value transfer-ownership="none">
75256           <type name="none" c:type="void"/>
75257         </return-value>
75258         <parameters>
75259           <parameter name="path" transfer-ownership="none" allow-none="1">
75260             <doc xml:whitespace="preserve">a #GtkTreePath for the row, or %NULL to get only horizontal coordinates</doc>
75261             <type name="TreePath" c:type="GtkTreePath*"/>
75262           </parameter>
75263           <parameter name="column" transfer-ownership="none" allow-none="1">
75264             <doc xml:whitespace="preserve">a #GtkTreeViewColumn for the column, or %NULL to get only vertical coordinates</doc>
75265             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
75266           </parameter>
75267           <parameter name="rect" transfer-ownership="none">
75268             <doc xml:whitespace="preserve">rectangle to fill with cell rect</doc>
75269             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
75270           </parameter>
75271         </parameters>
75272       </method>
75273       <method name="get_background_area"
75274               c:identifier="gtk_tree_view_get_background_area">
75275         <doc xml:whitespace="preserve">Fills the bounding rectangle in bin_window coordinates for the cell at the
75276 row specified by @path and the column specified by @column.  If @path is
75277 %NULL, or points to a node not found in the tree, the @y and @height fields of
75278 the rectangle will be filled with 0. If @column is %NULL, the @x and @width
75279 fields will be filled with 0.  The returned rectangle is equivalent to the
75280 areas tile to cover the entire bin window.  Contrast with the @cell_area,
75281 returned by gtk_tree_view_get_cell_area(), which returns only the cell
75282 itself, excluding surrounding borders and the tree expander area.</doc>
75283         <return-value transfer-ownership="none">
75284           <type name="none" c:type="void"/>
75285         </return-value>
75286         <parameters>
75287           <parameter name="path" transfer-ownership="none" allow-none="1">
75288             <doc xml:whitespace="preserve">a #GtkTreePath for the row, or %NULL to get only horizontal coordinates</doc>
75289             <type name="TreePath" c:type="GtkTreePath*"/>
75290           </parameter>
75291           <parameter name="column" transfer-ownership="none" allow-none="1">
75292             <doc xml:whitespace="preserve">a #GtkTreeViewColumn for the column, or %NULL to get only vertical coordiantes</doc>
75293             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
75294           </parameter>
75295           <parameter name="rect" transfer-ownership="none">
75296             <doc xml:whitespace="preserve">rectangle to fill with cell background rect</doc>
75297             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
75298           </parameter>
75299         </parameters>
75300       </method>
75301       <method name="get_visible_rect"
75302               c:identifier="gtk_tree_view_get_visible_rect">
75303         <doc xml:whitespace="preserve">Fills @visible_rect with the currently-visible region of the
75304 buffer, in tree coordinates. Convert to bin_window coordinates with
75305 gtk_tree_view_convert_tree_to_bin_window_coords().
75306 Tree coordinates start at 0,0 for row 0 of the tree, and cover the entire
75307 scrollable area of the tree.</doc>
75308         <return-value transfer-ownership="none">
75309           <type name="none" c:type="void"/>
75310         </return-value>
75311         <parameters>
75312           <parameter name="visible_rect" transfer-ownership="none">
75313             <doc xml:whitespace="preserve">rectangle to fill</doc>
75314             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
75315           </parameter>
75316         </parameters>
75317       </method>
75318       <method name="widget_to_tree_coords"
75319               c:identifier="gtk_tree_view_widget_to_tree_coords"
75320               deprecated="Due to historial reasons the name of this function is"
75321               deprecated-version="2.12">
75322         <doc xml:whitespace="preserve">Converts bin_window coordinates to coordinates for the
75323 tree (the full scrollable area of the tree).
75324 incorrect.  For converting coordinates relative to the widget to
75325 bin_window coordinates, please see
75326 gtk_tree_view_convert_widget_to_bin_window_coords().</doc>
75327         <return-value transfer-ownership="none">
75328           <type name="none" c:type="void"/>
75329         </return-value>
75330         <parameters>
75331           <parameter name="wx" transfer-ownership="none">
75332             <doc xml:whitespace="preserve">X coordinate relative to bin_window</doc>
75333             <type name="int" c:type="gint"/>
75334           </parameter>
75335           <parameter name="wy" transfer-ownership="none">
75336             <doc xml:whitespace="preserve">Y coordinate relative to bin_window</doc>
75337             <type name="int" c:type="gint"/>
75338           </parameter>
75339           <parameter name="tx"
75340                      direction="out"
75341                      caller-allocates="0"
75342                      transfer-ownership="full">
75343             <doc xml:whitespace="preserve">return location for tree X coordinate</doc>
75344             <type name="int" c:type="gint*"/>
75345           </parameter>
75346           <parameter name="ty"
75347                      direction="out"
75348                      caller-allocates="0"
75349                      transfer-ownership="full">
75350             <doc xml:whitespace="preserve">return location for tree Y coordinate</doc>
75351             <type name="int" c:type="gint*"/>
75352           </parameter>
75353         </parameters>
75354       </method>
75355       <method name="tree_to_widget_coords"
75356               c:identifier="gtk_tree_view_tree_to_widget_coords"
75357               deprecated="Due to historial reasons the name of this function is"
75358               deprecated-version="2.12">
75359         <doc xml:whitespace="preserve">Converts tree coordinates (coordinates in full scrollable area of the tree)
75360 to bin_window coordinates.
75361 incorrect.  For converting bin_window coordinates to coordinates relative
75362 to bin_window, please see
75363 gtk_tree_view_convert_bin_window_to_widget_coords().</doc>
75364         <return-value transfer-ownership="none">
75365           <type name="none" c:type="void"/>
75366         </return-value>
75367         <parameters>
75368           <parameter name="tx" transfer-ownership="none">
75369             <doc xml:whitespace="preserve">tree X coordinate</doc>
75370             <type name="int" c:type="gint"/>
75371           </parameter>
75372           <parameter name="ty" transfer-ownership="none">
75373             <doc xml:whitespace="preserve">tree Y coordinate</doc>
75374             <type name="int" c:type="gint"/>
75375           </parameter>
75376           <parameter name="wx"
75377                      direction="out"
75378                      caller-allocates="0"
75379                      transfer-ownership="full">
75380             <doc xml:whitespace="preserve">return location for X coordinate relative to bin_window</doc>
75381             <type name="int" c:type="gint*"/>
75382           </parameter>
75383           <parameter name="wy"
75384                      direction="out"
75385                      caller-allocates="0"
75386                      transfer-ownership="full">
75387             <doc xml:whitespace="preserve">return location for Y coordinate relative to bin_window</doc>
75388             <type name="int" c:type="gint*"/>
75389           </parameter>
75390         </parameters>
75391       </method>
75392       <method name="get_visible_range"
75393               c:identifier="gtk_tree_view_get_visible_range"
75394               version="2.8">
75395         <doc xml:whitespace="preserve">Sets @start_path and @end_path to be the first and last visible path.
75396 Note that there may be invisible paths in between.
75397 The paths should be freed with gtk_tree_path_free() after use.</doc>
75398         <return-value transfer-ownership="none">
75399           <doc xml:whitespace="preserve">%TRUE, if valid paths were placed in @start_path and @end_path.</doc>
75400           <type name="boolean" c:type="gboolean"/>
75401         </return-value>
75402         <parameters>
75403           <parameter name="start_path"
75404                      transfer-ownership="none"
75405                      allow-none="1">
75406             <doc xml:whitespace="preserve">Return location for start of region, or %NULL.</doc>
75407             <type name="TreePath" c:type="GtkTreePath**"/>
75408           </parameter>
75409           <parameter name="end_path" transfer-ownership="none" allow-none="1">
75410             <doc xml:whitespace="preserve">Return location for end of region, or %NULL.</doc>
75411             <type name="TreePath" c:type="GtkTreePath**"/>
75412           </parameter>
75413         </parameters>
75414       </method>
75415       <method name="enable_model_drag_source"
75416               c:identifier="gtk_tree_view_enable_model_drag_source">
75417         <doc xml:whitespace="preserve">Turns @tree_view into a drag source for automatic DND. Calling this
75418 method sets #GtkTreeView:reorderable to %FALSE.</doc>
75419         <return-value transfer-ownership="none">
75420           <type name="none" c:type="void"/>
75421         </return-value>
75422         <parameters>
75423           <parameter name="start_button_mask" transfer-ownership="none">
75424             <doc xml:whitespace="preserve">Mask of allowed buttons to start drag</doc>
75425             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
75426           </parameter>
75427           <parameter name="targets" transfer-ownership="none">
75428             <doc xml:whitespace="preserve">the table of targets that the drag will support</doc>
75429             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
75430           </parameter>
75431           <parameter name="n_targets" transfer-ownership="none">
75432             <doc xml:whitespace="preserve">the number of items in @targets</doc>
75433             <type name="int" c:type="gint"/>
75434           </parameter>
75435           <parameter name="actions" transfer-ownership="none">
75436             <doc xml:whitespace="preserve">the bitmask of possible actions for a drag from this widget</doc>
75437             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
75438           </parameter>
75439         </parameters>
75440       </method>
75441       <method name="enable_model_drag_dest"
75442               c:identifier="gtk_tree_view_enable_model_drag_dest">
75443         <doc xml:whitespace="preserve">Turns @tree_view into a drop destination for automatic DND. Calling
75444 this method sets #GtkTreeView:reorderable to %FALSE.</doc>
75445         <return-value transfer-ownership="none">
75446           <type name="none" c:type="void"/>
75447         </return-value>
75448         <parameters>
75449           <parameter name="targets" transfer-ownership="none">
75450             <doc xml:whitespace="preserve">the table of targets that the drag will support</doc>
75451             <type name="TargetEntry" c:type="GtkTargetEntry*"/>
75452           </parameter>
75453           <parameter name="n_targets" transfer-ownership="none">
75454             <doc xml:whitespace="preserve">the number of items in @targets</doc>
75455             <type name="int" c:type="gint"/>
75456           </parameter>
75457           <parameter name="actions" transfer-ownership="none">
75458             <doc xml:whitespace="preserve">the bitmask of possible actions for a drag from this widget</doc>
75459             <type name="Gdk.DragAction" c:type="GdkDragAction"/>
75460           </parameter>
75461         </parameters>
75462       </method>
75463       <method name="unset_rows_drag_source"
75464               c:identifier="gtk_tree_view_unset_rows_drag_source">
75465         <doc xml:whitespace="preserve">Undoes the effect of
75466 gtk_tree_view_enable_model_drag_source(). Calling this method sets
75467 #GtkTreeView:reorderable to %FALSE.</doc>
75468         <return-value transfer-ownership="none">
75469           <type name="none" c:type="void"/>
75470         </return-value>
75471       </method>
75472       <method name="unset_rows_drag_dest"
75473               c:identifier="gtk_tree_view_unset_rows_drag_dest">
75474         <doc xml:whitespace="preserve">Undoes the effect of
75475 gtk_tree_view_enable_model_drag_dest(). Calling this method sets
75476 #GtkTreeView:reorderable to %FALSE.</doc>
75477         <return-value transfer-ownership="none">
75478           <type name="none" c:type="void"/>
75479         </return-value>
75480       </method>
75481       <method name="set_drag_dest_row"
75482               c:identifier="gtk_tree_view_set_drag_dest_row">
75483         <doc xml:whitespace="preserve">Sets the row that is highlighted for feedback.</doc>
75484         <return-value transfer-ownership="none">
75485           <type name="none" c:type="void"/>
75486         </return-value>
75487         <parameters>
75488           <parameter name="path" transfer-ownership="none" allow-none="1">
75489             <doc xml:whitespace="preserve">The path of the row to highlight, or %NULL.</doc>
75490             <type name="TreePath" c:type="GtkTreePath*"/>
75491           </parameter>
75492           <parameter name="pos" transfer-ownership="none">
75493             <doc xml:whitespace="preserve">Specifies whether to drop before, after or into the row</doc>
75494             <type name="TreeViewDropPosition"
75495                   c:type="GtkTreeViewDropPosition"/>
75496           </parameter>
75497         </parameters>
75498       </method>
75499       <method name="get_drag_dest_row"
75500               c:identifier="gtk_tree_view_get_drag_dest_row">
75501         <doc xml:whitespace="preserve">Gets information about the row that is highlighted for feedback.</doc>
75502         <return-value transfer-ownership="none">
75503           <type name="none" c:type="void"/>
75504         </return-value>
75505         <parameters>
75506           <parameter name="path"
75507                      direction="out"
75508                      caller-allocates="0"
75509                      transfer-ownership="full"
75510                      allow-none="1">
75511             <doc xml:whitespace="preserve">Return location for the path of the highlighted row, or %NULL.</doc>
75512             <type name="TreePath" c:type="GtkTreePath**"/>
75513           </parameter>
75514           <parameter name="pos"
75515                      direction="out"
75516                      caller-allocates="1"
75517                      transfer-ownership="none"
75518                      allow-none="1">
75519             <doc xml:whitespace="preserve">Return location for the drop position, or %NULL</doc>
75520             <type name="TreeViewDropPosition"
75521                   c:type="GtkTreeViewDropPosition*"/>
75522           </parameter>
75523         </parameters>
75524       </method>
75525       <method name="get_dest_row_at_pos"
75526               c:identifier="gtk_tree_view_get_dest_row_at_pos">
75527         <doc xml:whitespace="preserve">Determines the destination row for a given position.  @drag_x and
75528 meaningful if @tree_view is realized.  Therefore this function will always
75529 return %FALSE if @tree_view is not realized or does not have a model.
75530 is indeed the case.</doc>
75531         <return-value transfer-ownership="none">
75532           <doc xml:whitespace="preserve">whether there is a row at the given position, %TRUE if this</doc>
75533           <type name="boolean" c:type="gboolean"/>
75534         </return-value>
75535         <parameters>
75536           <parameter name="drag_x" transfer-ownership="none">
75537             <doc xml:whitespace="preserve">the position to determine the destination row for</doc>
75538             <type name="int" c:type="gint"/>
75539           </parameter>
75540           <parameter name="drag_y" transfer-ownership="none">
75541             <doc xml:whitespace="preserve">the position to determine the destination row for</doc>
75542             <type name="int" c:type="gint"/>
75543           </parameter>
75544           <parameter name="path"
75545                      direction="out"
75546                      caller-allocates="0"
75547                      transfer-ownership="full"
75548                      allow-none="1">
75549             <doc xml:whitespace="preserve">Return location for the path of the highlighted row, or %NULL.</doc>
75550             <type name="TreePath" c:type="GtkTreePath**"/>
75551           </parameter>
75552           <parameter name="pos"
75553                      direction="out"
75554                      caller-allocates="1"
75555                      transfer-ownership="none"
75556                      allow-none="1">
75557             <doc xml:whitespace="preserve">Return location for the drop position, or %NULL</doc>
75558             <type name="TreeViewDropPosition"
75559                   c:type="GtkTreeViewDropPosition*"/>
75560           </parameter>
75561         </parameters>
75562       </method>
75563       <method name="create_row_drag_icon"
75564               c:identifier="gtk_tree_view_create_row_drag_icon">
75565         <doc xml:whitespace="preserve">Creates a #GdkPixmap representation of the row at @path.  
75566 This image is used for a drag icon.</doc>
75567         <return-value transfer-ownership="full">
75568           <doc xml:whitespace="preserve">a newly-allocated pixmap of the drag icon.</doc>
75569           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
75570         </return-value>
75571         <parameters>
75572           <parameter name="path" transfer-ownership="none">
75573             <doc xml:whitespace="preserve">a #GtkTreePath in @tree_view</doc>
75574             <type name="TreePath" c:type="GtkTreePath*"/>
75575           </parameter>
75576         </parameters>
75577       </method>
75578       <method name="set_enable_search"
75579               c:identifier="gtk_tree_view_set_enable_search">
75580         <doc xml:whitespace="preserve">If @enable_search is set, then the user can type in text to search through
75581 the tree interactively (this is sometimes called "typeahead find").
75582 Note that even if this is %FALSE, the user can still initiate a search 
75583 using the "start-interactive-search" key binding.</doc>
75584         <return-value transfer-ownership="none">
75585           <type name="none" c:type="void"/>
75586         </return-value>
75587         <parameters>
75588           <parameter name="enable_search" transfer-ownership="none">
75589             <doc xml:whitespace="preserve">%TRUE, if the user can search interactively</doc>
75590             <type name="boolean" c:type="gboolean"/>
75591           </parameter>
75592         </parameters>
75593       </method>
75594       <method name="get_enable_search"
75595               c:identifier="gtk_tree_view_get_enable_search">
75596         <doc xml:whitespace="preserve">Returns whether or not the tree allows to start interactive searching 
75597 by typing in text.</doc>
75598         <return-value transfer-ownership="none">
75599           <doc xml:whitespace="preserve">whether or not to let the user search interactively</doc>
75600           <type name="boolean" c:type="gboolean"/>
75601         </return-value>
75602       </method>
75603       <method name="get_search_column"
75604               c:identifier="gtk_tree_view_get_search_column">
75605         <doc xml:whitespace="preserve">Gets the column searched on by the interactive search code.</doc>
75606         <return-value transfer-ownership="none">
75607           <doc xml:whitespace="preserve">the column the interactive search code searches in.</doc>
75608           <type name="int" c:type="gint"/>
75609         </return-value>
75610       </method>
75611       <method name="set_search_column"
75612               c:identifier="gtk_tree_view_set_search_column">
75613         <doc xml:whitespace="preserve">Sets @column as the column where the interactive search code should
75614 search in for the current model. 
75615 If the search column is set, users can use the "start-interactive-search"
75616 key binding to bring up search popup. The enable-search property controls
75617 whether simply typing text will also start an interactive search.
75618 Note that @column refers to a column of the current model. The search 
75619 column is reset to -1 when the model is changed.</doc>
75620         <return-value transfer-ownership="none">
75621           <type name="none" c:type="void"/>
75622         </return-value>
75623         <parameters>
75624           <parameter name="column" transfer-ownership="none">
75625             <doc xml:whitespace="preserve">the column of the model to search in, or -1 to disable searching</doc>
75626             <type name="int" c:type="gint"/>
75627           </parameter>
75628         </parameters>
75629       </method>
75630       <method name="get_search_equal_func"
75631               c:identifier="gtk_tree_view_get_search_equal_func">
75632         <doc xml:whitespace="preserve">Returns the compare function currently in use.</doc>
75633         <return-value transfer-ownership="full">
75634           <doc xml:whitespace="preserve">the currently used compare function for the search code.</doc>
75635           <type name="TreeViewSearchEqualFunc"
75636                 c:type="GtkTreeViewSearchEqualFunc"/>
75637         </return-value>
75638       </method>
75639       <method name="set_search_equal_func"
75640               c:identifier="gtk_tree_view_set_search_equal_func">
75641         <doc xml:whitespace="preserve">Sets the compare function for the interactive search capabilities; note
75642 that somewhat like strcmp() returning 0 for equality
75643 #GtkTreeViewSearchEqualFunc returns %FALSE on matches.</doc>
75644         <return-value transfer-ownership="none">
75645           <type name="none" c:type="void"/>
75646         </return-value>
75647         <parameters>
75648           <parameter name="search_equal_func"
75649                      transfer-ownership="none"
75650                      scope="notified"
75651                      closure="2"
75652                      destroy="3">
75653             <doc xml:whitespace="preserve">the compare function to use during the search</doc>
75654             <type name="TreeViewSearchEqualFunc"
75655                   c:type="GtkTreeViewSearchEqualFunc"/>
75656           </parameter>
75657           <parameter name="search_user_data"
75658                      transfer-ownership="none"
75659                      allow-none="1">
75660             <doc xml:whitespace="preserve">user data to pass to @search_equal_func, or %NULL</doc>
75661             <type name="any" c:type="gpointer"/>
75662           </parameter>
75663           <parameter name="search_destroy"
75664                      transfer-ownership="none"
75665                      allow-none="1"
75666                      scope="call">
75667             <doc xml:whitespace="preserve">Destroy notifier for @search_user_data, or %NULL</doc>
75668             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
75669           </parameter>
75670         </parameters>
75671       </method>
75672       <method name="get_search_entry"
75673               c:identifier="gtk_tree_view_get_search_entry"
75674               version="2.10">
75675         <doc xml:whitespace="preserve">Returns the #GtkEntry which is currently in use as interactive search
75676 entry for @tree_view.  In case the built-in entry is being used, %NULL
75677 will be returned.</doc>
75678         <return-value transfer-ownership="full">
75679           <doc xml:whitespace="preserve">the entry currently in use as search entry.</doc>
75680           <type name="Entry" c:type="GtkEntry*"/>
75681         </return-value>
75682       </method>
75683       <method name="set_search_entry"
75684               c:identifier="gtk_tree_view_set_search_entry"
75685               version="2.10">
75686         <doc xml:whitespace="preserve">Sets the entry which the interactive search code will use for this
75687 in our interface at all time at a fixed position.  Passing %NULL for
75688 entry again.</doc>
75689         <return-value transfer-ownership="none">
75690           <type name="none" c:type="void"/>
75691         </return-value>
75692         <parameters>
75693           <parameter name="entry" transfer-ownership="none" allow-none="1">
75694             <doc xml:whitespace="preserve">the entry the interactive search code of @tree_view should use or %NULL</doc>
75695             <type name="Entry" c:type="GtkEntry*"/>
75696           </parameter>
75697         </parameters>
75698       </method>
75699       <method name="get_search_position_func"
75700               c:identifier="gtk_tree_view_get_search_position_func"
75701               version="2.10">
75702         <doc xml:whitespace="preserve">Returns the positioning function currently in use.</doc>
75703         <return-value transfer-ownership="full">
75704           <doc xml:whitespace="preserve">the currently used function for positioning the search dialog.</doc>
75705           <type name="TreeViewSearchPositionFunc"
75706                 c:type="GtkTreeViewSearchPositionFunc"/>
75707         </return-value>
75708       </method>
75709       <method name="set_search_position_func"
75710               c:identifier="gtk_tree_view_set_search_position_func"
75711               version="2.10">
75712         <doc xml:whitespace="preserve">Sets the function to use when positioning the search dialog.</doc>
75713         <return-value transfer-ownership="none">
75714           <type name="none" c:type="void"/>
75715         </return-value>
75716         <parameters>
75717           <parameter name="func"
75718                      transfer-ownership="none"
75719                      allow-none="1"
75720                      scope="notified"
75721                      closure="2"
75722                      destroy="3">
75723             <doc xml:whitespace="preserve">the function to use to position the search dialog, or %NULL to use the default search position function</doc>
75724             <type name="TreeViewSearchPositionFunc"
75725                   c:type="GtkTreeViewSearchPositionFunc"/>
75726           </parameter>
75727           <parameter name="data" transfer-ownership="none" allow-none="1">
75728             <doc xml:whitespace="preserve">user data to pass to @func, or %NULL</doc>
75729             <type name="any" c:type="gpointer"/>
75730           </parameter>
75731           <parameter name="destroy"
75732                      transfer-ownership="none"
75733                      allow-none="1"
75734                      scope="call">
75735             <doc xml:whitespace="preserve">Destroy notifier for @data, or %NULL</doc>
75736             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
75737           </parameter>
75738         </parameters>
75739       </method>
75740       <method name="convert_widget_to_tree_coords"
75741               c:identifier="gtk_tree_view_convert_widget_to_tree_coords"
75742               version="2.12">
75743         <doc xml:whitespace="preserve">Converts widget coordinates to coordinates for the
75744 tree (the full scrollable area of the tree).</doc>
75745         <return-value transfer-ownership="none">
75746           <type name="none" c:type="void"/>
75747         </return-value>
75748         <parameters>
75749           <parameter name="wx" transfer-ownership="none">
75750             <doc xml:whitespace="preserve">X coordinate relative to the widget</doc>
75751             <type name="int" c:type="gint"/>
75752           </parameter>
75753           <parameter name="wy" transfer-ownership="none">
75754             <doc xml:whitespace="preserve">Y coordinate relative to the widget</doc>
75755             <type name="int" c:type="gint"/>
75756           </parameter>
75757           <parameter name="tx"
75758                      direction="out"
75759                      caller-allocates="0"
75760                      transfer-ownership="full">
75761             <doc xml:whitespace="preserve">return location for tree X coordinate</doc>
75762             <type name="int" c:type="gint*"/>
75763           </parameter>
75764           <parameter name="ty"
75765                      direction="out"
75766                      caller-allocates="0"
75767                      transfer-ownership="full">
75768             <doc xml:whitespace="preserve">return location for tree Y coordinate</doc>
75769             <type name="int" c:type="gint*"/>
75770           </parameter>
75771         </parameters>
75772       </method>
75773       <method name="convert_tree_to_widget_coords"
75774               c:identifier="gtk_tree_view_convert_tree_to_widget_coords"
75775               version="2.12">
75776         <doc xml:whitespace="preserve">Converts tree coordinates (coordinates in full scrollable area of the tree)
75777 to widget coordinates.</doc>
75778         <return-value transfer-ownership="none">
75779           <type name="none" c:type="void"/>
75780         </return-value>
75781         <parameters>
75782           <parameter name="tx" transfer-ownership="none">
75783             <doc xml:whitespace="preserve">X coordinate relative to the tree</doc>
75784             <type name="int" c:type="gint"/>
75785           </parameter>
75786           <parameter name="ty" transfer-ownership="none">
75787             <doc xml:whitespace="preserve">Y coordinate relative to the tree</doc>
75788             <type name="int" c:type="gint"/>
75789           </parameter>
75790           <parameter name="wx"
75791                      direction="out"
75792                      caller-allocates="0"
75793                      transfer-ownership="full">
75794             <doc xml:whitespace="preserve">return location for widget X coordinate</doc>
75795             <type name="int" c:type="gint*"/>
75796           </parameter>
75797           <parameter name="wy"
75798                      direction="out"
75799                      caller-allocates="0"
75800                      transfer-ownership="full">
75801             <doc xml:whitespace="preserve">return location for widget Y coordinate</doc>
75802             <type name="int" c:type="gint*"/>
75803           </parameter>
75804         </parameters>
75805       </method>
75806       <method name="convert_widget_to_bin_window_coords"
75807               c:identifier="gtk_tree_view_convert_widget_to_bin_window_coords"
75808               version="2.12">
75809         <doc xml:whitespace="preserve">Converts widget coordinates to coordinates for the bin_window
75810 (see gtk_tree_view_get_bin_window()).</doc>
75811         <return-value transfer-ownership="none">
75812           <type name="none" c:type="void"/>
75813         </return-value>
75814         <parameters>
75815           <parameter name="wx" transfer-ownership="none">
75816             <doc xml:whitespace="preserve">X coordinate relative to the widget</doc>
75817             <type name="int" c:type="gint"/>
75818           </parameter>
75819           <parameter name="wy" transfer-ownership="none">
75820             <doc xml:whitespace="preserve">Y coordinate relative to the widget</doc>
75821             <type name="int" c:type="gint"/>
75822           </parameter>
75823           <parameter name="bx"
75824                      direction="out"
75825                      caller-allocates="0"
75826                      transfer-ownership="full">
75827             <doc xml:whitespace="preserve">return location for bin_window X coordinate</doc>
75828             <type name="int" c:type="gint*"/>
75829           </parameter>
75830           <parameter name="by"
75831                      direction="out"
75832                      caller-allocates="0"
75833                      transfer-ownership="full">
75834             <doc xml:whitespace="preserve">return location for bin_window Y coordinate</doc>
75835             <type name="int" c:type="gint*"/>
75836           </parameter>
75837         </parameters>
75838       </method>
75839       <method name="convert_bin_window_to_widget_coords"
75840               c:identifier="gtk_tree_view_convert_bin_window_to_widget_coords"
75841               version="2.12">
75842         <doc xml:whitespace="preserve">Converts bin_window coordinates (see gtk_tree_view_get_bin_window())
75843 to widget relative coordinates.</doc>
75844         <return-value transfer-ownership="none">
75845           <type name="none" c:type="void"/>
75846         </return-value>
75847         <parameters>
75848           <parameter name="bx" transfer-ownership="none">
75849             <doc xml:whitespace="preserve">bin_window X coordinate</doc>
75850             <type name="int" c:type="gint"/>
75851           </parameter>
75852           <parameter name="by" transfer-ownership="none">
75853             <doc xml:whitespace="preserve">bin_window Y coordinate</doc>
75854             <type name="int" c:type="gint"/>
75855           </parameter>
75856           <parameter name="wx"
75857                      direction="out"
75858                      caller-allocates="0"
75859                      transfer-ownership="full">
75860             <doc xml:whitespace="preserve">return location for widget X coordinate</doc>
75861             <type name="int" c:type="gint*"/>
75862           </parameter>
75863           <parameter name="wy"
75864                      direction="out"
75865                      caller-allocates="0"
75866                      transfer-ownership="full">
75867             <doc xml:whitespace="preserve">return location for widget Y coordinate</doc>
75868             <type name="int" c:type="gint*"/>
75869           </parameter>
75870         </parameters>
75871       </method>
75872       <method name="convert_tree_to_bin_window_coords"
75873               c:identifier="gtk_tree_view_convert_tree_to_bin_window_coords"
75874               version="2.12">
75875         <doc xml:whitespace="preserve">Converts tree coordinates (coordinates in full scrollable area of the tree)
75876 to bin_window coordinates.</doc>
75877         <return-value transfer-ownership="none">
75878           <type name="none" c:type="void"/>
75879         </return-value>
75880         <parameters>
75881           <parameter name="tx" transfer-ownership="none">
75882             <doc xml:whitespace="preserve">tree X coordinate</doc>
75883             <type name="int" c:type="gint"/>
75884           </parameter>
75885           <parameter name="ty" transfer-ownership="none">
75886             <doc xml:whitespace="preserve">tree Y coordinate</doc>
75887             <type name="int" c:type="gint"/>
75888           </parameter>
75889           <parameter name="bx"
75890                      direction="out"
75891                      caller-allocates="0"
75892                      transfer-ownership="full">
75893             <doc xml:whitespace="preserve">return location for X coordinate relative to bin_window</doc>
75894             <type name="int" c:type="gint*"/>
75895           </parameter>
75896           <parameter name="by"
75897                      direction="out"
75898                      caller-allocates="0"
75899                      transfer-ownership="full">
75900             <doc xml:whitespace="preserve">return location for Y coordinate relative to bin_window</doc>
75901             <type name="int" c:type="gint*"/>
75902           </parameter>
75903         </parameters>
75904       </method>
75905       <method name="convert_bin_window_to_tree_coords"
75906               c:identifier="gtk_tree_view_convert_bin_window_to_tree_coords"
75907               version="2.12">
75908         <doc xml:whitespace="preserve">Converts bin_window coordinates to coordinates for the
75909 tree (the full scrollable area of the tree).</doc>
75910         <return-value transfer-ownership="none">
75911           <type name="none" c:type="void"/>
75912         </return-value>
75913         <parameters>
75914           <parameter name="bx" transfer-ownership="none">
75915             <doc xml:whitespace="preserve">X coordinate relative to bin_window</doc>
75916             <type name="int" c:type="gint"/>
75917           </parameter>
75918           <parameter name="by" transfer-ownership="none">
75919             <doc xml:whitespace="preserve">Y coordinate relative to bin_window</doc>
75920             <type name="int" c:type="gint"/>
75921           </parameter>
75922           <parameter name="tx"
75923                      direction="out"
75924                      caller-allocates="0"
75925                      transfer-ownership="full">
75926             <doc xml:whitespace="preserve">return location for tree X coordinate</doc>
75927             <type name="int" c:type="gint*"/>
75928           </parameter>
75929           <parameter name="ty"
75930                      direction="out"
75931                      caller-allocates="0"
75932                      transfer-ownership="full">
75933             <doc xml:whitespace="preserve">return location for tree Y coordinate</doc>
75934             <type name="int" c:type="gint*"/>
75935           </parameter>
75936         </parameters>
75937       </method>
75938       <method name="set_destroy_count_func"
75939               c:identifier="gtk_tree_view_set_destroy_count_func">
75940         <doc xml:whitespace="preserve">This function should almost never be used.  It is meant for private use by
75941 ATK for determining the number of visible children that are removed when the
75942 user collapses a row, or a row is deleted.</doc>
75943         <return-value transfer-ownership="none">
75944           <type name="none" c:type="void"/>
75945         </return-value>
75946         <parameters>
75947           <parameter name="func"
75948                      transfer-ownership="none"
75949                      allow-none="1"
75950                      scope="notified"
75951                      closure="2"
75952                      destroy="3">
75953             <doc xml:whitespace="preserve">Function to be called when a view row is destroyed, or %NULL</doc>
75954             <type name="TreeDestroyCountFunc"
75955                   c:type="GtkTreeDestroyCountFunc"/>
75956           </parameter>
75957           <parameter name="data" transfer-ownership="none" allow-none="1">
75958             <doc xml:whitespace="preserve">User data to be passed to @func, or %NULL</doc>
75959             <type name="any" c:type="gpointer"/>
75960           </parameter>
75961           <parameter name="destroy"
75962                      transfer-ownership="none"
75963                      allow-none="1"
75964                      scope="call">
75965             <doc xml:whitespace="preserve">Destroy notifier for @data, or %NULL</doc>
75966             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
75967           </parameter>
75968         </parameters>
75969       </method>
75970       <method name="set_fixed_height_mode"
75971               c:identifier="gtk_tree_view_set_fixed_height_mode"
75972               version="2.6 ">
75973         <doc xml:whitespace="preserve">Enables or disables the fixed height mode of @tree_view. 
75974 Fixed height mode speeds up #GtkTreeView by assuming that all 
75975 rows have the same height. 
75976 Only enable this option if all rows are the same height and all
75977 columns are of type %GTK_TREE_VIEW_COLUMN_FIXED.</doc>
75978         <return-value transfer-ownership="none">
75979           <type name="none" c:type="void"/>
75980         </return-value>
75981         <parameters>
75982           <parameter name="enable" transfer-ownership="none">
75983             <doc xml:whitespace="preserve">%TRUE to enable fixed height mode</doc>
75984             <type name="boolean" c:type="gboolean"/>
75985           </parameter>
75986         </parameters>
75987       </method>
75988       <method name="get_fixed_height_mode"
75989               c:identifier="gtk_tree_view_get_fixed_height_mode"
75990               version="2.6">
75991         <doc xml:whitespace="preserve">Returns whether fixed height mode is turned on for @tree_view.</doc>
75992         <return-value transfer-ownership="none">
75993           <doc xml:whitespace="preserve">%TRUE if @tree_view is in fixed height mode</doc>
75994           <type name="boolean" c:type="gboolean"/>
75995         </return-value>
75996       </method>
75997       <method name="set_hover_selection"
75998               c:identifier="gtk_tree_view_set_hover_selection"
75999               version="2.6">
76000         <doc xml:whitespace="preserve">Enables of disables the hover selection mode of @tree_view.
76001 Hover selection makes the selected row follow the pointer.
76002 Currently, this works only for the selection modes 
76003 %GTK_SELECTION_SINGLE and %GTK_SELECTION_BROWSE.</doc>
76004         <return-value transfer-ownership="none">
76005           <type name="none" c:type="void"/>
76006         </return-value>
76007         <parameters>
76008           <parameter name="hover" transfer-ownership="none">
76009             <doc xml:whitespace="preserve">%TRUE to enable hover selection mode</doc>
76010             <type name="boolean" c:type="gboolean"/>
76011           </parameter>
76012         </parameters>
76013       </method>
76014       <method name="get_hover_selection"
76015               c:identifier="gtk_tree_view_get_hover_selection"
76016               version="2.6 ">
76017         <doc xml:whitespace="preserve">Returns whether hover selection mode is turned on for @tree_view.</doc>
76018         <return-value transfer-ownership="none">
76019           <doc xml:whitespace="preserve">%TRUE if @tree_view is in hover selection mode</doc>
76020           <type name="boolean" c:type="gboolean"/>
76021         </return-value>
76022       </method>
76023       <method name="set_hover_expand"
76024               c:identifier="gtk_tree_view_set_hover_expand"
76025               version="2.6">
76026         <doc xml:whitespace="preserve">Enables of disables the hover expansion mode of @tree_view.
76027 Hover expansion makes rows expand or collapse if the pointer 
76028 moves over them.</doc>
76029         <return-value transfer-ownership="none">
76030           <type name="none" c:type="void"/>
76031         </return-value>
76032         <parameters>
76033           <parameter name="expand" transfer-ownership="none">
76034             <doc xml:whitespace="preserve">%TRUE to enable hover selection mode</doc>
76035             <type name="boolean" c:type="gboolean"/>
76036           </parameter>
76037         </parameters>
76038       </method>
76039       <method name="get_hover_expand"
76040               c:identifier="gtk_tree_view_get_hover_expand"
76041               version="2.6 ">
76042         <doc xml:whitespace="preserve">Returns whether hover expansion mode is turned on for @tree_view.</doc>
76043         <return-value transfer-ownership="none">
76044           <doc xml:whitespace="preserve">%TRUE if @tree_view is in hover expansion mode</doc>
76045           <type name="boolean" c:type="gboolean"/>
76046         </return-value>
76047       </method>
76048       <method name="set_rubber_banding"
76049               c:identifier="gtk_tree_view_set_rubber_banding"
76050               version="2.10">
76051         <doc xml:whitespace="preserve">Enables or disables rubber banding in @tree_view.  If the selection mode
76052 is #GTK_SELECTION_MULTIPLE, rubber banding will allow the user to select
76053 multiple rows by dragging the mouse.</doc>
76054         <return-value transfer-ownership="none">
76055           <type name="none" c:type="void"/>
76056         </return-value>
76057         <parameters>
76058           <parameter name="enable" transfer-ownership="none">
76059             <doc xml:whitespace="preserve">%TRUE to enable rubber banding</doc>
76060             <type name="boolean" c:type="gboolean"/>
76061           </parameter>
76062         </parameters>
76063       </method>
76064       <method name="get_rubber_banding"
76065               c:identifier="gtk_tree_view_get_rubber_banding"
76066               version="2.10">
76067         <doc xml:whitespace="preserve">Returns whether rubber banding is turned on for @tree_view.  If the
76068 selection mode is #GTK_SELECTION_MULTIPLE, rubber banding will allow the
76069 user to select multiple rows by dragging the mouse.</doc>
76070         <return-value transfer-ownership="none">
76071           <doc xml:whitespace="preserve">%TRUE if rubber banding in @tree_view is enabled.</doc>
76072           <type name="boolean" c:type="gboolean"/>
76073         </return-value>
76074       </method>
76075       <method name="is_rubber_banding_active"
76076               c:identifier="gtk_tree_view_is_rubber_banding_active"
76077               version="2.12">
76078         <doc xml:whitespace="preserve">Returns whether a rubber banding operation is currently being done
76079 in @tree_view.
76080 done in @tree_view.</doc>
76081         <return-value transfer-ownership="none">
76082           <doc xml:whitespace="preserve">%TRUE if a rubber banding operation is currently being</doc>
76083           <type name="boolean" c:type="gboolean"/>
76084         </return-value>
76085       </method>
76086       <method name="get_row_separator_func"
76087               c:identifier="gtk_tree_view_get_row_separator_func"
76088               version="2.6">
76089         <doc xml:whitespace="preserve">Returns the current row separator function.</doc>
76090         <return-value transfer-ownership="full">
76091           <doc xml:whitespace="preserve">the current row separator function.</doc>
76092           <type name="TreeViewRowSeparatorFunc"
76093                 c:type="GtkTreeViewRowSeparatorFunc"/>
76094         </return-value>
76095       </method>
76096       <method name="set_row_separator_func"
76097               c:identifier="gtk_tree_view_set_row_separator_func"
76098               version="2.6">
76099         <doc xml:whitespace="preserve">Sets the row separator function, which is used to determine
76100 whether a row should be drawn as a separator. If the row separator
76101 function is %NULL, no separators are drawn. This is the default value.</doc>
76102         <return-value transfer-ownership="none">
76103           <type name="none" c:type="void"/>
76104         </return-value>
76105         <parameters>
76106           <parameter name="func"
76107                      transfer-ownership="none"
76108                      scope="notified"
76109                      closure="2"
76110                      destroy="3">
76111             <doc xml:whitespace="preserve">a #GtkTreeViewRowSeparatorFunc</doc>
76112             <type name="TreeViewRowSeparatorFunc"
76113                   c:type="GtkTreeViewRowSeparatorFunc"/>
76114           </parameter>
76115           <parameter name="data" transfer-ownership="none" allow-none="1">
76116             <doc xml:whitespace="preserve">user data to pass to @func, or %NULL</doc>
76117             <type name="any" c:type="gpointer"/>
76118           </parameter>
76119           <parameter name="destroy"
76120                      transfer-ownership="none"
76121                      allow-none="1"
76122                      scope="call">
76123             <doc xml:whitespace="preserve">destroy notifier for @data, or %NULL</doc>
76124             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
76125           </parameter>
76126         </parameters>
76127       </method>
76128       <method name="get_grid_lines"
76129               c:identifier="gtk_tree_view_get_grid_lines"
76130               version="2.10">
76131         <doc xml:whitespace="preserve">Returns which grid lines are enabled in @tree_view.
76132 are enabled.</doc>
76133         <return-value transfer-ownership="full">
76134           <doc xml:whitespace="preserve">a #GtkTreeViewGridLines value indicating which grid lines</doc>
76135           <type name="TreeViewGridLines" c:type="GtkTreeViewGridLines"/>
76136         </return-value>
76137       </method>
76138       <method name="set_grid_lines"
76139               c:identifier="gtk_tree_view_set_grid_lines"
76140               version="2.10">
76141         <doc xml:whitespace="preserve">Sets which grid lines to draw in @tree_view.</doc>
76142         <return-value transfer-ownership="none">
76143           <type name="none" c:type="void"/>
76144         </return-value>
76145         <parameters>
76146           <parameter name="grid_lines" transfer-ownership="none">
76147             <doc xml:whitespace="preserve">a #GtkTreeViewGridLines value indicating which grid lines to enable.</doc>
76148             <type name="TreeViewGridLines" c:type="GtkTreeViewGridLines"/>
76149           </parameter>
76150         </parameters>
76151       </method>
76152       <method name="get_enable_tree_lines"
76153               c:identifier="gtk_tree_view_get_enable_tree_lines"
76154               version="2.10">
76155         <doc xml:whitespace="preserve">Returns whether or not tree lines are drawn in @tree_view.
76156 otherwise.</doc>
76157         <return-value transfer-ownership="none">
76158           <doc xml:whitespace="preserve">%TRUE if tree lines are drawn in @tree_view, %FALSE</doc>
76159           <type name="boolean" c:type="gboolean"/>
76160         </return-value>
76161       </method>
76162       <method name="set_enable_tree_lines"
76163               c:identifier="gtk_tree_view_set_enable_tree_lines"
76164               version="2.10">
76165         <doc xml:whitespace="preserve">Sets whether to draw lines interconnecting the expanders in @tree_view.
76166 This does not have any visible effects for lists.</doc>
76167         <return-value transfer-ownership="none">
76168           <type name="none" c:type="void"/>
76169         </return-value>
76170         <parameters>
76171           <parameter name="enabled" transfer-ownership="none">
76172             <doc xml:whitespace="preserve">%TRUE to enable tree line drawing, %FALSE otherwise.</doc>
76173             <type name="boolean" c:type="gboolean"/>
76174           </parameter>
76175         </parameters>
76176       </method>
76177       <method name="set_show_expanders"
76178               c:identifier="gtk_tree_view_set_show_expanders"
76179               version="2.12">
76180         <doc xml:whitespace="preserve">Sets whether to draw and enable expanders and indent child rows in
76181 and there will be no way to expand and collapse rows by default.  Also
76182 note that hiding the expanders will disable the default indentation.  You
76183 can set a custom indentation in this case using
76184 gtk_tree_view_set_level_indentation().
76185 This does not have any visible effects for lists.</doc>
76186         <return-value transfer-ownership="none">
76187           <type name="none" c:type="void"/>
76188         </return-value>
76189         <parameters>
76190           <parameter name="enabled" transfer-ownership="none">
76191             <doc xml:whitespace="preserve">%TRUE to enable expander drawing, %FALSE otherwise.</doc>
76192             <type name="boolean" c:type="gboolean"/>
76193           </parameter>
76194         </parameters>
76195       </method>
76196       <method name="get_show_expanders"
76197               c:identifier="gtk_tree_view_get_show_expanders"
76198               version="2.12">
76199         <doc xml:whitespace="preserve">Returns whether or not expanders are drawn in @tree_view.
76200 otherwise.</doc>
76201         <return-value transfer-ownership="none">
76202           <doc xml:whitespace="preserve">%TRUE if expanders are drawn in @tree_view, %FALSE</doc>
76203           <type name="boolean" c:type="gboolean"/>
76204         </return-value>
76205       </method>
76206       <method name="set_level_indentation"
76207               c:identifier="gtk_tree_view_set_level_indentation"
76208               version="2.12">
76209         <doc xml:whitespace="preserve">Sets the amount of extra indentation for child levels to use in @tree_view
76210 in addition to the default indentation.  The value should be specified in
76211 pixels, a value of 0 disables this feature and in this case only the default
76212 indentation will be used.
76213 This does not have any visible effects for lists.</doc>
76214         <return-value transfer-ownership="none">
76215           <type name="none" c:type="void"/>
76216         </return-value>
76217         <parameters>
76218           <parameter name="indentation" transfer-ownership="none">
76219             <doc xml:whitespace="preserve">the amount, in pixels, of extra indentation in @tree_view.</doc>
76220             <type name="int" c:type="gint"/>
76221           </parameter>
76222         </parameters>
76223       </method>
76224       <method name="get_level_indentation"
76225               c:identifier="gtk_tree_view_get_level_indentation"
76226               version="2.12">
76227         <doc xml:whitespace="preserve">Returns the amount, in pixels, of extra indentation for child levels
76228 in @tree_view.</doc>
76229         <return-value transfer-ownership="none">
76230           <doc xml:whitespace="preserve">the amount of extra indentation for child levels in</doc>
76231           <type name="int" c:type="gint"/>
76232         </return-value>
76233       </method>
76234       <method name="set_tooltip_row"
76235               c:identifier="gtk_tree_view_set_tooltip_row"
76236               version="2.12">
76237         <doc xml:whitespace="preserve">Sets the tip area of @tooltip to be the area covered by the row at @path.
76238 See also gtk_tree_view_set_tooltip_column() for a simpler alternative.
76239 See also gtk_tooltip_set_tip_area().</doc>
76240         <return-value transfer-ownership="none">
76241           <type name="none" c:type="void"/>
76242         </return-value>
76243         <parameters>
76244           <parameter name="tooltip" transfer-ownership="none">
76245             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
76246             <type name="Tooltip" c:type="GtkTooltip*"/>
76247           </parameter>
76248           <parameter name="path" transfer-ownership="none">
76249             <doc xml:whitespace="preserve">a #GtkTreePath</doc>
76250             <type name="TreePath" c:type="GtkTreePath*"/>
76251           </parameter>
76252         </parameters>
76253       </method>
76254       <method name="set_tooltip_cell"
76255               c:identifier="gtk_tree_view_set_tooltip_cell"
76256               version="2.12">
76257         <doc xml:whitespace="preserve">Sets the tip area of @tooltip to the area @path, @column and @cell have
76258 in common.  For example if @path is %NULL and @column is set, the tip
76259 area will be set to the full area covered by @column.  See also
76260 gtk_tooltip_set_tip_area().
76261 Note that if @path is not specified and @cell is set and part of a column
76262 containing the expander, the tooltip might not show and hide at the correct
76263 position.  In such cases @path must be set to the current node under the
76264 mouse cursor for this function to operate correctly.
76265 See also gtk_tree_view_set_tooltip_column() for a simpler alternative.</doc>
76266         <return-value transfer-ownership="none">
76267           <type name="none" c:type="void"/>
76268         </return-value>
76269         <parameters>
76270           <parameter name="tooltip" transfer-ownership="none">
76271             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
76272             <type name="Tooltip" c:type="GtkTooltip*"/>
76273           </parameter>
76274           <parameter name="path" transfer-ownership="none" allow-none="1">
76275             <doc xml:whitespace="preserve">a #GtkTreePath or %NULL</doc>
76276             <type name="TreePath" c:type="GtkTreePath*"/>
76277           </parameter>
76278           <parameter name="column" transfer-ownership="none" allow-none="1">
76279             <doc xml:whitespace="preserve">a #GtkTreeViewColumn or %NULL</doc>
76280             <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
76281           </parameter>
76282           <parameter name="cell" transfer-ownership="none" allow-none="1">
76283             <doc xml:whitespace="preserve">a #GtkCellRenderer or %NULL</doc>
76284             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
76285           </parameter>
76286         </parameters>
76287       </method>
76288       <method name="get_tooltip_context"
76289               c:identifier="gtk_tree_view_get_tooltip_context"
76290               version="2.12">
76291         <doc xml:whitespace="preserve">This function is supposed to be used in a #GtkWidget::query-tooltip
76292 signal handler for #GtkTreeView.  The @x, @y and @keyboard_tip values
76293 which are received in the signal handler, should be passed to this
76294 function without modification.
76295 The return value indicates whether there is a tree view row at the given
76296 coordinates (%TRUE) or not (%FALSE) for mouse tooltips.  For keyboard
76297 tooltips the row returned will be the cursor row.  When %TRUE, then any of
76298 that row and the corresponding model.  @x and @y will always be converted
76299 to be relative to @tree_view's bin_window if @keyboard_tooltip is %FALSE.</doc>
76300         <return-value transfer-ownership="none">
76301           <doc xml:whitespace="preserve">whether or not the given tooltip context points to a row.</doc>
76302           <type name="boolean" c:type="gboolean"/>
76303         </return-value>
76304         <parameters>
76305           <parameter name="x"
76306                      direction="out"
76307                      caller-allocates="0"
76308                      transfer-ownership="full">
76309             <doc xml:whitespace="preserve">the x coordinate (relative to widget coordinates)</doc>
76310             <type name="int" c:type="gint*"/>
76311           </parameter>
76312           <parameter name="y"
76313                      direction="out"
76314                      caller-allocates="0"
76315                      transfer-ownership="full">
76316             <doc xml:whitespace="preserve">the y coordinate (relative to widget coordinates)</doc>
76317             <type name="int" c:type="gint*"/>
76318           </parameter>
76319           <parameter name="keyboard_tip" transfer-ownership="none">
76320             <doc xml:whitespace="preserve">whether this is a keyboard tooltip or not</doc>
76321             <type name="boolean" c:type="gboolean"/>
76322           </parameter>
76323           <parameter name="model" transfer-ownership="none" allow-none="1">
76324             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreeModel or %NULL</doc>
76325             <type name="TreeModel" c:type="GtkTreeModel**"/>
76326           </parameter>
76327           <parameter name="path" transfer-ownership="none" allow-none="1">
76328             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreePath or %NULL</doc>
76329             <type name="TreePath" c:type="GtkTreePath**"/>
76330           </parameter>
76331           <parameter name="iter" transfer-ownership="none" allow-none="1">
76332             <doc xml:whitespace="preserve">a pointer to receive a #GtkTreeIter or %NULL</doc>
76333             <type name="TreeIter" c:type="GtkTreeIter*"/>
76334           </parameter>
76335         </parameters>
76336       </method>
76337       <method name="set_tooltip_column"
76338               c:identifier="gtk_tree_view_set_tooltip_column"
76339               version="2.12">
76340         <doc xml:whitespace="preserve">If you only plan to have simple (text-only) tooltips on full rows, you
76341 can use this function to have #GtkTreeView handle these automatically
76342 for you. @column should be set to the column in @tree_view's model
76343 containing the tooltip texts, or -1 to disable this feature.
76344 When enabled, #GtkWidget::has-tooltip will be set to %TRUE and
76345 Note that the signal handler sets the text with gtk_tooltip_set_markup(),
76346 so &amp;amp;, &amp;lt;, etc have to be escaped in the text.</doc>
76347         <return-value transfer-ownership="none">
76348           <type name="none" c:type="void"/>
76349         </return-value>
76350         <parameters>
76351           <parameter name="column" transfer-ownership="none">
76352             <doc xml:whitespace="preserve">an integer, which is a valid column number for @tree_view's model</doc>
76353             <type name="int" c:type="gint"/>
76354           </parameter>
76355         </parameters>
76356       </method>
76357       <method name="get_tooltip_column"
76358               c:identifier="gtk_tree_view_get_tooltip_column"
76359               version="2.12">
76360         <doc xml:whitespace="preserve">Returns the column of @tree_view's model which is being used for
76361 displaying tooltips on @tree_view's rows.
76362 used, or -1 if this is disabled.</doc>
76363         <return-value transfer-ownership="none">
76364           <doc xml:whitespace="preserve">the index of the tooltip column that is currently being</doc>
76365           <type name="int" c:type="gint"/>
76366         </return-value>
76367       </method>
76368       <property name="enable-grid-lines"
76369                 writable="1"
76370                 transfer-ownership="none">
76371         <type name="TreeViewGridLines" c:type="GtkTreeViewGridLines"/>
76372       </property>
76373       <property name="enable-search" writable="1" transfer-ownership="none">
76374         <type name="boolean" c:type="gboolean"/>
76375       </property>
76376       <property name="enable-tree-lines"
76377                 writable="1"
76378                 transfer-ownership="none">
76379         <type name="boolean" c:type="gboolean"/>
76380       </property>
76381       <property name="expander-column" writable="1" transfer-ownership="none">
76382         <type name="TreeViewColumn" c:type="GtkTreeViewColumn"/>
76383       </property>
76384       <property name="fixed-height-mode"
76385                 version="2.4"
76386                 writable="1"
76387                 transfer-ownership="none">
76388         <doc xml:whitespace="preserve">Setting the ::fixed-height-mode property to %TRUE speeds up 
76389 #GtkTreeView by assuming that all rows have the same height. 
76390 Only enable this option if all rows are the same height.  
76391 Please see gtk_tree_view_set_fixed_height_mode() for more 
76392 information on this option.</doc>
76393         <type name="boolean" c:type="gboolean"/>
76394       </property>
76395       <property name="hadjustment" writable="1" transfer-ownership="none">
76396         <type name="Adjustment" c:type="GtkAdjustment"/>
76397       </property>
76398       <property name="headers-clickable"
76399                 writable="1"
76400                 transfer-ownership="none">
76401         <type name="boolean" c:type="gboolean"/>
76402       </property>
76403       <property name="headers-visible" writable="1" transfer-ownership="none">
76404         <type name="boolean" c:type="gboolean"/>
76405       </property>
76406       <property name="hover-expand"
76407                 version="2.6"
76408                 writable="1"
76409                 transfer-ownership="none">
76410         <doc xml:whitespace="preserve">Enables of disables the hover expansion mode of @tree_view.
76411 Hover expansion makes rows expand or collapse if the pointer moves 
76412 over them.
76413 This mode is primarily intended for treeviews in popups, e.g.
76414 in #GtkComboBox or #GtkEntryCompletion.</doc>
76415         <type name="boolean" c:type="gboolean"/>
76416       </property>
76417       <property name="hover-selection"
76418                 version="2.6"
76419                 writable="1"
76420                 transfer-ownership="none">
76421         <doc xml:whitespace="preserve">Enables of disables the hover selection mode of @tree_view.
76422 Hover selection makes the selected row follow the pointer.
76423 Currently, this works only for the selection modes 
76424 %GTK_SELECTION_SINGLE and %GTK_SELECTION_BROWSE.
76425 This mode is primarily intended for treeviews in popups, e.g.
76426 in #GtkComboBox or #GtkEntryCompletion.</doc>
76427         <type name="boolean" c:type="gboolean"/>
76428       </property>
76429       <property name="level-indentation"
76430                 version="2.12"
76431                 writable="1"
76432                 transfer-ownership="none">
76433         <doc xml:whitespace="preserve">Extra indentation for each level.</doc>
76434         <type name="int" c:type="gint"/>
76435       </property>
76436       <property name="model" writable="1" transfer-ownership="none">
76437         <type name="TreeModel" c:type="GtkTreeModel"/>
76438       </property>
76439       <property name="reorderable" writable="1" transfer-ownership="none">
76440         <type name="boolean" c:type="gboolean"/>
76441       </property>
76442       <property name="rubber-banding" writable="1" transfer-ownership="none">
76443         <type name="boolean" c:type="gboolean"/>
76444       </property>
76445       <property name="rules-hint" writable="1" transfer-ownership="none">
76446         <type name="boolean" c:type="gboolean"/>
76447       </property>
76448       <property name="search-column" writable="1" transfer-ownership="none">
76449         <type name="int" c:type="gint"/>
76450       </property>
76451       <property name="show-expanders"
76452                 version="2.12"
76453                 writable="1"
76454                 transfer-ownership="none">
76455         <doc xml:whitespace="preserve">%TRUE if the view has expanders.</doc>
76456         <type name="boolean" c:type="gboolean"/>
76457       </property>
76458       <property name="tooltip-column" writable="1" transfer-ownership="none">
76459         <type name="int" c:type="gint"/>
76460       </property>
76461       <property name="vadjustment" writable="1" transfer-ownership="none">
76462         <type name="Adjustment" c:type="GtkAdjustment"/>
76463       </property>
76464       <field name="parent">
76465         <type name="Container" c:type="GtkContainer"/>
76466       </field>
76467       <field name="priv">
76468         <type name="TreeViewPrivate" c:type="GtkTreeViewPrivate*"/>
76469       </field>
76470       <glib:signal name="columns-changed">
76471         <doc xml:whitespace="preserve">The number of columns of the treeview has changed.</doc>
76472         <return-value transfer-ownership="full">
76473           <type name="none" c:type="void"/>
76474         </return-value>
76475       </glib:signal>
76476       <glib:signal name="cursor-changed">
76477         <doc xml:whitespace="preserve">The position of the cursor (focused cell) has changed.</doc>
76478         <return-value transfer-ownership="full">
76479           <type name="none" c:type="void"/>
76480         </return-value>
76481       </glib:signal>
76482       <glib:signal name="expand-collapse-cursor-row">
76483         <return-value transfer-ownership="full">
76484           <type name="boolean" c:type="gboolean"/>
76485         </return-value>
76486         <parameters>
76487           <parameter name="object" transfer-ownership="none">
76488             <type name="boolean" c:type="gboolean"/>
76489           </parameter>
76490           <parameter name="p0" transfer-ownership="none">
76491             <type name="boolean" c:type="gboolean"/>
76492           </parameter>
76493           <parameter name="p1" transfer-ownership="none">
76494             <type name="boolean" c:type="gboolean"/>
76495           </parameter>
76496         </parameters>
76497       </glib:signal>
76498       <glib:signal name="move-cursor">
76499         <return-value transfer-ownership="full">
76500           <type name="boolean" c:type="gboolean"/>
76501         </return-value>
76502         <parameters>
76503           <parameter name="object" transfer-ownership="none">
76504             <type name="MovementStep" c:type="GtkMovementStep"/>
76505           </parameter>
76506           <parameter name="p0" transfer-ownership="none">
76507             <type name="int" c:type="gint"/>
76508           </parameter>
76509         </parameters>
76510       </glib:signal>
76511       <glib:signal name="row-activated">
76512         <doc xml:whitespace="preserve">The "row-activated" signal is emitted when the method
76513 gtk_tree_view_row_activated() is called or the user double clicks 
76514 a treeview row. It is also emitted when a non-editable row is 
76515 Enter is pressed.
76516 For selection handling refer to the &lt;link linkend="TreeWidget"&gt;tree 
76517 widget conceptual overview&lt;/link&gt; as well as #GtkTreeSelection.</doc>
76518         <return-value transfer-ownership="full">
76519           <type name="none" c:type="void"/>
76520         </return-value>
76521         <parameters>
76522           <parameter name="path" transfer-ownership="none">
76523             <doc xml:whitespace="preserve">the #GtkTreePath for the activated row</doc>
76524             <type name="TreePath" c:type="GtkTreePath"/>
76525           </parameter>
76526           <parameter name="column" transfer-ownership="none">
76527             <doc xml:whitespace="preserve">the #GtkTreeViewColumn in which the activation occurred</doc>
76528             <type name="TreeViewColumn" c:type="GtkTreeViewColumn"/>
76529           </parameter>
76530         </parameters>
76531       </glib:signal>
76532       <glib:signal name="row-collapsed">
76533         <doc xml:whitespace="preserve">The given row has been collapsed (child nodes are hidden).</doc>
76534         <return-value transfer-ownership="full">
76535           <type name="none" c:type="void"/>
76536         </return-value>
76537         <parameters>
76538           <parameter name="iter" transfer-ownership="none">
76539             <doc xml:whitespace="preserve">the tree iter of the collapsed row</doc>
76540             <type name="TreeIter" c:type="GtkTreeIter"/>
76541           </parameter>
76542           <parameter name="path" transfer-ownership="none">
76543             <doc xml:whitespace="preserve">a tree path that points to the row</doc>
76544             <type name="TreePath" c:type="GtkTreePath"/>
76545           </parameter>
76546         </parameters>
76547       </glib:signal>
76548       <glib:signal name="row-expanded">
76549         <doc xml:whitespace="preserve">The given row has been expanded (child nodes are shown).</doc>
76550         <return-value transfer-ownership="full">
76551           <type name="none" c:type="void"/>
76552         </return-value>
76553         <parameters>
76554           <parameter name="iter" transfer-ownership="none">
76555             <doc xml:whitespace="preserve">the tree iter of the expanded row</doc>
76556             <type name="TreeIter" c:type="GtkTreeIter"/>
76557           </parameter>
76558           <parameter name="path" transfer-ownership="none">
76559             <doc xml:whitespace="preserve">a tree path that points to the row</doc>
76560             <type name="TreePath" c:type="GtkTreePath"/>
76561           </parameter>
76562         </parameters>
76563       </glib:signal>
76564       <glib:signal name="select-all">
76565         <return-value transfer-ownership="full">
76566           <type name="boolean" c:type="gboolean"/>
76567         </return-value>
76568       </glib:signal>
76569       <glib:signal name="select-cursor-parent">
76570         <return-value transfer-ownership="full">
76571           <type name="boolean" c:type="gboolean"/>
76572         </return-value>
76573       </glib:signal>
76574       <glib:signal name="select-cursor-row">
76575         <return-value transfer-ownership="full">
76576           <type name="boolean" c:type="gboolean"/>
76577         </return-value>
76578         <parameters>
76579           <parameter name="object" transfer-ownership="none">
76580             <type name="boolean" c:type="gboolean"/>
76581           </parameter>
76582         </parameters>
76583       </glib:signal>
76584       <glib:signal name="set-scroll-adjustments">
76585         <return-value transfer-ownership="full">
76586           <type name="none" c:type="void"/>
76587         </return-value>
76588         <parameters>
76589           <parameter name="object" transfer-ownership="none">
76590             <type name="Adjustment" c:type="GtkAdjustment"/>
76591           </parameter>
76592           <parameter name="p0" transfer-ownership="none">
76593             <type name="Adjustment" c:type="GtkAdjustment"/>
76594           </parameter>
76595         </parameters>
76596       </glib:signal>
76597       <glib:signal name="start-interactive-search">
76598         <return-value transfer-ownership="full">
76599           <type name="boolean" c:type="gboolean"/>
76600         </return-value>
76601       </glib:signal>
76602       <glib:signal name="test-collapse-row">
76603         <doc xml:whitespace="preserve">The given row is about to be collapsed (hide its children nodes). Use this
76604 signal if you need to control the collapsibility of individual rows.</doc>
76605         <return-value transfer-ownership="full">
76606           <doc xml:whitespace="preserve">%FALSE to allow collapsing, %TRUE to reject</doc>
76607           <type name="boolean" c:type="gboolean"/>
76608         </return-value>
76609         <parameters>
76610           <parameter name="iter" transfer-ownership="none">
76611             <doc xml:whitespace="preserve">the tree iter of the row to collapse</doc>
76612             <type name="TreeIter" c:type="GtkTreeIter"/>
76613           </parameter>
76614           <parameter name="path" transfer-ownership="none">
76615             <doc xml:whitespace="preserve">a tree path that points to the row</doc>
76616             <type name="TreePath" c:type="GtkTreePath"/>
76617           </parameter>
76618         </parameters>
76619       </glib:signal>
76620       <glib:signal name="test-expand-row">
76621         <doc xml:whitespace="preserve">The given row is about to be expanded (show its children nodes). Use this
76622 signal if you need to control the expandability of individual rows.</doc>
76623         <return-value transfer-ownership="full">
76624           <doc xml:whitespace="preserve">%FALSE to allow expansion, %TRUE to reject</doc>
76625           <type name="boolean" c:type="gboolean"/>
76626         </return-value>
76627         <parameters>
76628           <parameter name="iter" transfer-ownership="none">
76629             <doc xml:whitespace="preserve">the tree iter of the row to expand</doc>
76630             <type name="TreeIter" c:type="GtkTreeIter"/>
76631           </parameter>
76632           <parameter name="path" transfer-ownership="none">
76633             <doc xml:whitespace="preserve">a tree path that points to the row</doc>
76634             <type name="TreePath" c:type="GtkTreePath"/>
76635           </parameter>
76636         </parameters>
76637       </glib:signal>
76638       <glib:signal name="toggle-cursor-row">
76639         <return-value transfer-ownership="full">
76640           <type name="boolean" c:type="gboolean"/>
76641         </return-value>
76642       </glib:signal>
76643       <glib:signal name="unselect-all">
76644         <return-value transfer-ownership="full">
76645           <type name="boolean" c:type="gboolean"/>
76646         </return-value>
76647       </glib:signal>
76648     </class>
76649     <record name="TreeViewClass"
76650             c:type="GtkTreeViewClass"
76651             glib:is-gtype-struct-for="TreeView">
76652       <field name="parent_class">
76653         <type name="ContainerClass" c:type="GtkContainerClass"/>
76654       </field>
76655       <field name="set_scroll_adjustments">
76656         <callback name="set_scroll_adjustments"
76657                   c:type="set_scroll_adjustments">
76658           <return-value transfer-ownership="none">
76659             <type name="none" c:type="void"/>
76660           </return-value>
76661           <parameters>
76662             <parameter name="tree_view" transfer-ownership="none">
76663               <type name="TreeView" c:type="GtkTreeView*"/>
76664             </parameter>
76665             <parameter name="hadjustment" transfer-ownership="none">
76666               <type name="Adjustment" c:type="GtkAdjustment*"/>
76667             </parameter>
76668             <parameter name="vadjustment" transfer-ownership="none">
76669               <type name="Adjustment" c:type="GtkAdjustment*"/>
76670             </parameter>
76671           </parameters>
76672         </callback>
76673       </field>
76674       <field name="row_activated">
76675         <callback name="row_activated" c:type="row_activated">
76676           <return-value transfer-ownership="none">
76677             <type name="none" c:type="void"/>
76678           </return-value>
76679           <parameters>
76680             <parameter name="tree_view" transfer-ownership="none">
76681               <type name="TreeView" c:type="GtkTreeView*"/>
76682             </parameter>
76683             <parameter name="path" transfer-ownership="none">
76684               <type name="TreePath" c:type="GtkTreePath*"/>
76685             </parameter>
76686             <parameter name="column" transfer-ownership="none">
76687               <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
76688             </parameter>
76689           </parameters>
76690         </callback>
76691       </field>
76692       <field name="test_expand_row">
76693         <callback name="test_expand_row" c:type="test_expand_row">
76694           <return-value transfer-ownership="none">
76695             <type name="boolean" c:type="gboolean"/>
76696           </return-value>
76697           <parameters>
76698             <parameter name="tree_view" transfer-ownership="none">
76699               <type name="TreeView" c:type="GtkTreeView*"/>
76700             </parameter>
76701             <parameter name="iter" transfer-ownership="none">
76702               <type name="TreeIter" c:type="GtkTreeIter*"/>
76703             </parameter>
76704             <parameter name="path" transfer-ownership="none">
76705               <type name="TreePath" c:type="GtkTreePath*"/>
76706             </parameter>
76707           </parameters>
76708         </callback>
76709       </field>
76710       <field name="test_collapse_row">
76711         <callback name="test_collapse_row" c:type="test_collapse_row">
76712           <return-value transfer-ownership="none">
76713             <type name="boolean" c:type="gboolean"/>
76714           </return-value>
76715           <parameters>
76716             <parameter name="tree_view" transfer-ownership="none">
76717               <type name="TreeView" c:type="GtkTreeView*"/>
76718             </parameter>
76719             <parameter name="iter" transfer-ownership="none">
76720               <type name="TreeIter" c:type="GtkTreeIter*"/>
76721             </parameter>
76722             <parameter name="path" transfer-ownership="none">
76723               <type name="TreePath" c:type="GtkTreePath*"/>
76724             </parameter>
76725           </parameters>
76726         </callback>
76727       </field>
76728       <field name="row_expanded">
76729         <callback name="row_expanded" c:type="row_expanded">
76730           <return-value transfer-ownership="none">
76731             <type name="none" c:type="void"/>
76732           </return-value>
76733           <parameters>
76734             <parameter name="tree_view" transfer-ownership="none">
76735               <type name="TreeView" c:type="GtkTreeView*"/>
76736             </parameter>
76737             <parameter name="iter" transfer-ownership="none">
76738               <type name="TreeIter" c:type="GtkTreeIter*"/>
76739             </parameter>
76740             <parameter name="path" transfer-ownership="none">
76741               <type name="TreePath" c:type="GtkTreePath*"/>
76742             </parameter>
76743           </parameters>
76744         </callback>
76745       </field>
76746       <field name="row_collapsed">
76747         <callback name="row_collapsed" c:type="row_collapsed">
76748           <return-value transfer-ownership="none">
76749             <type name="none" c:type="void"/>
76750           </return-value>
76751           <parameters>
76752             <parameter name="tree_view" transfer-ownership="none">
76753               <type name="TreeView" c:type="GtkTreeView*"/>
76754             </parameter>
76755             <parameter name="iter" transfer-ownership="none">
76756               <type name="TreeIter" c:type="GtkTreeIter*"/>
76757             </parameter>
76758             <parameter name="path" transfer-ownership="none">
76759               <type name="TreePath" c:type="GtkTreePath*"/>
76760             </parameter>
76761           </parameters>
76762         </callback>
76763       </field>
76764       <field name="columns_changed">
76765         <callback name="columns_changed" c:type="columns_changed">
76766           <return-value transfer-ownership="none">
76767             <type name="none" c:type="void"/>
76768           </return-value>
76769           <parameters>
76770             <parameter name="tree_view" transfer-ownership="none">
76771               <type name="TreeView" c:type="GtkTreeView*"/>
76772             </parameter>
76773           </parameters>
76774         </callback>
76775       </field>
76776       <field name="cursor_changed">
76777         <callback name="cursor_changed" c:type="cursor_changed">
76778           <return-value transfer-ownership="none">
76779             <type name="none" c:type="void"/>
76780           </return-value>
76781           <parameters>
76782             <parameter name="tree_view" transfer-ownership="none">
76783               <type name="TreeView" c:type="GtkTreeView*"/>
76784             </parameter>
76785           </parameters>
76786         </callback>
76787       </field>
76788       <field name="move_cursor">
76789         <callback name="move_cursor" c:type="move_cursor">
76790           <return-value transfer-ownership="none">
76791             <type name="boolean" c:type="gboolean"/>
76792           </return-value>
76793           <parameters>
76794             <parameter name="tree_view" transfer-ownership="none">
76795               <type name="TreeView" c:type="GtkTreeView*"/>
76796             </parameter>
76797             <parameter name="step" transfer-ownership="none">
76798               <type name="MovementStep" c:type="GtkMovementStep"/>
76799             </parameter>
76800             <parameter name="count" transfer-ownership="none">
76801               <type name="int" c:type="gint"/>
76802             </parameter>
76803           </parameters>
76804         </callback>
76805       </field>
76806       <field name="select_all">
76807         <callback name="select_all" c:type="select_all">
76808           <return-value transfer-ownership="none">
76809             <type name="boolean" c:type="gboolean"/>
76810           </return-value>
76811           <parameters>
76812             <parameter name="tree_view" transfer-ownership="none">
76813               <type name="TreeView" c:type="GtkTreeView*"/>
76814             </parameter>
76815           </parameters>
76816         </callback>
76817       </field>
76818       <field name="unselect_all">
76819         <callback name="unselect_all" c:type="unselect_all">
76820           <return-value transfer-ownership="none">
76821             <type name="boolean" c:type="gboolean"/>
76822           </return-value>
76823           <parameters>
76824             <parameter name="tree_view" transfer-ownership="none">
76825               <type name="TreeView" c:type="GtkTreeView*"/>
76826             </parameter>
76827           </parameters>
76828         </callback>
76829       </field>
76830       <field name="select_cursor_row">
76831         <callback name="select_cursor_row" c:type="select_cursor_row">
76832           <return-value transfer-ownership="none">
76833             <type name="boolean" c:type="gboolean"/>
76834           </return-value>
76835           <parameters>
76836             <parameter name="tree_view" transfer-ownership="none">
76837               <type name="TreeView" c:type="GtkTreeView*"/>
76838             </parameter>
76839             <parameter name="start_editing" transfer-ownership="none">
76840               <type name="boolean" c:type="gboolean"/>
76841             </parameter>
76842           </parameters>
76843         </callback>
76844       </field>
76845       <field name="toggle_cursor_row">
76846         <callback name="toggle_cursor_row" c:type="toggle_cursor_row">
76847           <return-value transfer-ownership="none">
76848             <type name="boolean" c:type="gboolean"/>
76849           </return-value>
76850           <parameters>
76851             <parameter name="tree_view" transfer-ownership="none">
76852               <type name="TreeView" c:type="GtkTreeView*"/>
76853             </parameter>
76854           </parameters>
76855         </callback>
76856       </field>
76857       <field name="expand_collapse_cursor_row">
76858         <callback name="expand_collapse_cursor_row"
76859                   c:type="expand_collapse_cursor_row">
76860           <return-value transfer-ownership="none">
76861             <type name="boolean" c:type="gboolean"/>
76862           </return-value>
76863           <parameters>
76864             <parameter name="tree_view" transfer-ownership="none">
76865               <type name="TreeView" c:type="GtkTreeView*"/>
76866             </parameter>
76867             <parameter name="logical" transfer-ownership="none">
76868               <type name="boolean" c:type="gboolean"/>
76869             </parameter>
76870             <parameter name="expand" transfer-ownership="none">
76871               <type name="boolean" c:type="gboolean"/>
76872             </parameter>
76873             <parameter name="open_all" transfer-ownership="none">
76874               <type name="boolean" c:type="gboolean"/>
76875             </parameter>
76876           </parameters>
76877         </callback>
76878       </field>
76879       <field name="select_cursor_parent">
76880         <callback name="select_cursor_parent" c:type="select_cursor_parent">
76881           <return-value transfer-ownership="none">
76882             <type name="boolean" c:type="gboolean"/>
76883           </return-value>
76884           <parameters>
76885             <parameter name="tree_view" transfer-ownership="none">
76886               <type name="TreeView" c:type="GtkTreeView*"/>
76887             </parameter>
76888           </parameters>
76889         </callback>
76890       </field>
76891       <field name="start_interactive_search">
76892         <callback name="start_interactive_search"
76893                   c:type="start_interactive_search">
76894           <return-value transfer-ownership="none">
76895             <type name="boolean" c:type="gboolean"/>
76896           </return-value>
76897           <parameters>
76898             <parameter name="tree_view" transfer-ownership="none">
76899               <type name="TreeView" c:type="GtkTreeView*"/>
76900             </parameter>
76901           </parameters>
76902         </callback>
76903       </field>
76904       <field name="gtk_reserved0">
76905         <callback name="gtk_reserved0" c:type="_gtk_reserved0">
76906           <return-value transfer-ownership="none">
76907             <type name="none" c:type="void"/>
76908           </return-value>
76909         </callback>
76910       </field>
76911       <field name="gtk_reserved1">
76912         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
76913           <return-value transfer-ownership="none">
76914             <type name="none" c:type="void"/>
76915           </return-value>
76916         </callback>
76917       </field>
76918       <field name="gtk_reserved2">
76919         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
76920           <return-value transfer-ownership="none">
76921             <type name="none" c:type="void"/>
76922           </return-value>
76923         </callback>
76924       </field>
76925       <field name="gtk_reserved3">
76926         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
76927           <return-value transfer-ownership="none">
76928             <type name="none" c:type="void"/>
76929           </return-value>
76930         </callback>
76931       </field>
76932       <field name="gtk_reserved4">
76933         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
76934           <return-value transfer-ownership="none">
76935             <type name="none" c:type="void"/>
76936           </return-value>
76937         </callback>
76938       </field>
76939     </record>
76940     <class name="TreeViewColumn"
76941            c:type="GtkTreeViewColumn"
76942            parent="Object"
76943            glib:type-name="GtkTreeViewColumn"
76944            glib:get-type="gtk_tree_view_column_get_type"
76945            glib:type-struct="TreeViewColumnClass">
76946       <implements name="Buildable"/>
76947       <implements name="CellLayout"/>
76948       <constructor name="new" c:identifier="gtk_tree_view_column_new">
76949         <doc xml:whitespace="preserve">Creates a new #GtkTreeViewColumn.</doc>
76950         <return-value transfer-ownership="full">
76951           <doc xml:whitespace="preserve">A newly created #GtkTreeViewColumn.</doc>
76952           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
76953         </return-value>
76954       </constructor>
76955       <constructor name="new_with_attributes"
76956                    c:identifier="gtk_tree_view_column_new_with_attributes"
76957                    introspectable="0">
76958         <doc xml:whitespace="preserve">Creates a new #GtkTreeViewColumn with a number of default values.  This is
76959 equivalent to calling gtk_tree_view_column_set_title(),
76960 gtk_tree_view_column_pack_start(), and
76961 gtk_tree_view_column_set_attributes() on the newly created #GtkTreeViewColumn.
76962 Here's a simple example:
76963 |[
76964 enum { TEXT_COLUMN, COLOR_COLUMN, N_COLUMNS };
76965 ...
76966 {
76967 GtkTreeViewColumn *column;
76968 GtkCellRenderer   *renderer = gtk_cell_renderer_text_new ();
76969 column = gtk_tree_view_column_new_with_attributes ("Title",
76970 renderer,
76971 "text", TEXT_COLUMN,
76972 "foreground", COLOR_COLUMN,
76973 NULL);
76974 }
76975 ]|</doc>
76976         <return-value transfer-ownership="full">
76977           <doc xml:whitespace="preserve">A newly created #GtkTreeViewColumn.</doc>
76978           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
76979         </return-value>
76980         <parameters>
76981           <parameter name="title" transfer-ownership="none">
76982             <doc xml:whitespace="preserve">The title to set the header to.</doc>
76983             <type name="utf8" c:type="gchar*"/>
76984           </parameter>
76985           <parameter name="cell" transfer-ownership="none">
76986             <doc xml:whitespace="preserve">The #GtkCellRenderer.</doc>
76987             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
76988           </parameter>
76989           <parameter transfer-ownership="none">
76990             <varargs>
76991             </varargs>
76992           </parameter>
76993         </parameters>
76994       </constructor>
76995       <method name="pack_start" c:identifier="gtk_tree_view_column_pack_start">
76996         <doc xml:whitespace="preserve">Packs the @cell into the beginning of the column. If @expand is %FALSE, then
76997 the @cell is allocated no more space than it needs. Any unused space is divided
76998 evenly between cells for which @expand is %TRUE.</doc>
76999         <return-value transfer-ownership="none">
77000           <type name="none" c:type="void"/>
77001         </return-value>
77002         <parameters>
77003           <parameter name="cell" transfer-ownership="none">
77004             <doc xml:whitespace="preserve">The #GtkCellRenderer.</doc>
77005             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
77006           </parameter>
77007           <parameter name="expand" transfer-ownership="none">
77008             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @tree_column.</doc>
77009             <type name="boolean" c:type="gboolean"/>
77010           </parameter>
77011         </parameters>
77012       </method>
77013       <method name="pack_end" c:identifier="gtk_tree_view_column_pack_end">
77014         <doc xml:whitespace="preserve">Adds the @cell to end of the column. If @expand is %FALSE, then the @cell
77015 is allocated no more space than it needs. Any unused space is divided
77016 evenly between cells for which @expand is %TRUE.</doc>
77017         <return-value transfer-ownership="none">
77018           <type name="none" c:type="void"/>
77019         </return-value>
77020         <parameters>
77021           <parameter name="cell" transfer-ownership="none">
77022             <doc xml:whitespace="preserve">The #GtkCellRenderer.</doc>
77023             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
77024           </parameter>
77025           <parameter name="expand" transfer-ownership="none">
77026             <doc xml:whitespace="preserve">%TRUE if @cell is to be given extra space allocated to @tree_column.</doc>
77027             <type name="boolean" c:type="gboolean"/>
77028           </parameter>
77029         </parameters>
77030       </method>
77031       <method name="clear" c:identifier="gtk_tree_view_column_clear">
77032         <doc xml:whitespace="preserve">Unsets all the mappings on all renderers on the @tree_column.</doc>
77033         <return-value transfer-ownership="none">
77034           <type name="none" c:type="void"/>
77035         </return-value>
77036       </method>
77037       <method name="get_cell_renderers"
77038               c:identifier="gtk_tree_view_column_get_cell_renderers"
77039               introspectable="0"
77040               deprecated="use gtk_cell_layout_get_cells() instead."
77041               deprecated-version="2.18">
77042         <doc xml:whitespace="preserve">Returns a newly-allocated #GList of all the cell renderers in the column,
77043 in no particular order.  The list must be freed with g_list_free().</doc>
77044         <return-value transfer-ownership="full">
77045           <doc xml:whitespace="preserve">A list of #GtkCellRenderers</doc>
77046           <type name="GLib.List" c:type="GList*">
77047             <type name="any" c:type="gpointer"/>
77048           </type>
77049         </return-value>
77050       </method>
77051       <method name="add_attribute"
77052               c:identifier="gtk_tree_view_column_add_attribute">
77053         <doc xml:whitespace="preserve">Adds an attribute mapping to the list in @tree_column.  The @column is the
77054 column of the model to get a value from, and the @attribute is the
77055 parameter on @cell_renderer to be set from the value. So for example
77056 if column 2 of the model contains strings, you could have the
77057 "text" attribute of a #GtkCellRendererText get its values from
77058 column 2.</doc>
77059         <return-value transfer-ownership="none">
77060           <type name="none" c:type="void"/>
77061         </return-value>
77062         <parameters>
77063           <parameter name="cell_renderer" transfer-ownership="none">
77064             <doc xml:whitespace="preserve">the #GtkCellRenderer to set attributes on</doc>
77065             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
77066           </parameter>
77067           <parameter name="attribute" transfer-ownership="none">
77068             <doc xml:whitespace="preserve">An attribute on the renderer</doc>
77069             <type name="utf8" c:type="gchar*"/>
77070           </parameter>
77071           <parameter name="column" transfer-ownership="none">
77072             <doc xml:whitespace="preserve">The column position on the model to get the attribute from.</doc>
77073             <type name="int" c:type="gint"/>
77074           </parameter>
77075         </parameters>
77076       </method>
77077       <method name="set_attributes"
77078               c:identifier="gtk_tree_view_column_set_attributes"
77079               introspectable="0">
77080         <doc xml:whitespace="preserve">Sets the attributes in the list as the attributes of @tree_column.
77081 The attributes should be in attribute/column order, as in
77082 gtk_tree_view_column_add_attribute(). All existing attributes
77083 are removed, and replaced with the new attributes.</doc>
77084         <return-value transfer-ownership="none">
77085           <type name="none" c:type="void"/>
77086         </return-value>
77087         <parameters>
77088           <parameter name="cell_renderer" transfer-ownership="none">
77089             <doc xml:whitespace="preserve">the #GtkCellRenderer we're setting the attributes of</doc>
77090             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
77091           </parameter>
77092           <parameter transfer-ownership="none">
77093             <varargs>
77094             </varargs>
77095           </parameter>
77096         </parameters>
77097       </method>
77098       <method name="set_cell_data_func"
77099               c:identifier="gtk_tree_view_column_set_cell_data_func">
77100         <doc xml:whitespace="preserve">Sets the #GtkTreeViewColumnFunc to use for the column.  This
77101 function is used instead of the standard attributes mapping for
77102 setting the column value, and should set the value of @tree_column's
77103 cell renderer as appropriate.  @func may be %NULL to remove an
77104 older one.</doc>
77105         <return-value transfer-ownership="none">
77106           <type name="none" c:type="void"/>
77107         </return-value>
77108         <parameters>
77109           <parameter name="cell_renderer" transfer-ownership="none">
77110             <doc xml:whitespace="preserve">A #GtkCellRenderer</doc>
77111             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
77112           </parameter>
77113           <parameter name="func"
77114                      transfer-ownership="none"
77115                      scope="notified"
77116                      closure="3"
77117                      destroy="4">
77118             <doc xml:whitespace="preserve">The #GtkTreeViewColumnFunc to use.</doc>
77119             <type name="TreeCellDataFunc" c:type="GtkTreeCellDataFunc"/>
77120           </parameter>
77121           <parameter name="func_data" transfer-ownership="none">
77122             <doc xml:whitespace="preserve">The user data for @func.</doc>
77123             <type name="any" c:type="gpointer"/>
77124           </parameter>
77125           <parameter name="destroy" transfer-ownership="none" scope="call">
77126             <doc xml:whitespace="preserve">The destroy notification for @func_data</doc>
77127             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
77128           </parameter>
77129         </parameters>
77130       </method>
77131       <method name="clear_attributes"
77132               c:identifier="gtk_tree_view_column_clear_attributes">
77133         <doc xml:whitespace="preserve">Clears all existing attributes previously set with
77134 gtk_tree_view_column_set_attributes().</doc>
77135         <return-value transfer-ownership="none">
77136           <type name="none" c:type="void"/>
77137         </return-value>
77138         <parameters>
77139           <parameter name="cell_renderer" transfer-ownership="none">
77140             <doc xml:whitespace="preserve">a #GtkCellRenderer to clear the attribute mapping on.</doc>
77141             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
77142           </parameter>
77143         </parameters>
77144       </method>
77145       <method name="set_spacing"
77146               c:identifier="gtk_tree_view_column_set_spacing">
77147         <doc xml:whitespace="preserve">Sets the spacing field of @tree_column, which is the number of pixels to
77148 place between cell renderers packed into it.</doc>
77149         <return-value transfer-ownership="none">
77150           <type name="none" c:type="void"/>
77151         </return-value>
77152         <parameters>
77153           <parameter name="spacing" transfer-ownership="none">
77154             <doc xml:whitespace="preserve">distance between cell renderers in pixels.</doc>
77155             <type name="int" c:type="gint"/>
77156           </parameter>
77157         </parameters>
77158       </method>
77159       <method name="get_spacing"
77160               c:identifier="gtk_tree_view_column_get_spacing">
77161         <doc xml:whitespace="preserve">Returns the spacing of @tree_column.</doc>
77162         <return-value transfer-ownership="none">
77163           <doc xml:whitespace="preserve">the spacing of @tree_column.</doc>
77164           <type name="int" c:type="gint"/>
77165         </return-value>
77166       </method>
77167       <method name="set_visible"
77168               c:identifier="gtk_tree_view_column_set_visible">
77169         <doc xml:whitespace="preserve">Sets the visibility of @tree_column.</doc>
77170         <return-value transfer-ownership="none">
77171           <type name="none" c:type="void"/>
77172         </return-value>
77173         <parameters>
77174           <parameter name="visible" transfer-ownership="none">
77175             <doc xml:whitespace="preserve">%TRUE if the @tree_column is visible.</doc>
77176             <type name="boolean" c:type="gboolean"/>
77177           </parameter>
77178         </parameters>
77179       </method>
77180       <method name="get_visible"
77181               c:identifier="gtk_tree_view_column_get_visible">
77182         <doc xml:whitespace="preserve">Returns %TRUE if @tree_column is visible.
77183 the tree will show the column.</doc>
77184         <return-value transfer-ownership="none">
77185           <doc xml:whitespace="preserve">whether the column is visible or not.  If it is visible, then</doc>
77186           <type name="boolean" c:type="gboolean"/>
77187         </return-value>
77188       </method>
77189       <method name="set_resizable"
77190               c:identifier="gtk_tree_view_column_set_resizable">
77191         <doc xml:whitespace="preserve">If @resizable is %TRUE, then the user can explicitly resize the column by
77192 grabbing the outer edge of the column button.  If resizable is %TRUE and
77193 sizing mode of the column is #GTK_TREE_VIEW_COLUMN_AUTOSIZE, then the sizing
77194 mode is changed to #GTK_TREE_VIEW_COLUMN_GROW_ONLY.</doc>
77195         <return-value transfer-ownership="none">
77196           <type name="none" c:type="void"/>
77197         </return-value>
77198         <parameters>
77199           <parameter name="resizable" transfer-ownership="none">
77200             <doc xml:whitespace="preserve">%TRUE, if the column can be resized</doc>
77201             <type name="boolean" c:type="gboolean"/>
77202           </parameter>
77203         </parameters>
77204       </method>
77205       <method name="get_resizable"
77206               c:identifier="gtk_tree_view_column_get_resizable">
77207         <doc xml:whitespace="preserve">Returns %TRUE if the @tree_column can be resized by the end user.</doc>
77208         <return-value transfer-ownership="none">
77209           <doc xml:whitespace="preserve">%TRUE, if the @tree_column can be resized.</doc>
77210           <type name="boolean" c:type="gboolean"/>
77211         </return-value>
77212       </method>
77213       <method name="set_sizing" c:identifier="gtk_tree_view_column_set_sizing">
77214         <doc xml:whitespace="preserve">Sets the growth behavior of @tree_column to @type.</doc>
77215         <return-value transfer-ownership="none">
77216           <type name="none" c:type="void"/>
77217         </return-value>
77218         <parameters>
77219           <parameter name="type" transfer-ownership="none">
77220             <doc xml:whitespace="preserve">The #GtkTreeViewColumnSizing.</doc>
77221             <type name="TreeViewColumnSizing"
77222                   c:type="GtkTreeViewColumnSizing"/>
77223           </parameter>
77224         </parameters>
77225       </method>
77226       <method name="get_sizing" c:identifier="gtk_tree_view_column_get_sizing">
77227         <doc xml:whitespace="preserve">Returns the current type of @tree_column.</doc>
77228         <return-value transfer-ownership="full">
77229           <doc xml:whitespace="preserve">The type of @tree_column.</doc>
77230           <type name="TreeViewColumnSizing" c:type="GtkTreeViewColumnSizing"/>
77231         </return-value>
77232       </method>
77233       <method name="get_width" c:identifier="gtk_tree_view_column_get_width">
77234         <doc xml:whitespace="preserve">Returns the current size of @tree_column in pixels.</doc>
77235         <return-value transfer-ownership="none">
77236           <doc xml:whitespace="preserve">The current width of @tree_column.</doc>
77237           <type name="int" c:type="gint"/>
77238         </return-value>
77239       </method>
77240       <method name="get_fixed_width"
77241               c:identifier="gtk_tree_view_column_get_fixed_width">
77242         <doc xml:whitespace="preserve">Gets the fixed width of the column.  This value is only meaning may not be
77243 the actual width of the column on the screen, just what is requested.</doc>
77244         <return-value transfer-ownership="none">
77245           <doc xml:whitespace="preserve">the fixed width of the column</doc>
77246           <type name="int" c:type="gint"/>
77247         </return-value>
77248       </method>
77249       <method name="set_fixed_width"
77250               c:identifier="gtk_tree_view_column_set_fixed_width">
77251         <doc xml:whitespace="preserve">Sets the size of the column in pixels.  This is meaningful only if the sizing
77252 type is #GTK_TREE_VIEW_COLUMN_FIXED.  The size of the column is clamped to
77253 the min/max width for the column.  Please note that the min/max width of the
77254 column doesn't actually affect the "fixed_width" property of the widget, just
77255 the actual size when displayed.</doc>
77256         <return-value transfer-ownership="none">
77257           <type name="none" c:type="void"/>
77258         </return-value>
77259         <parameters>
77260           <parameter name="fixed_width" transfer-ownership="none">
77261             <doc xml:whitespace="preserve">The size to set @tree_column to. Must be greater than 0.</doc>
77262             <type name="int" c:type="gint"/>
77263           </parameter>
77264         </parameters>
77265       </method>
77266       <method name="set_min_width"
77267               c:identifier="gtk_tree_view_column_set_min_width">
77268         <doc xml:whitespace="preserve">Sets the minimum width of the @tree_column.  If @min_width is -1, then the
77269 minimum width is unset.</doc>
77270         <return-value transfer-ownership="none">
77271           <type name="none" c:type="void"/>
77272         </return-value>
77273         <parameters>
77274           <parameter name="min_width" transfer-ownership="none">
77275             <doc xml:whitespace="preserve">The minimum width of the column in pixels, or -1.</doc>
77276             <type name="int" c:type="gint"/>
77277           </parameter>
77278         </parameters>
77279       </method>
77280       <method name="get_min_width"
77281               c:identifier="gtk_tree_view_column_get_min_width">
77282         <doc xml:whitespace="preserve">Returns the minimum width in pixels of the @tree_column, or -1 if no minimum
77283 width is set.</doc>
77284         <return-value transfer-ownership="none">
77285           <doc xml:whitespace="preserve">The minimum width of the @tree_column.</doc>
77286           <type name="int" c:type="gint"/>
77287         </return-value>
77288       </method>
77289       <method name="set_max_width"
77290               c:identifier="gtk_tree_view_column_set_max_width">
77291         <doc xml:whitespace="preserve">Sets the maximum width of the @tree_column.  If @max_width is -1, then the
77292 maximum width is unset.  Note, the column can actually be wider than max
77293 width if it's the last column in a view.  In this case, the column expands to
77294 fill any extra space.</doc>
77295         <return-value transfer-ownership="none">
77296           <type name="none" c:type="void"/>
77297         </return-value>
77298         <parameters>
77299           <parameter name="max_width" transfer-ownership="none">
77300             <doc xml:whitespace="preserve">The maximum width of the column in pixels, or -1.</doc>
77301             <type name="int" c:type="gint"/>
77302           </parameter>
77303         </parameters>
77304       </method>
77305       <method name="get_max_width"
77306               c:identifier="gtk_tree_view_column_get_max_width">
77307         <doc xml:whitespace="preserve">Returns the maximum width in pixels of the @tree_column, or -1 if no maximum
77308 width is set.</doc>
77309         <return-value transfer-ownership="none">
77310           <doc xml:whitespace="preserve">The maximum width of the @tree_column.</doc>
77311           <type name="int" c:type="gint"/>
77312         </return-value>
77313       </method>
77314       <method name="clicked" c:identifier="gtk_tree_view_column_clicked">
77315         <doc xml:whitespace="preserve">Emits the "clicked" signal on the column.  This function will only work if</doc>
77316         <return-value transfer-ownership="none">
77317           <type name="none" c:type="void"/>
77318         </return-value>
77319       </method>
77320       <method name="set_title" c:identifier="gtk_tree_view_column_set_title">
77321         <doc xml:whitespace="preserve">Sets the title of the @tree_column.  If a custom widget has been set, then
77322 this value is ignored.</doc>
77323         <return-value transfer-ownership="none">
77324           <type name="none" c:type="void"/>
77325         </return-value>
77326         <parameters>
77327           <parameter name="title" transfer-ownership="none">
77328             <doc xml:whitespace="preserve">The title of the @tree_column.</doc>
77329             <type name="utf8" c:type="gchar*"/>
77330           </parameter>
77331         </parameters>
77332       </method>
77333       <method name="get_title" c:identifier="gtk_tree_view_column_get_title">
77334         <doc xml:whitespace="preserve">Returns the title of the widget.
77335 modified or freed.</doc>
77336         <return-value transfer-ownership="none">
77337           <doc xml:whitespace="preserve">the title of the column. This string should not be</doc>
77338           <type name="utf8" c:type="gchar*"/>
77339         </return-value>
77340       </method>
77341       <method name="set_expand"
77342               c:identifier="gtk_tree_view_column_set_expand"
77343               version="2.4">
77344         <doc xml:whitespace="preserve">Sets the column to take available extra space.  This space is shared equally
77345 amongst all columns that have the expand set to %TRUE.  If no column has this
77346 option set, then the last column gets all extra space.  By default, every
77347 column is created with this %FALSE.</doc>
77348         <return-value transfer-ownership="none">
77349           <type name="none" c:type="void"/>
77350         </return-value>
77351         <parameters>
77352           <parameter name="expand" transfer-ownership="none">
77353             <doc xml:whitespace="preserve">%TRUE if the column should take available extra space, %FALSE if not</doc>
77354             <type name="boolean" c:type="gboolean"/>
77355           </parameter>
77356         </parameters>
77357       </method>
77358       <method name="get_expand"
77359               c:identifier="gtk_tree_view_column_get_expand"
77360               version="2.4">
77361         <doc xml:whitespace="preserve">Return %TRUE if the column expands to take any available space.</doc>
77362         <return-value transfer-ownership="none">
77363           <doc xml:whitespace="preserve">%TRUE, if the column expands</doc>
77364           <type name="boolean" c:type="gboolean"/>
77365         </return-value>
77366       </method>
77367       <method name="set_clickable"
77368               c:identifier="gtk_tree_view_column_set_clickable">
77369         <doc xml:whitespace="preserve">Sets the header to be active if @active is %TRUE.  When the header is active,
77370 then it can take keyboard focus, and can be clicked.</doc>
77371         <return-value transfer-ownership="none">
77372           <type name="none" c:type="void"/>
77373         </return-value>
77374         <parameters>
77375           <parameter name="clickable" transfer-ownership="none">
77376             <doc xml:whitespace="preserve">%TRUE if the header is active.</doc>
77377             <type name="boolean" c:type="gboolean"/>
77378           </parameter>
77379         </parameters>
77380       </method>
77381       <method name="get_clickable"
77382               c:identifier="gtk_tree_view_column_get_clickable">
77383         <doc xml:whitespace="preserve">Returns %TRUE if the user can click on the header for the column.</doc>
77384         <return-value transfer-ownership="none">
77385           <doc xml:whitespace="preserve">%TRUE if user can click the column header.</doc>
77386           <type name="boolean" c:type="gboolean"/>
77387         </return-value>
77388       </method>
77389       <method name="set_widget" c:identifier="gtk_tree_view_column_set_widget">
77390         <doc xml:whitespace="preserve">Sets the widget in the header to be @widget.  If widget is %NULL, then the
77391 header button is set with a #GtkLabel set to the title of @tree_column.</doc>
77392         <return-value transfer-ownership="none">
77393           <type name="none" c:type="void"/>
77394         </return-value>
77395         <parameters>
77396           <parameter name="widget" transfer-ownership="none" allow-none="1">
77397             <doc xml:whitespace="preserve">A child #GtkWidget, or %NULL.</doc>
77398             <type name="Widget" c:type="GtkWidget*"/>
77399           </parameter>
77400         </parameters>
77401       </method>
77402       <method name="get_widget" c:identifier="gtk_tree_view_column_get_widget">
77403         <doc xml:whitespace="preserve">Returns the #GtkWidget in the button on the column header.  If a custom
77404 widget has not been set then %NULL is returned.</doc>
77405         <return-value transfer-ownership="full">
77406           <doc xml:whitespace="preserve">The #GtkWidget in the column header, or %NULL</doc>
77407           <type name="Widget" c:type="GtkWidget*"/>
77408         </return-value>
77409       </method>
77410       <method name="set_alignment"
77411               c:identifier="gtk_tree_view_column_set_alignment">
77412         <doc xml:whitespace="preserve">Sets the alignment of the title or custom widget inside the column header.
77413 The alignment determines its location inside the button -- 0.0 for left, 0.5
77414 for center, 1.0 for right.</doc>
77415         <return-value transfer-ownership="none">
77416           <type name="none" c:type="void"/>
77417         </return-value>
77418         <parameters>
77419           <parameter name="xalign" transfer-ownership="none">
77420             <doc xml:whitespace="preserve">The alignment, which is between [0.0 and 1.0] inclusive.</doc>
77421             <type name="float" c:type="gfloat"/>
77422           </parameter>
77423         </parameters>
77424       </method>
77425       <method name="get_alignment"
77426               c:identifier="gtk_tree_view_column_get_alignment">
77427         <doc xml:whitespace="preserve">Returns the current x alignment of @tree_column.  This value can range
77428 between 0.0 and 1.0.</doc>
77429         <return-value transfer-ownership="none">
77430           <doc xml:whitespace="preserve">The current alignent of @tree_column.</doc>
77431           <type name="float" c:type="gfloat"/>
77432         </return-value>
77433       </method>
77434       <method name="set_reorderable"
77435               c:identifier="gtk_tree_view_column_set_reorderable">
77436         <doc xml:whitespace="preserve">If @reorderable is %TRUE, then the column can be reordered by the end user
77437 dragging the header.</doc>
77438         <return-value transfer-ownership="none">
77439           <type name="none" c:type="void"/>
77440         </return-value>
77441         <parameters>
77442           <parameter name="reorderable" transfer-ownership="none">
77443             <doc xml:whitespace="preserve">%TRUE, if the column can be reordered.</doc>
77444             <type name="boolean" c:type="gboolean"/>
77445           </parameter>
77446         </parameters>
77447       </method>
77448       <method name="get_reorderable"
77449               c:identifier="gtk_tree_view_column_get_reorderable">
77450         <doc xml:whitespace="preserve">Returns %TRUE if the @tree_column can be reordered by the user.</doc>
77451         <return-value transfer-ownership="none">
77452           <doc xml:whitespace="preserve">%TRUE if the @tree_column can be reordered by the user.</doc>
77453           <type name="boolean" c:type="gboolean"/>
77454         </return-value>
77455       </method>
77456       <method name="set_sort_column_id"
77457               c:identifier="gtk_tree_view_column_set_sort_column_id">
77458         <doc xml:whitespace="preserve">Sets the logical @sort_column_id that this column sorts on when this column 
77459 is selected for sorting.  Doing so makes the column header clickable.</doc>
77460         <return-value transfer-ownership="none">
77461           <type name="none" c:type="void"/>
77462         </return-value>
77463         <parameters>
77464           <parameter name="sort_column_id" transfer-ownership="none">
77465             <doc xml:whitespace="preserve">The @sort_column_id of the model to sort on.</doc>
77466             <type name="int" c:type="gint"/>
77467           </parameter>
77468         </parameters>
77469       </method>
77470       <method name="get_sort_column_id"
77471               c:identifier="gtk_tree_view_column_get_sort_column_id">
77472         <doc xml:whitespace="preserve">Gets the logical @sort_column_id that the model sorts on when this
77473 column is selected for sorting.
77474 See gtk_tree_view_column_set_sort_column_id().
77475 this column can't be used for sorting.</doc>
77476         <return-value transfer-ownership="none">
77477           <doc xml:whitespace="preserve">the current @sort_column_id for this column, or -1 if</doc>
77478           <type name="int" c:type="gint"/>
77479         </return-value>
77480       </method>
77481       <method name="set_sort_indicator"
77482               c:identifier="gtk_tree_view_column_set_sort_indicator">
77483         <doc xml:whitespace="preserve">Call this function with a @setting of %TRUE to display an arrow in
77484 the header button indicating the column is sorted. Call
77485 gtk_tree_view_column_set_sort_order() to change the direction of
77486 the arrow.</doc>
77487         <return-value transfer-ownership="none">
77488           <type name="none" c:type="void"/>
77489         </return-value>
77490         <parameters>
77491           <parameter name="setting" transfer-ownership="none">
77492             <doc xml:whitespace="preserve">%TRUE to display an indicator that the column is sorted</doc>
77493             <type name="boolean" c:type="gboolean"/>
77494           </parameter>
77495         </parameters>
77496       </method>
77497       <method name="get_sort_indicator"
77498               c:identifier="gtk_tree_view_column_get_sort_indicator">
77499         <doc xml:whitespace="preserve">Gets the value set by gtk_tree_view_column_set_sort_indicator().</doc>
77500         <return-value transfer-ownership="none">
77501           <doc xml:whitespace="preserve">whether the sort indicator arrow is displayed</doc>
77502           <type name="boolean" c:type="gboolean"/>
77503         </return-value>
77504       </method>
77505       <method name="set_sort_order"
77506               c:identifier="gtk_tree_view_column_set_sort_order">
77507         <doc xml:whitespace="preserve">Changes the appearance of the sort indicator. 
77508 This &lt;emphasis&gt;does not&lt;/emphasis&gt; actually sort the model.  Use
77509 gtk_tree_view_column_set_sort_column_id() if you want automatic sorting
77510 support.  This function is primarily for custom sorting behavior, and should
77511 be used in conjunction with gtk_tree_sortable_set_sort_column() to do
77512 that. For custom models, the mechanism will vary. 
77513 The sort indicator changes direction to indicate normal sort or reverse sort.
77514 Note that you must have the sort indicator enabled to see anything when 
77515 calling this function; see gtk_tree_view_column_set_sort_indicator().</doc>
77516         <return-value transfer-ownership="none">
77517           <type name="none" c:type="void"/>
77518         </return-value>
77519         <parameters>
77520           <parameter name="order" transfer-ownership="none">
77521             <doc xml:whitespace="preserve">sort order that the sort indicator should indicate</doc>
77522             <type name="SortType" c:type="GtkSortType"/>
77523           </parameter>
77524         </parameters>
77525       </method>
77526       <method name="get_sort_order"
77527               c:identifier="gtk_tree_view_column_get_sort_order">
77528         <doc xml:whitespace="preserve">Gets the value set by gtk_tree_view_column_set_sort_order().</doc>
77529         <return-value transfer-ownership="full">
77530           <doc xml:whitespace="preserve">the sort order the sort indicator is indicating</doc>
77531           <type name="SortType" c:type="GtkSortType"/>
77532         </return-value>
77533       </method>
77534       <method name="cell_set_cell_data"
77535               c:identifier="gtk_tree_view_column_cell_set_cell_data">
77536         <doc xml:whitespace="preserve">Sets the cell renderer based on the @tree_model and @iter.  That is, for
77537 every attribute mapping in @tree_column, it will get a value from the set
77538 column on the @iter, and use that value to set the attribute on the cell
77539 renderer.  This is used primarily by the #GtkTreeView.</doc>
77540         <return-value transfer-ownership="none">
77541           <type name="none" c:type="void"/>
77542         </return-value>
77543         <parameters>
77544           <parameter name="tree_model" transfer-ownership="none">
77545             <doc xml:whitespace="preserve">The #GtkTreeModel to to get the cell renderers attributes from.</doc>
77546             <type name="TreeModel" c:type="GtkTreeModel*"/>
77547           </parameter>
77548           <parameter name="iter" transfer-ownership="none">
77549             <doc xml:whitespace="preserve">The #GtkTreeIter to to get the cell renderer's attributes from.</doc>
77550             <type name="TreeIter" c:type="GtkTreeIter*"/>
77551           </parameter>
77552           <parameter name="is_expander" transfer-ownership="none">
77553             <doc xml:whitespace="preserve">%TRUE, if the row has children</doc>
77554             <type name="boolean" c:type="gboolean"/>
77555           </parameter>
77556           <parameter name="is_expanded" transfer-ownership="none">
77557             <doc xml:whitespace="preserve">%TRUE, if the row has visible children</doc>
77558             <type name="boolean" c:type="gboolean"/>
77559           </parameter>
77560         </parameters>
77561       </method>
77562       <method name="cell_get_size"
77563               c:identifier="gtk_tree_view_column_cell_get_size">
77564         <doc xml:whitespace="preserve">Obtains the width and height needed to render the column.  This is used
77565 primarily by the #GtkTreeView.</doc>
77566         <return-value transfer-ownership="none">
77567           <type name="none" c:type="void"/>
77568         </return-value>
77569         <parameters>
77570           <parameter name="cell_area" transfer-ownership="none" allow-none="1">
77571             <doc xml:whitespace="preserve">The area a cell in the column will be allocated, or %NULL</doc>
77572             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
77573           </parameter>
77574           <parameter name="x_offset"
77575                      direction="out"
77576                      caller-allocates="0"
77577                      transfer-ownership="full"
77578                      allow-none="1">
77579             <doc xml:whitespace="preserve">location to return x offset of a cell relative to @cell_area, or %NULL</doc>
77580             <type name="int" c:type="gint*"/>
77581           </parameter>
77582           <parameter name="y_offset"
77583                      direction="out"
77584                      caller-allocates="0"
77585                      transfer-ownership="full"
77586                      allow-none="1">
77587             <doc xml:whitespace="preserve">location to return y offset of a cell relative to @cell_area, or %NULL</doc>
77588             <type name="int" c:type="gint*"/>
77589           </parameter>
77590           <parameter name="width"
77591                      direction="out"
77592                      caller-allocates="0"
77593                      transfer-ownership="full"
77594                      allow-none="1">
77595             <doc xml:whitespace="preserve">location to return width needed to render a cell, or %NULL</doc>
77596             <type name="int" c:type="gint*"/>
77597           </parameter>
77598           <parameter name="height"
77599                      direction="out"
77600                      caller-allocates="0"
77601                      transfer-ownership="full"
77602                      allow-none="1">
77603             <doc xml:whitespace="preserve">location to return height needed to render a cell, or %NULL</doc>
77604             <type name="int" c:type="gint*"/>
77605           </parameter>
77606         </parameters>
77607       </method>
77608       <method name="cell_is_visible"
77609               c:identifier="gtk_tree_view_column_cell_is_visible">
77610         <doc xml:whitespace="preserve">Returns %TRUE if any of the cells packed into the @tree_column are visible.
77611 For this to be meaningful, you must first initialize the cells with
77612 gtk_tree_view_column_cell_set_cell_data()</doc>
77613         <return-value transfer-ownership="none">
77614           <doc xml:whitespace="preserve">%TRUE, if any of the cells packed into the @tree_column are currently visible</doc>
77615           <type name="boolean" c:type="gboolean"/>
77616         </return-value>
77617       </method>
77618       <method name="focus_cell"
77619               c:identifier="gtk_tree_view_column_focus_cell"
77620               version="2.2">
77621         <doc xml:whitespace="preserve">Sets the current keyboard focus to be at @cell, if the column contains
77622 2 or more editable and activatable cells.</doc>
77623         <return-value transfer-ownership="none">
77624           <type name="none" c:type="void"/>
77625         </return-value>
77626         <parameters>
77627           <parameter name="cell" transfer-ownership="none">
77628             <doc xml:whitespace="preserve">A #GtkCellRenderer</doc>
77629             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
77630           </parameter>
77631         </parameters>
77632       </method>
77633       <method name="cell_get_position"
77634               c:identifier="gtk_tree_view_column_cell_get_position">
77635         <doc xml:whitespace="preserve">Obtains the horizontal position and size of a cell in a column. If the
77636 cell is not found in the column, @start_pos and @width are not changed and
77637 %FALSE is returned.</doc>
77638         <return-value transfer-ownership="none">
77639           <doc xml:whitespace="preserve">%TRUE if @cell belongs to @tree_column.</doc>
77640           <type name="boolean" c:type="gboolean"/>
77641         </return-value>
77642         <parameters>
77643           <parameter name="cell_renderer" transfer-ownership="none">
77644             <doc xml:whitespace="preserve">a #GtkCellRenderer</doc>
77645             <type name="CellRenderer" c:type="GtkCellRenderer*"/>
77646           </parameter>
77647           <parameter name="start_pos"
77648                      direction="out"
77649                      caller-allocates="0"
77650                      transfer-ownership="full">
77651             <doc xml:whitespace="preserve">return location for the horizontal position of @cell within</doc>
77652             <type name="int" c:type="gint*"/>
77653           </parameter>
77654           <parameter name="width"
77655                      direction="out"
77656                      caller-allocates="0"
77657                      transfer-ownership="full">
77658             <doc xml:whitespace="preserve">return location for the width of @cell, may be %NULL</doc>
77659             <type name="int" c:type="gint*"/>
77660           </parameter>
77661         </parameters>
77662       </method>
77663       <method name="queue_resize"
77664               c:identifier="gtk_tree_view_column_queue_resize"
77665               version="2.8">
77666         <doc xml:whitespace="preserve">Flags the column, and the cell renderers added to this column, to have
77667 their sizes renegotiated.</doc>
77668         <return-value transfer-ownership="none">
77669           <type name="none" c:type="void"/>
77670         </return-value>
77671       </method>
77672       <method name="get_tree_view"
77673               c:identifier="gtk_tree_view_column_get_tree_view"
77674               version="2.12">
77675         <doc xml:whitespace="preserve">Returns the #GtkTreeView wherein @tree_column has been inserted.  If
77676 returned.
77677 %NULL otherwise.</doc>
77678         <return-value transfer-ownership="full">
77679           <doc xml:whitespace="preserve">The tree view wherein @column has been inserted if any,</doc>
77680           <type name="Widget" c:type="GtkWidget*"/>
77681         </return-value>
77682       </method>
77683       <property name="alignment" writable="1" transfer-ownership="none">
77684         <type name="float" c:type="gfloat"/>
77685       </property>
77686       <property name="clickable" writable="1" transfer-ownership="none">
77687         <type name="boolean" c:type="gboolean"/>
77688       </property>
77689       <property name="expand" writable="1" transfer-ownership="none">
77690         <type name="boolean" c:type="gboolean"/>
77691       </property>
77692       <property name="fixed-width" writable="1" transfer-ownership="none">
77693         <type name="int" c:type="gint"/>
77694       </property>
77695       <property name="max-width" writable="1" transfer-ownership="none">
77696         <type name="int" c:type="gint"/>
77697       </property>
77698       <property name="min-width" writable="1" transfer-ownership="none">
77699         <type name="int" c:type="gint"/>
77700       </property>
77701       <property name="reorderable" writable="1" transfer-ownership="none">
77702         <type name="boolean" c:type="gboolean"/>
77703       </property>
77704       <property name="resizable" writable="1" transfer-ownership="none">
77705         <type name="boolean" c:type="gboolean"/>
77706       </property>
77707       <property name="sizing" writable="1" transfer-ownership="none">
77708         <type name="TreeViewColumnSizing" c:type="GtkTreeViewColumnSizing"/>
77709       </property>
77710       <property name="sort-column-id"
77711                 version="2.18"
77712                 writable="1"
77713                 transfer-ownership="none">
77714         <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
77715 clickable. Set to %-1 to make the column unsortable.</doc>
77716         <type name="int" c:type="gint"/>
77717       </property>
77718       <property name="sort-indicator" writable="1" transfer-ownership="none">
77719         <type name="boolean" c:type="gboolean"/>
77720       </property>
77721       <property name="sort-order" writable="1" transfer-ownership="none">
77722         <type name="SortType" c:type="GtkSortType"/>
77723       </property>
77724       <property name="spacing" writable="1" transfer-ownership="none">
77725         <type name="int" c:type="gint"/>
77726       </property>
77727       <property name="title" writable="1" transfer-ownership="none">
77728         <type name="utf8" c:type="gchararray"/>
77729       </property>
77730       <property name="visible" writable="1" transfer-ownership="none">
77731         <type name="boolean" c:type="gboolean"/>
77732       </property>
77733       <property name="widget" writable="1" transfer-ownership="none">
77734         <type name="Widget" c:type="GtkWidget"/>
77735       </property>
77736       <property name="width" transfer-ownership="none">
77737         <type name="int" c:type="gint"/>
77738       </property>
77739       <field name="parent">
77740         <type name="Object" c:type="GtkObject"/>
77741       </field>
77742       <field name="tree_view">
77743         <type name="Widget" c:type="GtkWidget*"/>
77744       </field>
77745       <field name="button">
77746         <type name="Widget" c:type="GtkWidget*"/>
77747       </field>
77748       <field name="child">
77749         <type name="Widget" c:type="GtkWidget*"/>
77750       </field>
77751       <field name="arrow">
77752         <type name="Widget" c:type="GtkWidget*"/>
77753       </field>
77754       <field name="alignment">
77755         <type name="Widget" c:type="GtkWidget*"/>
77756       </field>
77757       <field name="window">
77758         <type name="Gdk.Window" c:type="GdkWindow*"/>
77759       </field>
77760       <field name="editable_widget">
77761         <type name="CellEditable" c:type="GtkCellEditable*"/>
77762       </field>
77763       <field name="xalign">
77764         <type name="float" c:type="gfloat"/>
77765       </field>
77766       <field name="property_changed_signal">
77767         <type name="uint" c:type="guint"/>
77768       </field>
77769       <field name="spacing">
77770         <type name="int" c:type="gint"/>
77771       </field>
77772       <field name="column_type">
77773         <type name="TreeViewColumnSizing" c:type="GtkTreeViewColumnSizing"/>
77774       </field>
77775       <field name="requested_width">
77776         <type name="int" c:type="gint"/>
77777       </field>
77778       <field name="button_request">
77779         <type name="int" c:type="gint"/>
77780       </field>
77781       <field name="resized_width">
77782         <type name="int" c:type="gint"/>
77783       </field>
77784       <field name="width">
77785         <type name="int" c:type="gint"/>
77786       </field>
77787       <field name="fixed_width">
77788         <type name="int" c:type="gint"/>
77789       </field>
77790       <field name="min_width">
77791         <type name="int" c:type="gint"/>
77792       </field>
77793       <field name="max_width">
77794         <type name="int" c:type="gint"/>
77795       </field>
77796       <field name="drag_x">
77797         <type name="int" c:type="gint"/>
77798       </field>
77799       <field name="drag_y">
77800         <type name="int" c:type="gint"/>
77801       </field>
77802       <field name="title">
77803         <type name="utf8" c:type="gchar*"/>
77804       </field>
77805       <field name="cell_list">
77806         <type name="GLib.List" c:type="GList*">
77807           <type name="any" c:type="gpointer"/>
77808         </type>
77809       </field>
77810       <field name="sort_clicked_signal">
77811         <type name="uint" c:type="guint"/>
77812       </field>
77813       <field name="sort_column_changed_signal">
77814         <type name="uint" c:type="guint"/>
77815       </field>
77816       <field name="sort_column_id">
77817         <type name="int" c:type="gint"/>
77818       </field>
77819       <field name="sort_order">
77820         <type name="SortType" c:type="GtkSortType"/>
77821       </field>
77822       <field name="visible" bits="1">
77823         <type name="uint" c:type="guint"/>
77824       </field>
77825       <field name="resizable" bits="1">
77826         <type name="uint" c:type="guint"/>
77827       </field>
77828       <field name="clickable" bits="1">
77829         <type name="uint" c:type="guint"/>
77830       </field>
77831       <field name="dirty" bits="1">
77832         <type name="uint" c:type="guint"/>
77833       </field>
77834       <field name="show_sort_indicator" bits="1">
77835         <type name="uint" c:type="guint"/>
77836       </field>
77837       <field name="maybe_reordered" bits="1">
77838         <type name="uint" c:type="guint"/>
77839       </field>
77840       <field name="reorderable" bits="1">
77841         <type name="uint" c:type="guint"/>
77842       </field>
77843       <field name="use_resized_width" bits="1">
77844         <type name="uint" c:type="guint"/>
77845       </field>
77846       <field name="expand" bits="1">
77847         <type name="uint" c:type="guint"/>
77848       </field>
77849       <glib:signal name="clicked">
77850         <return-value transfer-ownership="full">
77851           <type name="none" c:type="void"/>
77852         </return-value>
77853       </glib:signal>
77854     </class>
77855     <record name="TreeViewColumnClass"
77856             c:type="GtkTreeViewColumnClass"
77857             glib:is-gtype-struct-for="TreeViewColumn">
77858       <field name="parent_class">
77859         <type name="ObjectClass" c:type="GtkObjectClass"/>
77860       </field>
77861       <field name="clicked">
77862         <callback name="clicked" c:type="clicked">
77863           <return-value transfer-ownership="none">
77864             <type name="none" c:type="void"/>
77865           </return-value>
77866           <parameters>
77867             <parameter name="tree_column" transfer-ownership="none">
77868               <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
77869             </parameter>
77870           </parameters>
77871         </callback>
77872       </field>
77873       <field name="gtk_reserved1">
77874         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
77875           <return-value transfer-ownership="none">
77876             <type name="none" c:type="void"/>
77877           </return-value>
77878         </callback>
77879       </field>
77880       <field name="gtk_reserved2">
77881         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
77882           <return-value transfer-ownership="none">
77883             <type name="none" c:type="void"/>
77884           </return-value>
77885         </callback>
77886       </field>
77887       <field name="gtk_reserved3">
77888         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
77889           <return-value transfer-ownership="none">
77890             <type name="none" c:type="void"/>
77891           </return-value>
77892         </callback>
77893       </field>
77894       <field name="gtk_reserved4">
77895         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
77896           <return-value transfer-ownership="none">
77897             <type name="none" c:type="void"/>
77898           </return-value>
77899         </callback>
77900       </field>
77901     </record>
77902     <callback name="TreeViewColumnDropFunc" c:type="GtkTreeViewColumnDropFunc">
77903       <return-value transfer-ownership="none">
77904         <type name="boolean" c:type="gboolean"/>
77905       </return-value>
77906       <parameters>
77907         <parameter name="tree_view" transfer-ownership="none">
77908           <type name="TreeView" c:type="GtkTreeView*"/>
77909         </parameter>
77910         <parameter name="column" transfer-ownership="none">
77911           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
77912         </parameter>
77913         <parameter name="prev_column" transfer-ownership="none">
77914           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
77915         </parameter>
77916         <parameter name="next_column" transfer-ownership="none">
77917           <type name="TreeViewColumn" c:type="GtkTreeViewColumn*"/>
77918         </parameter>
77919         <parameter name="data" transfer-ownership="none">
77920           <type name="any" c:type="gpointer"/>
77921         </parameter>
77922       </parameters>
77923     </callback>
77924     <enumeration name="TreeViewColumnSizing"
77925                  glib:type-name="GtkTreeViewColumnSizing"
77926                  glib:get-type="gtk_tree_view_column_sizing_get_type"
77927                  c:type="GtkTreeViewColumnSizing">
77928       <member name="grow_only"
77929               value="0"
77930               c:identifier="GTK_TREE_VIEW_COLUMN_GROW_ONLY"
77931               glib:nick="grow-only"/>
77932       <member name="autosize"
77933               value="1"
77934               c:identifier="GTK_TREE_VIEW_COLUMN_AUTOSIZE"
77935               glib:nick="autosize"/>
77936       <member name="fixed"
77937               value="2"
77938               c:identifier="GTK_TREE_VIEW_COLUMN_FIXED"
77939               glib:nick="fixed"/>
77940     </enumeration>
77941     <enumeration name="TreeViewDropPosition"
77942                  glib:type-name="GtkTreeViewDropPosition"
77943                  glib:get-type="gtk_tree_view_drop_position_get_type"
77944                  c:type="GtkTreeViewDropPosition">
77945       <member name="before"
77946               value="0"
77947               c:identifier="GTK_TREE_VIEW_DROP_BEFORE"
77948               glib:nick="before"/>
77949       <member name="after"
77950               value="1"
77951               c:identifier="GTK_TREE_VIEW_DROP_AFTER"
77952               glib:nick="after"/>
77953       <member name="into_or_before"
77954               value="2"
77955               c:identifier="GTK_TREE_VIEW_DROP_INTO_OR_BEFORE"
77956               glib:nick="into-or-before"/>
77957       <member name="into_or_after"
77958               value="3"
77959               c:identifier="GTK_TREE_VIEW_DROP_INTO_OR_AFTER"
77960               glib:nick="into-or-after"/>
77961     </enumeration>
77962     <enumeration name="TreeViewGridLines"
77963                  glib:type-name="GtkTreeViewGridLines"
77964                  glib:get-type="gtk_tree_view_grid_lines_get_type"
77965                  c:type="GtkTreeViewGridLines">
77966       <member name="none"
77967               value="0"
77968               c:identifier="GTK_TREE_VIEW_GRID_LINES_NONE"
77969               glib:nick="none"/>
77970       <member name="horizontal"
77971               value="1"
77972               c:identifier="GTK_TREE_VIEW_GRID_LINES_HORIZONTAL"
77973               glib:nick="horizontal"/>
77974       <member name="vertical"
77975               value="2"
77976               c:identifier="GTK_TREE_VIEW_GRID_LINES_VERTICAL"
77977               glib:nick="vertical"/>
77978       <member name="both"
77979               value="3"
77980               c:identifier="GTK_TREE_VIEW_GRID_LINES_BOTH"
77981               glib:nick="both"/>
77982     </enumeration>
77983     <callback name="TreeViewMappingFunc" c:type="GtkTreeViewMappingFunc">
77984       <return-value transfer-ownership="none">
77985         <type name="none" c:type="void"/>
77986       </return-value>
77987       <parameters>
77988         <parameter name="tree_view" transfer-ownership="none">
77989           <type name="TreeView" c:type="GtkTreeView*"/>
77990         </parameter>
77991         <parameter name="path" transfer-ownership="none">
77992           <type name="TreePath" c:type="GtkTreePath*"/>
77993         </parameter>
77994         <parameter name="user_data" transfer-ownership="none" closure="2">
77995           <type name="any" c:type="gpointer"/>
77996         </parameter>
77997       </parameters>
77998     </callback>
77999     <enumeration name="TreeViewMode"
78000                  glib:type-name="GtkTreeViewMode"
78001                  glib:get-type="gtk_tree_view_mode_get_type"
78002                  c:type="GtkTreeViewMode">
78003       <member name="line"
78004               value="0"
78005               c:identifier="GTK_TREE_VIEW_LINE"
78006               glib:nick="line"/>
78007       <member name="item"
78008               value="1"
78009               c:identifier="GTK_TREE_VIEW_ITEM"
78010               glib:nick="item"/>
78011     </enumeration>
78012     <record name="TreeViewPrivate" c:type="GtkTreeViewPrivate">
78013     </record>
78014     <callback name="TreeViewRowSeparatorFunc"
78015               c:type="GtkTreeViewRowSeparatorFunc">
78016       <return-value transfer-ownership="none">
78017         <type name="boolean" c:type="gboolean"/>
78018       </return-value>
78019       <parameters>
78020         <parameter name="model" transfer-ownership="none">
78021           <type name="TreeModel" c:type="GtkTreeModel*"/>
78022         </parameter>
78023         <parameter name="iter" transfer-ownership="none">
78024           <type name="TreeIter" c:type="GtkTreeIter*"/>
78025         </parameter>
78026         <parameter name="data" transfer-ownership="none">
78027           <type name="any" c:type="gpointer"/>
78028         </parameter>
78029       </parameters>
78030     </callback>
78031     <callback name="TreeViewSearchEqualFunc"
78032               c:type="GtkTreeViewSearchEqualFunc">
78033       <return-value transfer-ownership="none">
78034         <type name="boolean" c:type="gboolean"/>
78035       </return-value>
78036       <parameters>
78037         <parameter name="model" transfer-ownership="none">
78038           <type name="TreeModel" c:type="GtkTreeModel*"/>
78039         </parameter>
78040         <parameter name="column" transfer-ownership="none">
78041           <type name="int" c:type="gint"/>
78042         </parameter>
78043         <parameter name="key" transfer-ownership="none">
78044           <type name="utf8" c:type="gchar*"/>
78045         </parameter>
78046         <parameter name="iter" transfer-ownership="none">
78047           <type name="TreeIter" c:type="GtkTreeIter*"/>
78048         </parameter>
78049         <parameter name="search_data" transfer-ownership="none">
78050           <type name="any" c:type="gpointer"/>
78051         </parameter>
78052       </parameters>
78053     </callback>
78054     <callback name="TreeViewSearchPositionFunc"
78055               c:type="GtkTreeViewSearchPositionFunc">
78056       <return-value transfer-ownership="none">
78057         <type name="none" c:type="void"/>
78058       </return-value>
78059       <parameters>
78060         <parameter name="tree_view" transfer-ownership="none">
78061           <type name="TreeView" c:type="GtkTreeView*"/>
78062         </parameter>
78063         <parameter name="search_dialog" transfer-ownership="none">
78064           <type name="Widget" c:type="GtkWidget*"/>
78065         </parameter>
78066         <parameter name="user_data" transfer-ownership="none" closure="2">
78067           <type name="any" c:type="gpointer"/>
78068         </parameter>
78069       </parameters>
78070     </callback>
78071     <record name="TypeInfo" c:type="GtkTypeInfo">
78072       <field name="type_name" writable="1">
78073         <type name="utf8" c:type="gchar*"/>
78074       </field>
78075       <field name="object_size" writable="1">
78076         <type name="uint" c:type="guint"/>
78077       </field>
78078       <field name="class_size" writable="1">
78079         <type name="uint" c:type="guint"/>
78080       </field>
78081       <field name="class_init_func" writable="1">
78082         <type name="ClassInitFunc" c:type="GtkClassInitFunc"/>
78083       </field>
78084       <field name="object_init_func" writable="1">
78085         <type name="ObjectInitFunc" c:type="GtkObjectInitFunc"/>
78086       </field>
78087       <field name="reserved_1" writable="1">
78088         <type name="any" c:type="gpointer"/>
78089       </field>
78090       <field name="reserved_2" writable="1">
78091         <type name="any" c:type="gpointer"/>
78092       </field>
78093       <field name="base_class_init_func" writable="1">
78094         <type name="ClassInitFunc" c:type="GtkClassInitFunc"/>
78095       </field>
78096     </record>
78097     <class name="UIManager"
78098            c:type="GtkUIManager"
78099            parent="GObject.Object"
78100            glib:type-name="GtkUIManager"
78101            glib:get-type="gtk_ui_manager_get_type"
78102            glib:type-struct="UIManagerClass">
78103       <implements name="Buildable"/>
78104       <constructor name="new" c:identifier="gtk_ui_manager_new" version="2.4">
78105         <doc xml:whitespace="preserve">Creates a new ui manager object.</doc>
78106         <return-value transfer-ownership="full">
78107           <doc xml:whitespace="preserve">a new ui manager object.</doc>
78108           <type name="UIManager" c:type="GtkUIManager*"/>
78109         </return-value>
78110       </constructor>
78111       <virtual-method name="get_widget" invoker="get_widget" version="2.4">
78112         <doc xml:whitespace="preserve">Looks up a widget by following a path. 
78113 The path consists of the names specified in the XML description of the UI. 
78114 separated by '/'. Elements which don't have a name or action attribute in 
78115 the XML (e.g. &amp;lt;popup&amp;gt;) can be addressed by their XML element name 
78116 (e.g. "popup"). The root element ("/ui") can be omitted in the path.
78117 Note that the widget found by following a path that ends in a &amp;lt;menu&amp;gt;
78118 element is the menuitem to which the menu is attached, not the menu itself.
78119 Also note that the widgets constructed by a ui manager are not tied to 
78120 the lifecycle of the ui manager. If you add the widgets returned by this 
78121 function to some container or explicitly ref them, they will survive the
78122 destruction of the ui manager.
78123 was found.</doc>
78124         <return-value transfer-ownership="none">
78125           <doc xml:whitespace="preserve">the widget found by following the path, or %NULL if no widget</doc>
78126           <type name="Widget" c:type="GtkWidget*"/>
78127         </return-value>
78128         <parameters>
78129           <parameter name="path" transfer-ownership="none">
78130             <doc xml:whitespace="preserve">a path</doc>
78131             <type name="utf8" c:type="gchar*"/>
78132           </parameter>
78133         </parameters>
78134       </virtual-method>
78135       <virtual-method name="get_action" invoker="get_action" version="2.4">
78136         <doc xml:whitespace="preserve">Looks up an action by following a path. See gtk_ui_manager_get_widget()
78137 for more information about paths.
78138 or %NULL if no widget was found.</doc>
78139         <return-value transfer-ownership="full">
78140           <doc xml:whitespace="preserve">the action whose proxy widget is found by following the path,</doc>
78141           <type name="Action" c:type="GtkAction*"/>
78142         </return-value>
78143         <parameters>
78144           <parameter name="path" transfer-ownership="none">
78145             <doc xml:whitespace="preserve">a path</doc>
78146             <type name="utf8" c:type="gchar*"/>
78147           </parameter>
78148         </parameters>
78149       </virtual-method>
78150       <method name="set_add_tearoffs"
78151               c:identifier="gtk_ui_manager_set_add_tearoffs"
78152               version="2.4">
78153         <doc xml:whitespace="preserve">Sets the "add_tearoffs" property, which controls whether menus 
78154 generated by this #GtkUIManager will have tearoff menu items. 
78155 Note that this only affects regular menus. Generated popup 
78156 menus never have tearoff menu items.</doc>
78157         <return-value transfer-ownership="none">
78158           <type name="none" c:type="void"/>
78159         </return-value>
78160         <parameters>
78161           <parameter name="add_tearoffs" transfer-ownership="none">
78162             <doc xml:whitespace="preserve">whether tearoff menu items are added</doc>
78163             <type name="boolean" c:type="gboolean"/>
78164           </parameter>
78165         </parameters>
78166       </method>
78167       <method name="get_add_tearoffs"
78168               c:identifier="gtk_ui_manager_get_add_tearoffs"
78169               version="2.4">
78170         <doc xml:whitespace="preserve">Returns whether menus generated by this #GtkUIManager
78171 will have tearoff menu items.</doc>
78172         <return-value transfer-ownership="none">
78173           <doc xml:whitespace="preserve">whether tearoff menu items are added</doc>
78174           <type name="boolean" c:type="gboolean"/>
78175         </return-value>
78176       </method>
78177       <method name="insert_action_group"
78178               c:identifier="gtk_ui_manager_insert_action_group"
78179               version="2.4">
78180         <doc xml:whitespace="preserve">Inserts an action group into the list of action groups associated 
78181 with @self. Actions in earlier groups hide actions with the same 
78182 name in later groups.</doc>
78183         <return-value transfer-ownership="none">
78184           <type name="none" c:type="void"/>
78185         </return-value>
78186         <parameters>
78187           <parameter name="action_group" transfer-ownership="none">
78188             <doc xml:whitespace="preserve">the action group to be inserted</doc>
78189             <type name="ActionGroup" c:type="GtkActionGroup*"/>
78190           </parameter>
78191           <parameter name="pos" transfer-ownership="none">
78192             <doc xml:whitespace="preserve">the position at which the group will be inserted.</doc>
78193             <type name="int" c:type="gint"/>
78194           </parameter>
78195         </parameters>
78196       </method>
78197       <method name="remove_action_group"
78198               c:identifier="gtk_ui_manager_remove_action_group"
78199               version="2.4">
78200         <doc xml:whitespace="preserve">Removes an action group from the list of action groups associated 
78201 with @self.</doc>
78202         <return-value transfer-ownership="none">
78203           <type name="none" c:type="void"/>
78204         </return-value>
78205         <parameters>
78206           <parameter name="action_group" transfer-ownership="none">
78207             <doc xml:whitespace="preserve">the action group to be removed</doc>
78208             <type name="ActionGroup" c:type="GtkActionGroup*"/>
78209           </parameter>
78210         </parameters>
78211       </method>
78212       <method name="get_action_groups"
78213               c:identifier="gtk_ui_manager_get_action_groups"
78214               version="2.4">
78215         <doc xml:whitespace="preserve">Returns the list of action groups associated with @self.
78216 action groups. The list is owned by GTK+
78217 and should not be modified.</doc>
78218         <return-value transfer-ownership="none">
78219           <doc xml:whitespace="preserve">a #GList of</doc>
78220           <type name="GLib.List" c:type="GList*">
78221             <type name="ActionGroup"/>
78222           </type>
78223         </return-value>
78224       </method>
78225       <method name="get_accel_group"
78226               c:identifier="gtk_ui_manager_get_accel_group"
78227               version="2.4">
78228         <doc xml:whitespace="preserve">Returns the #GtkAccelGroup associated with @self.</doc>
78229         <return-value transfer-ownership="none">
78230           <doc xml:whitespace="preserve">the #GtkAccelGroup.</doc>
78231           <type name="AccelGroup" c:type="GtkAccelGroup*"/>
78232         </return-value>
78233       </method>
78234       <method name="get_widget"
78235               c:identifier="gtk_ui_manager_get_widget"
78236               version="2.4">
78237         <doc xml:whitespace="preserve">Looks up a widget by following a path. 
78238 The path consists of the names specified in the XML description of the UI. 
78239 separated by '/'. Elements which don't have a name or action attribute in 
78240 the XML (e.g. &amp;lt;popup&amp;gt;) can be addressed by their XML element name 
78241 (e.g. "popup"). The root element ("/ui") can be omitted in the path.
78242 Note that the widget found by following a path that ends in a &amp;lt;menu&amp;gt;
78243 element is the menuitem to which the menu is attached, not the menu itself.
78244 Also note that the widgets constructed by a ui manager are not tied to 
78245 the lifecycle of the ui manager. If you add the widgets returned by this 
78246 function to some container or explicitly ref them, they will survive the
78247 destruction of the ui manager.
78248 was found.</doc>
78249         <return-value transfer-ownership="none">
78250           <doc xml:whitespace="preserve">the widget found by following the path, or %NULL if no widget</doc>
78251           <type name="Widget" c:type="GtkWidget*"/>
78252         </return-value>
78253         <parameters>
78254           <parameter name="path" transfer-ownership="none">
78255             <doc xml:whitespace="preserve">a path</doc>
78256             <type name="utf8" c:type="gchar*"/>
78257           </parameter>
78258         </parameters>
78259       </method>
78260       <method name="get_toplevels"
78261               c:identifier="gtk_ui_manager_get_toplevels"
78262               version="2.4">
78263         <doc xml:whitespace="preserve">Obtains a list of all toplevel widgets of the requested types.
78264 all toplevel widgets of the requested types.  Free the returned list with g_slist_free().</doc>
78265         <return-value transfer-ownership="container">
78266           <doc xml:whitespace="preserve">a newly-allocated #GSList of</doc>
78267           <type name="GLib.SList" c:type="GSList*">
78268             <type name="Widget"/>
78269           </type>
78270         </return-value>
78271         <parameters>
78272           <parameter name="types" transfer-ownership="none">
78273             <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>
78274             <type name="UIManagerItemType" c:type="GtkUIManagerItemType"/>
78275           </parameter>
78276         </parameters>
78277       </method>
78278       <method name="get_action"
78279               c:identifier="gtk_ui_manager_get_action"
78280               version="2.4">
78281         <doc xml:whitespace="preserve">Looks up an action by following a path. See gtk_ui_manager_get_widget()
78282 for more information about paths.
78283 or %NULL if no widget was found.</doc>
78284         <return-value transfer-ownership="full">
78285           <doc xml:whitespace="preserve">the action whose proxy widget is found by following the path,</doc>
78286           <type name="Action" c:type="GtkAction*"/>
78287         </return-value>
78288         <parameters>
78289           <parameter name="path" transfer-ownership="none">
78290             <doc xml:whitespace="preserve">a path</doc>
78291             <type name="utf8" c:type="gchar*"/>
78292           </parameter>
78293         </parameters>
78294       </method>
78295       <method name="add_ui_from_string"
78296               c:identifier="gtk_ui_manager_add_ui_from_string"
78297               version="2.4"
78298               throws="1">
78299         <doc xml:whitespace="preserve">Parses a string containing a &lt;link linkend="XML-UI"&gt;UI definition&lt;/link&gt; and 
78300 merges it with the current contents of @self. An enclosing &amp;lt;ui&amp;gt; 
78301 element is added if it is missing.
78302 to unmerge the UI with gtk_ui_manager_remove_ui(). If an error occurred,
78303 the return value is 0.</doc>
78304         <return-value transfer-ownership="none">
78305           <doc xml:whitespace="preserve">The merge id for the merged UI. The merge id can be used</doc>
78306           <type name="uint" c:type="guint"/>
78307         </return-value>
78308         <parameters>
78309           <parameter name="buffer" transfer-ownership="none">
78310             <doc xml:whitespace="preserve">the string to parse</doc>
78311             <type name="utf8" c:type="gchar*"/>
78312           </parameter>
78313           <parameter name="length" transfer-ownership="none">
78314             <doc xml:whitespace="preserve">the length of @buffer (may be -1 if @buffer is nul-terminated)</doc>
78315             <type name="gssize" c:type="gssize"/>
78316           </parameter>
78317         </parameters>
78318       </method>
78319       <method name="add_ui_from_file"
78320               c:identifier="gtk_ui_manager_add_ui_from_file"
78321               version="2.4"
78322               throws="1">
78323         <doc xml:whitespace="preserve">Parses a file containing a &lt;link linkend="XML-UI"&gt;UI definition&lt;/link&gt; and 
78324 merges it with the current contents of @self. 
78325 to unmerge the UI with gtk_ui_manager_remove_ui(). If an error occurred,
78326 the return value is 0.</doc>
78327         <return-value transfer-ownership="none">
78328           <doc xml:whitespace="preserve">The merge id for the merged UI. The merge id can be used</doc>
78329           <type name="uint" c:type="guint"/>
78330         </return-value>
78331         <parameters>
78332           <parameter name="filename" transfer-ownership="none">
78333             <doc xml:whitespace="preserve">the name of the file to parse</doc>
78334             <type name="utf8" c:type="gchar*"/>
78335           </parameter>
78336         </parameters>
78337       </method>
78338       <method name="add_ui" c:identifier="gtk_ui_manager_add_ui" version="2.4">
78339         <doc xml:whitespace="preserve">Adds a UI element to the current contents of @self. 
78340 If @type is %GTK_UI_MANAGER_AUTO, GTK+ inserts a menuitem, toolitem or 
78341 separator if such an element can be inserted at the place determined by 
78342 the place determined by @path.
78343 If @path points to a menuitem or toolitem, the new element will be inserted
78344 before or after this item, depending on @top.</doc>
78345         <return-value transfer-ownership="none">
78346           <type name="none" c:type="void"/>
78347         </return-value>
78348         <parameters>
78349           <parameter name="merge_id" transfer-ownership="none">
78350             <doc xml:whitespace="preserve">the merge id for the merged UI, see gtk_ui_manager_new_merge_id()</doc>
78351             <type name="uint" c:type="guint"/>
78352           </parameter>
78353           <parameter name="path" transfer-ownership="none">
78354             <doc xml:whitespace="preserve">a path</doc>
78355             <type name="utf8" c:type="gchar*"/>
78356           </parameter>
78357           <parameter name="name" transfer-ownership="none">
78358             <doc xml:whitespace="preserve">the name for the added UI element</doc>
78359             <type name="utf8" c:type="gchar*"/>
78360           </parameter>
78361           <parameter name="action" transfer-ownership="none" allow-none="1">
78362             <doc xml:whitespace="preserve">the name of the action to be proxied, or %NULL to add a separator</doc>
78363             <type name="utf8" c:type="gchar*"/>
78364           </parameter>
78365           <parameter name="type" transfer-ownership="none">
78366             <doc xml:whitespace="preserve">the type of UI element to add.</doc>
78367             <type name="UIManagerItemType" c:type="GtkUIManagerItemType"/>
78368           </parameter>
78369           <parameter name="top" transfer-ownership="none">
78370             <doc xml:whitespace="preserve">if %TRUE, the UI element is added before its siblings, otherwise it is added after its siblings.</doc>
78371             <type name="boolean" c:type="gboolean"/>
78372           </parameter>
78373         </parameters>
78374       </method>
78375       <method name="remove_ui"
78376               c:identifier="gtk_ui_manager_remove_ui"
78377               version="2.4">
78378         <doc xml:whitespace="preserve">Unmerges the part of @self&lt;!-- --&gt;s content identified by @merge_id.</doc>
78379         <return-value transfer-ownership="none">
78380           <type name="none" c:type="void"/>
78381         </return-value>
78382         <parameters>
78383           <parameter name="merge_id" transfer-ownership="none">
78384             <doc xml:whitespace="preserve">a merge id as returned by gtk_ui_manager_add_ui_from_string()</doc>
78385             <type name="uint" c:type="guint"/>
78386           </parameter>
78387         </parameters>
78388       </method>
78389       <method name="get_ui" c:identifier="gtk_ui_manager_get_ui" version="2.4">
78390         <doc xml:whitespace="preserve">Creates a &lt;link linkend="XML-UI"&gt;UI definition&lt;/link&gt; of the merged UI.
78391 the merged UI.</doc>
78392         <return-value transfer-ownership="full">
78393           <doc xml:whitespace="preserve">A newly allocated string containing an XML representation of</doc>
78394           <type name="utf8" c:type="gchar*"/>
78395         </return-value>
78396       </method>
78397       <method name="ensure_update"
78398               c:identifier="gtk_ui_manager_ensure_update"
78399               version="2.4">
78400         <doc xml:whitespace="preserve">Makes sure that all pending updates to the UI have been completed.
78401 This may occasionally be necessary, since #GtkUIManager updates the 
78402 UI in an idle function. A typical example where this function is
78403 useful is to enforce that the menubar and toolbar have been added to 
78404 the main window before showing it:
78405 |[
78406 gtk_container_add (GTK_CONTAINER (window), vbox); 
78407 g_signal_connect (merge, "add-widget", 
78408 G_CALLBACK (add_widget), vbox);
78409 gtk_ui_manager_add_ui_from_file (merge, "my-menus");
78410 gtk_ui_manager_add_ui_from_file (merge, "my-toolbars");
78411 gtk_ui_manager_ensure_update (merge);  
78412 gtk_widget_show (window);
78413 ]|</doc>
78414         <return-value transfer-ownership="none">
78415           <type name="none" c:type="void"/>
78416         </return-value>
78417       </method>
78418       <method name="new_merge_id"
78419               c:identifier="gtk_ui_manager_new_merge_id"
78420               version="2.4">
78421         <doc xml:whitespace="preserve">Returns an unused merge id, suitable for use with 
78422 gtk_ui_manager_add_ui().</doc>
78423         <return-value transfer-ownership="none">
78424           <doc xml:whitespace="preserve">an unused merge id.</doc>
78425           <type name="uint" c:type="guint"/>
78426         </return-value>
78427       </method>
78428       <property name="add-tearoffs"
78429                 version="2.4"
78430                 writable="1"
78431                 transfer-ownership="none">
78432         <doc xml:whitespace="preserve">The "add-tearoffs" property controls whether generated menus 
78433 have tearoff menu items. 
78434 Note that this only affects regular menus. Generated popup 
78435 menus never have tearoff menu items.</doc>
78436         <type name="boolean" c:type="gboolean"/>
78437       </property>
78438       <property name="ui" transfer-ownership="none">
78439         <type name="utf8" c:type="gchararray"/>
78440       </property>
78441       <field name="parent">
78442         <type name="GObject.Object" c:type="GObject"/>
78443       </field>
78444       <field name="private_data">
78445         <type name="UIManagerPrivate" c:type="GtkUIManagerPrivate*"/>
78446       </field>
78447       <glib:signal name="actions-changed" version="2.4">
78448         <doc xml:whitespace="preserve">The "actions-changed" signal is emitted whenever the set of actions
78449 changes.</doc>
78450         <return-value transfer-ownership="full">
78451           <type name="none" c:type="void"/>
78452         </return-value>
78453       </glib:signal>
78454       <glib:signal name="add-widget" version="2.4">
78455         <doc xml:whitespace="preserve">The add_widget signal is emitted for each generated menubar and toolbar.
78456 It is not emitted for generated popup menus, which can be obtained by 
78457 gtk_ui_manager_get_widget().</doc>
78458         <return-value transfer-ownership="full">
78459           <type name="none" c:type="void"/>
78460         </return-value>
78461         <parameters>
78462           <parameter name="widget" transfer-ownership="none">
78463             <doc xml:whitespace="preserve">the added widget</doc>
78464             <type name="Widget" c:type="GtkWidget"/>
78465           </parameter>
78466         </parameters>
78467       </glib:signal>
78468       <glib:signal name="connect-proxy" version="2.4">
78469         <doc xml:whitespace="preserve">The connect_proxy signal is emitted after connecting a proxy to 
78470 an action in the group. 
78471 This is intended for simple customizations for which a custom action
78472 class would be too clumsy, e.g. showing tooltips for menuitems in the
78473 statusbar.</doc>
78474         <return-value transfer-ownership="full">
78475           <type name="none" c:type="void"/>
78476         </return-value>
78477         <parameters>
78478           <parameter name="action" transfer-ownership="none">
78479             <doc xml:whitespace="preserve">the action</doc>
78480             <type name="Action" c:type="GtkAction"/>
78481           </parameter>
78482           <parameter name="proxy" transfer-ownership="none">
78483             <doc xml:whitespace="preserve">the proxy</doc>
78484             <type name="Widget" c:type="GtkWidget"/>
78485           </parameter>
78486         </parameters>
78487       </glib:signal>
78488       <glib:signal name="disconnect-proxy" version="2.4">
78489         <doc xml:whitespace="preserve">The disconnect_proxy signal is emitted after disconnecting a proxy 
78490 from an action in the group.</doc>
78491         <return-value transfer-ownership="full">
78492           <type name="none" c:type="void"/>
78493         </return-value>
78494         <parameters>
78495           <parameter name="action" transfer-ownership="none">
78496             <doc xml:whitespace="preserve">the action</doc>
78497             <type name="Action" c:type="GtkAction"/>
78498           </parameter>
78499           <parameter name="proxy" transfer-ownership="none">
78500             <doc xml:whitespace="preserve">the proxy</doc>
78501             <type name="Widget" c:type="GtkWidget"/>
78502           </parameter>
78503         </parameters>
78504       </glib:signal>
78505       <glib:signal name="post-activate" version="2.4">
78506         <doc xml:whitespace="preserve">The post_activate signal is emitted just after the @action
78507 is activated.
78508 This is intended for applications to get notification
78509 just after any action is activated.</doc>
78510         <return-value transfer-ownership="full">
78511           <type name="none" c:type="void"/>
78512         </return-value>
78513         <parameters>
78514           <parameter name="action" transfer-ownership="none">
78515             <doc xml:whitespace="preserve">the action</doc>
78516             <type name="Action" c:type="GtkAction"/>
78517           </parameter>
78518         </parameters>
78519       </glib:signal>
78520       <glib:signal name="pre-activate" version="2.4">
78521         <doc xml:whitespace="preserve">The pre_activate signal is emitted just before the @action
78522 is activated.
78523 This is intended for applications to get notification
78524 just before any action is activated.</doc>
78525         <return-value transfer-ownership="full">
78526           <type name="none" c:type="void"/>
78527         </return-value>
78528         <parameters>
78529           <parameter name="action" transfer-ownership="none">
78530             <doc xml:whitespace="preserve">the action</doc>
78531             <type name="Action" c:type="GtkAction"/>
78532           </parameter>
78533         </parameters>
78534       </glib:signal>
78535     </class>
78536     <record name="UIManagerClass"
78537             c:type="GtkUIManagerClass"
78538             glib:is-gtype-struct-for="UIManager">
78539       <field name="parent_class">
78540         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
78541       </field>
78542       <field name="add_widget">
78543         <callback name="add_widget" c:type="add_widget">
78544           <return-value transfer-ownership="none">
78545             <type name="none" c:type="void"/>
78546           </return-value>
78547           <parameters>
78548             <parameter name="merge" transfer-ownership="none">
78549               <type name="UIManager" c:type="GtkUIManager*"/>
78550             </parameter>
78551             <parameter name="widget" transfer-ownership="none">
78552               <type name="Widget" c:type="GtkWidget*"/>
78553             </parameter>
78554           </parameters>
78555         </callback>
78556       </field>
78557       <field name="actions_changed">
78558         <callback name="actions_changed" c:type="actions_changed">
78559           <return-value transfer-ownership="none">
78560             <type name="none" c:type="void"/>
78561           </return-value>
78562           <parameters>
78563             <parameter name="merge" transfer-ownership="none">
78564               <type name="UIManager" c:type="GtkUIManager*"/>
78565             </parameter>
78566           </parameters>
78567         </callback>
78568       </field>
78569       <field name="connect_proxy">
78570         <callback name="connect_proxy" c:type="connect_proxy">
78571           <return-value transfer-ownership="none">
78572             <type name="none" c:type="void"/>
78573           </return-value>
78574           <parameters>
78575             <parameter name="merge" transfer-ownership="none">
78576               <type name="UIManager" c:type="GtkUIManager*"/>
78577             </parameter>
78578             <parameter name="action" transfer-ownership="none">
78579               <type name="Action" c:type="GtkAction*"/>
78580             </parameter>
78581             <parameter name="proxy" transfer-ownership="none">
78582               <type name="Widget" c:type="GtkWidget*"/>
78583             </parameter>
78584           </parameters>
78585         </callback>
78586       </field>
78587       <field name="disconnect_proxy">
78588         <callback name="disconnect_proxy" c:type="disconnect_proxy">
78589           <return-value transfer-ownership="none">
78590             <type name="none" c:type="void"/>
78591           </return-value>
78592           <parameters>
78593             <parameter name="merge" transfer-ownership="none">
78594               <type name="UIManager" c:type="GtkUIManager*"/>
78595             </parameter>
78596             <parameter name="action" transfer-ownership="none">
78597               <type name="Action" c:type="GtkAction*"/>
78598             </parameter>
78599             <parameter name="proxy" transfer-ownership="none">
78600               <type name="Widget" c:type="GtkWidget*"/>
78601             </parameter>
78602           </parameters>
78603         </callback>
78604       </field>
78605       <field name="pre_activate">
78606         <callback name="pre_activate" c:type="pre_activate">
78607           <return-value transfer-ownership="none">
78608             <type name="none" c:type="void"/>
78609           </return-value>
78610           <parameters>
78611             <parameter name="merge" transfer-ownership="none">
78612               <type name="UIManager" c:type="GtkUIManager*"/>
78613             </parameter>
78614             <parameter name="action" transfer-ownership="none">
78615               <type name="Action" c:type="GtkAction*"/>
78616             </parameter>
78617           </parameters>
78618         </callback>
78619       </field>
78620       <field name="post_activate">
78621         <callback name="post_activate" c:type="post_activate">
78622           <return-value transfer-ownership="none">
78623             <type name="none" c:type="void"/>
78624           </return-value>
78625           <parameters>
78626             <parameter name="merge" transfer-ownership="none">
78627               <type name="UIManager" c:type="GtkUIManager*"/>
78628             </parameter>
78629             <parameter name="action" transfer-ownership="none">
78630               <type name="Action" c:type="GtkAction*"/>
78631             </parameter>
78632           </parameters>
78633         </callback>
78634       </field>
78635       <field name="get_widget">
78636         <callback name="get_widget" c:type="get_widget">
78637           <return-value transfer-ownership="none">
78638             <doc xml:whitespace="preserve">the widget found by following the path, or %NULL if no widget</doc>
78639             <type name="Widget" c:type="GtkWidget*"/>
78640           </return-value>
78641           <parameters>
78642             <parameter name="manager" transfer-ownership="none">
78643               <type name="UIManager" c:type="GtkUIManager*"/>
78644             </parameter>
78645             <parameter name="path" transfer-ownership="none">
78646               <doc xml:whitespace="preserve">a path</doc>
78647               <type name="utf8" c:type="gchar*"/>
78648             </parameter>
78649           </parameters>
78650         </callback>
78651       </field>
78652       <field name="get_action">
78653         <callback name="get_action" c:type="get_action">
78654           <return-value transfer-ownership="full">
78655             <doc xml:whitespace="preserve">the action whose proxy widget is found by following the path,</doc>
78656             <type name="Action" c:type="GtkAction*"/>
78657           </return-value>
78658           <parameters>
78659             <parameter name="manager" transfer-ownership="none">
78660               <type name="UIManager" c:type="GtkUIManager*"/>
78661             </parameter>
78662             <parameter name="path" transfer-ownership="none">
78663               <doc xml:whitespace="preserve">a path</doc>
78664               <type name="utf8" c:type="gchar*"/>
78665             </parameter>
78666           </parameters>
78667         </callback>
78668       </field>
78669       <field name="gtk_reserved1">
78670         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
78671           <return-value transfer-ownership="none">
78672             <type name="none" c:type="void"/>
78673           </return-value>
78674         </callback>
78675       </field>
78676       <field name="gtk_reserved2">
78677         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
78678           <return-value transfer-ownership="none">
78679             <type name="none" c:type="void"/>
78680           </return-value>
78681         </callback>
78682       </field>
78683     </record>
78684     <bitfield name="UIManagerItemType"
78685               glib:type-name="GtkUIManagerItemType"
78686               glib:get-type="gtk_ui_manager_item_type_get_type"
78687               c:type="GtkUIManagerItemType">
78688       <member name="auto"
78689               value="0"
78690               c:identifier="GTK_UI_MANAGER_AUTO"
78691               glib:nick="auto"/>
78692       <member name="menubar"
78693               value="1"
78694               c:identifier="GTK_UI_MANAGER_MENUBAR"
78695               glib:nick="menubar"/>
78696       <member name="menu"
78697               value="2"
78698               c:identifier="GTK_UI_MANAGER_MENU"
78699               glib:nick="menu"/>
78700       <member name="toolbar"
78701               value="4"
78702               c:identifier="GTK_UI_MANAGER_TOOLBAR"
78703               glib:nick="toolbar"/>
78704       <member name="placeholder"
78705               value="8"
78706               c:identifier="GTK_UI_MANAGER_PLACEHOLDER"
78707               glib:nick="placeholder"/>
78708       <member name="popup"
78709               value="16"
78710               c:identifier="GTK_UI_MANAGER_POPUP"
78711               glib:nick="popup"/>
78712       <member name="menuitem"
78713               value="32"
78714               c:identifier="GTK_UI_MANAGER_MENUITEM"
78715               glib:nick="menuitem"/>
78716       <member name="toolitem"
78717               value="64"
78718               c:identifier="GTK_UI_MANAGER_TOOLITEM"
78719               glib:nick="toolitem"/>
78720       <member name="separator"
78721               value="128"
78722               c:identifier="GTK_UI_MANAGER_SEPARATOR"
78723               glib:nick="separator"/>
78724       <member name="accelerator"
78725               value="256"
78726               c:identifier="GTK_UI_MANAGER_ACCELERATOR"
78727               glib:nick="accelerator"/>
78728       <member name="popup_with_accels"
78729               value="512"
78730               c:identifier="GTK_UI_MANAGER_POPUP_WITH_ACCELS"
78731               glib:nick="popup-with-accels"/>
78732     </bitfield>
78733     <record name="UIManagerPrivate" c:type="GtkUIManagerPrivate">
78734     </record>
78735     <enumeration name="Unit"
78736                  glib:type-name="GtkUnit"
78737                  glib:get-type="gtk_unit_get_type"
78738                  c:type="GtkUnit">
78739       <member name="pixel"
78740               value="0"
78741               c:identifier="GTK_UNIT_PIXEL"
78742               glib:nick="pixel"/>
78743       <member name="points"
78744               value="1"
78745               c:identifier="GTK_UNIT_POINTS"
78746               glib:nick="points"/>
78747       <member name="inch"
78748               value="2"
78749               c:identifier="GTK_UNIT_INCH"
78750               glib:nick="inch"/>
78751       <member name="mm" value="3" c:identifier="GTK_UNIT_MM" glib:nick="mm"/>
78752     </enumeration>
78753     <enumeration name="UpdateType"
78754                  glib:type-name="GtkUpdateType"
78755                  glib:get-type="gtk_update_type_get_type"
78756                  c:type="GtkUpdateType">
78757       <member name="continuous"
78758               value="0"
78759               c:identifier="GTK_UPDATE_CONTINUOUS"
78760               glib:nick="continuous"/>
78761       <member name="discontinuous"
78762               value="1"
78763               c:identifier="GTK_UPDATE_DISCONTINUOUS"
78764               glib:nick="discontinuous"/>
78765       <member name="delayed"
78766               value="2"
78767               c:identifier="GTK_UPDATE_DELAYED"
78768               glib:nick="delayed"/>
78769     </enumeration>
78770     <class name="VBox"
78771            c:type="GtkVBox"
78772            parent="Box"
78773            glib:type-name="GtkVBox"
78774            glib:get-type="gtk_vbox_get_type"
78775            glib:type-struct="VBoxClass">
78776       <implements name="Atk.ImplementorIface"/>
78777       <implements name="Buildable"/>
78778       <implements name="Orientable"/>
78779       <constructor name="new" c:identifier="gtk_vbox_new">
78780         <doc xml:whitespace="preserve">Creates a new #GtkVBox.</doc>
78781         <return-value transfer-ownership="full">
78782           <doc xml:whitespace="preserve">a new #GtkVBox.</doc>
78783           <type name="VBox" c:type="GtkWidget*"/>
78784         </return-value>
78785         <parameters>
78786           <parameter name="homogeneous" transfer-ownership="none">
78787             <doc xml:whitespace="preserve">%TRUE if all children are to be given equal space allotments.</doc>
78788             <type name="boolean" c:type="gboolean"/>
78789           </parameter>
78790           <parameter name="spacing" transfer-ownership="none">
78791             <doc xml:whitespace="preserve">the number of pixels to place by default between children.</doc>
78792             <type name="int" c:type="gint"/>
78793           </parameter>
78794         </parameters>
78795       </constructor>
78796       <field name="box">
78797         <type name="Box" c:type="GtkBox"/>
78798       </field>
78799     </class>
78800     <record name="VBoxClass"
78801             c:type="GtkVBoxClass"
78802             glib:is-gtype-struct-for="VBox">
78803       <field name="parent_class">
78804         <type name="BoxClass" c:type="GtkBoxClass"/>
78805       </field>
78806     </record>
78807     <class name="VButtonBox"
78808            c:type="GtkVButtonBox"
78809            parent="ButtonBox"
78810            glib:type-name="GtkVButtonBox"
78811            glib:get-type="gtk_vbutton_box_get_type"
78812            glib:type-struct="VButtonBoxClass">
78813       <implements name="Atk.ImplementorIface"/>
78814       <implements name="Buildable"/>
78815       <implements name="Orientable"/>
78816       <constructor name="new" c:identifier="gtk_vbutton_box_new">
78817         <doc xml:whitespace="preserve">Creates a new vertical button box.</doc>
78818         <return-value transfer-ownership="full">
78819           <doc xml:whitespace="preserve">a new button box #GtkWidget.</doc>
78820           <type name="VButtonBox" c:type="GtkWidget*"/>
78821         </return-value>
78822       </constructor>
78823       <function name="get_spacing_default"
78824                 c:identifier="gtk_vbutton_box_get_spacing_default"
78825                 deprecated="Use gtk_box_get_spacing() instead."
78826                 deprecated-version="2.0">
78827         <doc xml:whitespace="preserve">Retrieves the current default spacing for vertical button boxes. This is the number of pixels
78828 to be placed between the buttons when they are arranged.</doc>
78829         <return-value transfer-ownership="none">
78830           <doc xml:whitespace="preserve">the default number of pixels between buttons.</doc>
78831           <type name="int" c:type="gint"/>
78832         </return-value>
78833       </function>
78834       <function name="set_spacing_default"
78835                 c:identifier="gtk_vbutton_box_set_spacing_default"
78836                 deprecated="Use gtk_box_set_spacing() instead."
78837                 deprecated-version="2.0">
78838         <doc xml:whitespace="preserve">Changes the default spacing that is placed between widgets in an
78839 vertical button box.</doc>
78840         <return-value transfer-ownership="none">
78841           <type name="none" c:type="void"/>
78842         </return-value>
78843         <parameters>
78844           <parameter name="spacing" transfer-ownership="none">
78845             <doc xml:whitespace="preserve">an integer value.</doc>
78846             <type name="int" c:type="gint"/>
78847           </parameter>
78848         </parameters>
78849       </function>
78850       <function name="get_layout_default"
78851                 c:identifier="gtk_vbutton_box_get_layout_default"
78852                 deprecated="Use gtk_button_box_get_layout() instead."
78853                 deprecated-version="2.0">
78854         <doc xml:whitespace="preserve">Retrieves the current layout used to arrange buttons in button box widgets.</doc>
78855         <return-value transfer-ownership="full">
78856           <doc xml:whitespace="preserve">the current #GtkButtonBoxStyle.</doc>
78857           <type name="ButtonBoxStyle" c:type="GtkButtonBoxStyle"/>
78858         </return-value>
78859       </function>
78860       <function name="set_layout_default"
78861                 c:identifier="gtk_vbutton_box_set_layout_default"
78862                 deprecated="Use gtk_button_box_set_layout() instead."
78863                 deprecated-version="2.0">
78864         <doc xml:whitespace="preserve">Sets a new layout mode that will be used by all button boxes.</doc>
78865         <return-value transfer-ownership="none">
78866           <type name="none" c:type="void"/>
78867         </return-value>
78868         <parameters>
78869           <parameter name="layout" transfer-ownership="none">
78870             <doc xml:whitespace="preserve">a new #GtkButtonBoxStyle.</doc>
78871             <type name="ButtonBoxStyle" c:type="GtkButtonBoxStyle"/>
78872           </parameter>
78873         </parameters>
78874       </function>
78875       <field name="button_box">
78876         <type name="ButtonBox" c:type="GtkButtonBox"/>
78877       </field>
78878     </class>
78879     <record name="VButtonBoxClass"
78880             c:type="GtkVButtonBoxClass"
78881             glib:is-gtype-struct-for="VButtonBox">
78882       <field name="parent_class">
78883         <type name="ButtonBoxClass" c:type="GtkButtonBoxClass"/>
78884       </field>
78885     </record>
78886     <class name="VPaned"
78887            c:type="GtkVPaned"
78888            parent="Paned"
78889            glib:type-name="GtkVPaned"
78890            glib:get-type="gtk_vpaned_get_type"
78891            glib:type-struct="VPanedClass">
78892       <implements name="Atk.ImplementorIface"/>
78893       <implements name="Buildable"/>
78894       <implements name="Orientable"/>
78895       <constructor name="new" c:identifier="gtk_vpaned_new">
78896         <doc xml:whitespace="preserve">Create a new #GtkVPaned</doc>
78897         <return-value transfer-ownership="full">
78898           <doc xml:whitespace="preserve">the new #GtkVPaned</doc>
78899           <type name="VPaned" c:type="GtkWidget*"/>
78900         </return-value>
78901       </constructor>
78902       <field name="paned">
78903         <type name="Paned" c:type="GtkPaned"/>
78904       </field>
78905     </class>
78906     <record name="VPanedClass"
78907             c:type="GtkVPanedClass"
78908             glib:is-gtype-struct-for="VPaned">
78909       <field name="parent_class">
78910         <type name="PanedClass" c:type="GtkPanedClass"/>
78911       </field>
78912     </record>
78913     <class name="VRuler"
78914            c:type="GtkVRuler"
78915            parent="Ruler"
78916            glib:type-name="GtkVRuler"
78917            glib:get-type="gtk_vruler_get_type"
78918            glib:type-struct="VRulerClass">
78919       <implements name="Atk.ImplementorIface"/>
78920       <implements name="Buildable"/>
78921       <implements name="Orientable"/>
78922       <constructor name="new" c:identifier="gtk_vruler_new">
78923         <doc xml:whitespace="preserve">Creates a new vertical ruler</doc>
78924         <return-value transfer-ownership="full">
78925           <doc xml:whitespace="preserve">a new #GtkVRuler.</doc>
78926           <type name="VRuler" c:type="GtkWidget*"/>
78927         </return-value>
78928       </constructor>
78929       <field name="ruler">
78930         <type name="Ruler" c:type="GtkRuler"/>
78931       </field>
78932     </class>
78933     <record name="VRulerClass"
78934             c:type="GtkVRulerClass"
78935             glib:is-gtype-struct-for="VRuler">
78936       <field name="parent_class">
78937         <type name="RulerClass" c:type="GtkRulerClass"/>
78938       </field>
78939     </record>
78940     <class name="VScale"
78941            c:type="GtkVScale"
78942            parent="Scale"
78943            glib:type-name="GtkVScale"
78944            glib:get-type="gtk_vscale_get_type"
78945            glib:type-struct="VScaleClass">
78946       <doc xml:whitespace="preserve">The #GtkVScale struct contains private data only, and
78947 should be accessed using the functions below.</doc>
78948       <implements name="Atk.ImplementorIface"/>
78949       <implements name="Buildable"/>
78950       <implements name="Orientable"/>
78951       <constructor name="new" c:identifier="gtk_vscale_new">
78952         <doc xml:whitespace="preserve">Creates a new #GtkVScale.</doc>
78953         <return-value transfer-ownership="full">
78954           <doc xml:whitespace="preserve">a new #GtkVScale.</doc>
78955           <type name="VScale" c:type="GtkWidget*"/>
78956         </return-value>
78957         <parameters>
78958           <parameter name="adjustment" transfer-ownership="none">
78959             <doc xml:whitespace="preserve">the #GtkAdjustment which sets the range of the scale.</doc>
78960             <type name="Adjustment" c:type="GtkAdjustment*"/>
78961           </parameter>
78962         </parameters>
78963       </constructor>
78964       <constructor name="new_with_range"
78965                    c:identifier="gtk_vscale_new_with_range">
78966         <doc xml:whitespace="preserve">Creates a new vertical scale widget that lets the user input a
78967 number between @min and @max (including @min and @max) with the
78968 increment @step.  @step must be nonzero; it's the distance the
78969 slider moves when using the arrow keys to adjust the scale value.
78970 Note that the way in which the precision is derived works best if @step
78971 is a power of ten. If the resulting precision is not suitable for your
78972 needs, use gtk_scale_set_digits() to correct it.</doc>
78973         <return-value transfer-ownership="full">
78974           <doc xml:whitespace="preserve">a new #GtkVScale</doc>
78975           <type name="VScale" c:type="GtkWidget*"/>
78976         </return-value>
78977         <parameters>
78978           <parameter name="min" transfer-ownership="none">
78979             <doc xml:whitespace="preserve">minimum value</doc>
78980             <type name="double" c:type="gdouble"/>
78981           </parameter>
78982           <parameter name="max" transfer-ownership="none">
78983             <doc xml:whitespace="preserve">maximum value</doc>
78984             <type name="double" c:type="gdouble"/>
78985           </parameter>
78986           <parameter name="step" transfer-ownership="none">
78987             <doc xml:whitespace="preserve">step increment (tick size) used with keyboard shortcuts</doc>
78988             <type name="double" c:type="gdouble"/>
78989           </parameter>
78990         </parameters>
78991       </constructor>
78992       <field name="scale">
78993         <type name="Scale" c:type="GtkScale"/>
78994       </field>
78995     </class>
78996     <record name="VScaleClass"
78997             c:type="GtkVScaleClass"
78998             glib:is-gtype-struct-for="VScale">
78999       <field name="parent_class">
79000         <type name="ScaleClass" c:type="GtkScaleClass"/>
79001       </field>
79002     </record>
79003     <class name="VScrollbar"
79004            c:type="GtkVScrollbar"
79005            parent="Scrollbar"
79006            glib:type-name="GtkVScrollbar"
79007            glib:get-type="gtk_vscrollbar_get_type"
79008            glib:type-struct="VScrollbarClass">
79009       <doc xml:whitespace="preserve">The #GtkVScrollbar struct contains private data and should be accessed
79010 using the functions below.</doc>
79011       <implements name="Atk.ImplementorIface"/>
79012       <implements name="Buildable"/>
79013       <implements name="Orientable"/>
79014       <constructor name="new" c:identifier="gtk_vscrollbar_new">
79015         <doc xml:whitespace="preserve">Creates a new vertical scrollbar.</doc>
79016         <return-value transfer-ownership="full">
79017           <doc xml:whitespace="preserve">the new #GtkVScrollbar</doc>
79018           <type name="VScrollbar" c:type="GtkWidget*"/>
79019         </return-value>
79020         <parameters>
79021           <parameter name="adjustment"
79022                      transfer-ownership="none"
79023                      allow-none="1">
79024             <doc xml:whitespace="preserve">the #GtkAdjustment to use, or %NULL to create a new adjustment</doc>
79025             <type name="Adjustment" c:type="GtkAdjustment*"/>
79026           </parameter>
79027         </parameters>
79028       </constructor>
79029       <field name="scrollbar">
79030         <type name="Scrollbar" c:type="GtkScrollbar"/>
79031       </field>
79032     </class>
79033     <record name="VScrollbarClass"
79034             c:type="GtkVScrollbarClass"
79035             glib:is-gtype-struct-for="VScrollbar">
79036       <field name="parent_class">
79037         <type name="ScrollbarClass" c:type="GtkScrollbarClass"/>
79038       </field>
79039     </record>
79040     <class name="VSeparator"
79041            c:type="GtkVSeparator"
79042            parent="Separator"
79043            glib:type-name="GtkVSeparator"
79044            glib:get-type="gtk_vseparator_get_type"
79045            glib:type-struct="VSeparatorClass">
79046       <doc xml:whitespace="preserve">The #GtkVSeparator struct contains private data only, and
79047 should be accessed using the functions below.</doc>
79048       <implements name="Atk.ImplementorIface"/>
79049       <implements name="Buildable"/>
79050       <implements name="Orientable"/>
79051       <constructor name="new" c:identifier="gtk_vseparator_new">
79052         <doc xml:whitespace="preserve">Creates a new #GtkVSeparator.</doc>
79053         <return-value transfer-ownership="full">
79054           <doc xml:whitespace="preserve">a new #GtkVSeparator.</doc>
79055           <type name="VSeparator" c:type="GtkWidget*"/>
79056         </return-value>
79057       </constructor>
79058       <field name="separator">
79059         <type name="Separator" c:type="GtkSeparator"/>
79060       </field>
79061     </class>
79062     <record name="VSeparatorClass"
79063             c:type="GtkVSeparatorClass"
79064             glib:is-gtype-struct-for="VSeparator">
79065       <field name="parent_class">
79066         <type name="SeparatorClass" c:type="GtkSeparatorClass"/>
79067       </field>
79068     </record>
79069     <class name="Viewport"
79070            c:type="GtkViewport"
79071            parent="Bin"
79072            glib:type-name="GtkViewport"
79073            glib:get-type="gtk_viewport_get_type"
79074            glib:type-struct="ViewportClass">
79075       <implements name="Atk.ImplementorIface"/>
79076       <implements name="Buildable"/>
79077       <constructor name="new" c:identifier="gtk_viewport_new">
79078         <doc xml:whitespace="preserve">Creates a new #GtkViewport with the given adjustments.</doc>
79079         <return-value transfer-ownership="full">
79080           <doc xml:whitespace="preserve">a new #GtkViewport.</doc>
79081           <type name="Viewport" c:type="GtkWidget*"/>
79082         </return-value>
79083         <parameters>
79084           <parameter name="hadjustment" transfer-ownership="none">
79085             <doc xml:whitespace="preserve">horizontal adjustment.</doc>
79086             <type name="Adjustment" c:type="GtkAdjustment*"/>
79087           </parameter>
79088           <parameter name="vadjustment" transfer-ownership="none">
79089             <doc xml:whitespace="preserve">vertical adjustment.</doc>
79090             <type name="Adjustment" c:type="GtkAdjustment*"/>
79091           </parameter>
79092         </parameters>
79093       </constructor>
79094       <method name="get_hadjustment"
79095               c:identifier="gtk_viewport_get_hadjustment">
79096         <doc xml:whitespace="preserve">Returns the horizontal adjustment of the viewport.</doc>
79097         <return-value transfer-ownership="full">
79098           <doc xml:whitespace="preserve">the horizontal adjustment of @viewport.</doc>
79099           <type name="Adjustment" c:type="GtkAdjustment*"/>
79100         </return-value>
79101       </method>
79102       <method name="get_vadjustment"
79103               c:identifier="gtk_viewport_get_vadjustment">
79104         <doc xml:whitespace="preserve">Returns the vertical adjustment of the viewport.</doc>
79105         <return-value transfer-ownership="full">
79106           <doc xml:whitespace="preserve">the vertical adjustment of @viewport.</doc>
79107           <type name="Adjustment" c:type="GtkAdjustment*"/>
79108         </return-value>
79109       </method>
79110       <method name="set_hadjustment"
79111               c:identifier="gtk_viewport_set_hadjustment">
79112         <doc xml:whitespace="preserve">Sets the horizontal adjustment of the viewport.</doc>
79113         <return-value transfer-ownership="none">
79114           <type name="none" c:type="void"/>
79115         </return-value>
79116         <parameters>
79117           <parameter name="adjustment"
79118                      transfer-ownership="none"
79119                      allow-none="1">
79120             <doc xml:whitespace="preserve">a #GtkAdjustment.</doc>
79121             <type name="Adjustment" c:type="GtkAdjustment*"/>
79122           </parameter>
79123         </parameters>
79124       </method>
79125       <method name="set_vadjustment"
79126               c:identifier="gtk_viewport_set_vadjustment">
79127         <doc xml:whitespace="preserve">Sets the vertical adjustment of the viewport.</doc>
79128         <return-value transfer-ownership="none">
79129           <type name="none" c:type="void"/>
79130         </return-value>
79131         <parameters>
79132           <parameter name="adjustment"
79133                      transfer-ownership="none"
79134                      allow-none="1">
79135             <doc xml:whitespace="preserve">a #GtkAdjustment.</doc>
79136             <type name="Adjustment" c:type="GtkAdjustment*"/>
79137           </parameter>
79138         </parameters>
79139       </method>
79140       <method name="set_shadow_type"
79141               c:identifier="gtk_viewport_set_shadow_type">
79142         <return-value transfer-ownership="none">
79143           <type name="none" c:type="void"/>
79144         </return-value>
79145         <parameters>
79146           <parameter name="type" transfer-ownership="none">
79147             <type name="ShadowType" c:type="GtkShadowType"/>
79148           </parameter>
79149         </parameters>
79150       </method>
79151       <method name="get_shadow_type"
79152               c:identifier="gtk_viewport_get_shadow_type">
79153         <doc xml:whitespace="preserve">Gets the shadow type of the #GtkViewport. See
79154 gtk_viewport_set_shadow_type().</doc>
79155         <return-value transfer-ownership="full">
79156           <doc xml:whitespace="preserve">the shadow type</doc>
79157           <type name="ShadowType" c:type="GtkShadowType"/>
79158         </return-value>
79159       </method>
79160       <method name="get_bin_window"
79161               c:identifier="gtk_viewport_get_bin_window"
79162               version="2.20">
79163         <doc xml:whitespace="preserve">Gets the bin window of the #GtkViewport.</doc>
79164         <return-value transfer-ownership="full">
79165           <doc xml:whitespace="preserve">a #GdkWindow</doc>
79166           <type name="Gdk.Window" c:type="GdkWindow*"/>
79167         </return-value>
79168       </method>
79169       <property name="hadjustment"
79170                 writable="1"
79171                 construct="1"
79172                 transfer-ownership="none">
79173         <type name="Adjustment" c:type="GtkAdjustment"/>
79174       </property>
79175       <property name="shadow-type" writable="1" transfer-ownership="none">
79176         <type name="ShadowType" c:type="GtkShadowType"/>
79177       </property>
79178       <property name="vadjustment"
79179                 writable="1"
79180                 construct="1"
79181                 transfer-ownership="none">
79182         <type name="Adjustment" c:type="GtkAdjustment"/>
79183       </property>
79184       <field name="bin">
79185         <type name="Bin" c:type="GtkBin"/>
79186       </field>
79187       <field name="shadow_type">
79188         <type name="ShadowType" c:type="GtkShadowType"/>
79189       </field>
79190       <field name="view_window">
79191         <type name="Gdk.Window" c:type="GdkWindow*"/>
79192       </field>
79193       <field name="bin_window">
79194         <type name="Gdk.Window" c:type="GdkWindow*"/>
79195       </field>
79196       <field name="hadjustment">
79197         <type name="Adjustment" c:type="GtkAdjustment*"/>
79198       </field>
79199       <field name="vadjustment">
79200         <type name="Adjustment" c:type="GtkAdjustment*"/>
79201       </field>
79202       <glib:signal name="set-scroll-adjustments">
79203         <return-value transfer-ownership="full">
79204           <type name="none" c:type="void"/>
79205         </return-value>
79206         <parameters>
79207           <parameter name="object" transfer-ownership="none">
79208             <type name="Adjustment" c:type="GtkAdjustment"/>
79209           </parameter>
79210           <parameter name="p0" transfer-ownership="none">
79211             <type name="Adjustment" c:type="GtkAdjustment"/>
79212           </parameter>
79213         </parameters>
79214       </glib:signal>
79215     </class>
79216     <record name="ViewportClass"
79217             c:type="GtkViewportClass"
79218             glib:is-gtype-struct-for="Viewport">
79219       <field name="parent_class">
79220         <type name="BinClass" c:type="GtkBinClass"/>
79221       </field>
79222       <field name="set_scroll_adjustments">
79223         <callback name="set_scroll_adjustments"
79224                   c:type="set_scroll_adjustments">
79225           <return-value transfer-ownership="none">
79226             <type name="none" c:type="void"/>
79227           </return-value>
79228           <parameters>
79229             <parameter name="viewport" transfer-ownership="none">
79230               <type name="Viewport" c:type="GtkViewport*"/>
79231             </parameter>
79232             <parameter name="hadjustment" transfer-ownership="none">
79233               <type name="Adjustment" c:type="GtkAdjustment*"/>
79234             </parameter>
79235             <parameter name="vadjustment" transfer-ownership="none">
79236               <type name="Adjustment" c:type="GtkAdjustment*"/>
79237             </parameter>
79238           </parameters>
79239         </callback>
79240       </field>
79241     </record>
79242     <enumeration name="Visibility"
79243                  glib:type-name="GtkVisibility"
79244                  glib:get-type="gtk_visibility_get_type"
79245                  c:type="GtkVisibility">
79246       <member name="none"
79247               value="0"
79248               c:identifier="GTK_VISIBILITY_NONE"
79249               glib:nick="none"/>
79250       <member name="partial"
79251               value="1"
79252               c:identifier="GTK_VISIBILITY_PARTIAL"
79253               glib:nick="partial"/>
79254       <member name="full"
79255               value="2"
79256               c:identifier="GTK_VISIBILITY_FULL"
79257               glib:nick="full"/>
79258     </enumeration>
79259     <class name="VolumeButton"
79260            c:type="GtkVolumeButton"
79261            parent="ScaleButton"
79262            glib:type-name="GtkVolumeButton"
79263            glib:get-type="gtk_volume_button_get_type"
79264            glib:type-struct="VolumeButtonClass">
79265       <implements name="Activatable"/>
79266       <implements name="Atk.ImplementorIface"/>
79267       <implements name="Buildable"/>
79268       <implements name="Orientable"/>
79269       <constructor name="new" c:identifier="gtk_volume_button_new">
79270         <return-value transfer-ownership="full">
79271           <type name="VolumeButton" c:type="GtkWidget*"/>
79272         </return-value>
79273       </constructor>
79274       <field name="parent">
79275         <type name="ScaleButton" c:type="GtkScaleButton"/>
79276       </field>
79277     </class>
79278     <record name="VolumeButtonClass"
79279             c:type="GtkVolumeButtonClass"
79280             glib:is-gtype-struct-for="VolumeButton">
79281       <field name="parent_class">
79282         <type name="ScaleButtonClass" c:type="GtkScaleButtonClass"/>
79283       </field>
79284       <field name="gtk_reserved1">
79285         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
79286           <return-value transfer-ownership="none">
79287             <type name="none" c:type="void"/>
79288           </return-value>
79289         </callback>
79290       </field>
79291       <field name="gtk_reserved2">
79292         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
79293           <return-value transfer-ownership="none">
79294             <type name="none" c:type="void"/>
79295           </return-value>
79296         </callback>
79297       </field>
79298       <field name="gtk_reserved3">
79299         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
79300           <return-value transfer-ownership="none">
79301             <type name="none" c:type="void"/>
79302           </return-value>
79303         </callback>
79304       </field>
79305       <field name="gtk_reserved4">
79306         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
79307           <return-value transfer-ownership="none">
79308             <type name="none" c:type="void"/>
79309           </return-value>
79310         </callback>
79311       </field>
79312     </record>
79313     <class name="Widget"
79314            c:type="GtkWidget"
79315            parent="Object"
79316            abstract="1"
79317            glib:type-name="GtkWidget"
79318            glib:get-type="gtk_widget_get_type"
79319            glib:type-struct="WidgetClass">
79320       <implements name="Atk.ImplementorIface"/>
79321       <implements name="Buildable"/>
79322       <constructor name="new" c:identifier="gtk_widget_new" introspectable="0">
79323         <doc xml:whitespace="preserve">This is a convenience function for creating a widget and setting
79324 its properties in one go. For example you might write:
79325 &lt;literal&gt;gtk_widget_new (GTK_TYPE_LABEL, "label", "Hello World", "xalign",
79326 0.0, NULL)&lt;/literal&gt; to create a left-aligned label. Equivalent to
79327 g_object_new(), but returns a widget so you don't have to
79328 cast the object yourself.</doc>
79329         <return-value transfer-ownership="full">
79330           <doc xml:whitespace="preserve">a new #GtkWidget of type @widget_type</doc>
79331           <type name="Widget" c:type="GtkWidget*"/>
79332         </return-value>
79333         <parameters>
79334           <parameter name="type" transfer-ownership="none">
79335             <doc xml:whitespace="preserve">type ID of the widget to create</doc>
79336             <type name="GType" c:type="GType"/>
79337           </parameter>
79338           <parameter name="first_property_name" transfer-ownership="none">
79339             <doc xml:whitespace="preserve">name of first property to set</doc>
79340             <type name="utf8" c:type="gchar*"/>
79341           </parameter>
79342           <parameter transfer-ownership="none">
79343             <varargs>
79344             </varargs>
79345           </parameter>
79346         </parameters>
79347       </constructor>
79348       <function name="push_colormap" c:identifier="gtk_widget_push_colormap">
79349         <doc xml:whitespace="preserve">Pushes @cmap onto a global stack of colormaps; the topmost
79350 colormap on the stack will be used to create all widgets.
79351 Remove @cmap with gtk_widget_pop_colormap(). There's little
79352 reason to use this function.</doc>
79353         <return-value transfer-ownership="none">
79354           <type name="none" c:type="void"/>
79355         </return-value>
79356         <parameters>
79357           <parameter name="cmap" transfer-ownership="none">
79358             <doc xml:whitespace="preserve">a #GdkColormap</doc>
79359             <type name="Gdk.Colormap" c:type="GdkColormap*"/>
79360           </parameter>
79361         </parameters>
79362       </function>
79363       <function name="push_composite_child"
79364                 c:identifier="gtk_widget_push_composite_child">
79365         <doc xml:whitespace="preserve">Makes all newly-created widgets as composite children until
79366 the corresponding gtk_widget_pop_composite_child() call.
79367 A composite child is a child that's an implementation detail of the
79368 container it's inside and should not be visible to people using the
79369 container. Composite children aren't treated differently by GTK (but
79370 see gtk_container_foreach() vs. gtk_container_forall()), but e.g. GUI 
79371 builders might want to treat them in a different way.
79372 Here is a simple example:
79373 |[
79374 gtk_widget_push_composite_child ();
79375 scrolled_window-&gt;hscrollbar = gtk_hscrollbar_new (hadjustment);
79376 gtk_widget_set_composite_name (scrolled_window-&gt;hscrollbar, "hscrollbar");
79377 gtk_widget_pop_composite_child ();
79378 gtk_widget_set_parent (scrolled_window-&gt;hscrollbar, 
79379 GTK_WIDGET (scrolled_window));
79380 g_object_ref (scrolled_window-&gt;hscrollbar);
79381 ]|</doc>
79382         <return-value transfer-ownership="none">
79383           <type name="none" c:type="void"/>
79384         </return-value>
79385       </function>
79386       <function name="pop_composite_child"
79387                 c:identifier="gtk_widget_pop_composite_child">
79388         <doc xml:whitespace="preserve">Cancels the effect of a previous call to gtk_widget_push_composite_child().</doc>
79389         <return-value transfer-ownership="none">
79390           <type name="none" c:type="void"/>
79391         </return-value>
79392       </function>
79393       <function name="pop_colormap" c:identifier="gtk_widget_pop_colormap">
79394         <doc xml:whitespace="preserve">Removes a colormap pushed with gtk_widget_push_colormap().</doc>
79395         <return-value transfer-ownership="none">
79396           <type name="none" c:type="void"/>
79397         </return-value>
79398       </function>
79399       <function name="set_default_colormap"
79400                 c:identifier="gtk_widget_set_default_colormap">
79401         <doc xml:whitespace="preserve">Sets the default colormap to use when creating widgets.
79402 gtk_widget_push_colormap() is a better function to use if
79403 you only want to affect a few widgets, rather than all widgets.</doc>
79404         <return-value transfer-ownership="none">
79405           <type name="none" c:type="void"/>
79406         </return-value>
79407         <parameters>
79408           <parameter name="colormap" transfer-ownership="none">
79409             <doc xml:whitespace="preserve">a #GdkColormap</doc>
79410             <type name="Gdk.Colormap" c:type="GdkColormap*"/>
79411           </parameter>
79412         </parameters>
79413       </function>
79414       <function name="get_default_style"
79415                 c:identifier="gtk_widget_get_default_style">
79416         <doc xml:whitespace="preserve">Returns the default style used by all widgets initially.
79417 by GTK+ and should not be modified or freed.</doc>
79418         <return-value transfer-ownership="none">
79419           <doc xml:whitespace="preserve">the default style. This #GtkStyle object is owned</doc>
79420           <type name="Style" c:type="GtkStyle*"/>
79421         </return-value>
79422       </function>
79423       <function name="get_default_colormap"
79424                 c:identifier="gtk_widget_get_default_colormap">
79425         <doc xml:whitespace="preserve">Obtains the default colormap used to create widgets.</doc>
79426         <return-value transfer-ownership="none">
79427           <doc xml:whitespace="preserve">default widget colormap</doc>
79428           <type name="Gdk.Colormap" c:type="GdkColormap*"/>
79429         </return-value>
79430       </function>
79431       <function name="get_default_visual"
79432                 c:identifier="gtk_widget_get_default_visual">
79433         <doc xml:whitespace="preserve">Obtains the visual of the default colormap. Not really useful;
79434 used to be useful before gdk_colormap_get_visual() existed.</doc>
79435         <return-value transfer-ownership="none">
79436           <doc xml:whitespace="preserve">visual of the default colormap</doc>
79437           <type name="Gdk.Visual" c:type="GdkVisual*"/>
79438         </return-value>
79439       </function>
79440       <function name="set_default_direction"
79441                 c:identifier="gtk_widget_set_default_direction">
79442         <doc xml:whitespace="preserve">Sets the default reading direction for widgets where the
79443 direction has not been explicitly set by gtk_widget_set_direction().</doc>
79444         <return-value transfer-ownership="none">
79445           <type name="none" c:type="void"/>
79446         </return-value>
79447         <parameters>
79448           <parameter name="dir" transfer-ownership="none">
79449             <doc xml:whitespace="preserve">the new default direction. This cannot be %GTK_TEXT_DIR_NONE.</doc>
79450             <type name="TextDirection" c:type="GtkTextDirection"/>
79451           </parameter>
79452         </parameters>
79453       </function>
79454       <function name="get_default_direction"
79455                 c:identifier="gtk_widget_get_default_direction">
79456         <doc xml:whitespace="preserve">Obtains the current default reading direction. See
79457 gtk_widget_set_default_direction().</doc>
79458         <return-value transfer-ownership="full">
79459           <doc xml:whitespace="preserve">the current default direction.</doc>
79460           <type name="TextDirection" c:type="GtkTextDirection"/>
79461         </return-value>
79462       </function>
79463       <virtual-method name="dispatch_child_properties_changed">
79464         <return-value transfer-ownership="none">
79465           <type name="none" c:type="void"/>
79466         </return-value>
79467         <parameters>
79468           <parameter name="n_pspecs" transfer-ownership="none">
79469             <type name="uint" c:type="guint"/>
79470           </parameter>
79471           <parameter name="pspecs" transfer-ownership="none">
79472             <type name="GObject.ParamSpec" c:type="GParamSpec**"/>
79473           </parameter>
79474         </parameters>
79475       </virtual-method>
79476       <virtual-method name="show_all" invoker="show_all">
79477         <doc xml:whitespace="preserve">Recursively shows a widget, and any child widgets (if the widget is
79478 a container).</doc>
79479         <return-value transfer-ownership="none">
79480           <type name="none" c:type="void"/>
79481         </return-value>
79482       </virtual-method>
79483       <virtual-method name="hide_all" invoker="hide_all">
79484         <doc xml:whitespace="preserve">Recursively hides a widget and any child widgets.</doc>
79485         <return-value transfer-ownership="none">
79486           <type name="none" c:type="void"/>
79487         </return-value>
79488       </virtual-method>
79489       <virtual-method name="get_accessible" invoker="get_accessible">
79490         <doc xml:whitespace="preserve">Returns the accessible object that describes the widget to an
79491 assistive technology. 
79492 If no accessibility library is loaded (i.e. no ATK implementation library is 
79493 loaded via &lt;envar&gt;GTK_MODULES&lt;/envar&gt; or via another application library, 
79494 such as libgnome), then this #AtkObject instance may be a no-op. Likewise, 
79495 if no class-specific #AtkObject implementation is available for the widget 
79496 instance in question, it will inherit an #AtkObject implementation from the 
79497 first ancestor class for which such an implementation is defined.
79498 The documentation of the &lt;ulink url="http://developer.gnome.org/doc/API/2.0/atk/index.html"&gt;ATK&lt;/ulink&gt;
79499 library contains more information about accessible objects and their uses.</doc>
79500         <return-value transfer-ownership="none">
79501           <doc xml:whitespace="preserve">the #AtkObject associated with @widget</doc>
79502           <type name="Atk.Object" c:type="AtkObject*"/>
79503         </return-value>
79504       </virtual-method>
79505       <method name="destroy" c:identifier="gtk_widget_destroy">
79506         <doc xml:whitespace="preserve">Destroys a widget. Equivalent to gtk_object_destroy(), except that
79507 you don't have to cast the widget to #GtkObject. When a widget is
79508 destroyed, it will break any references it holds to other objects.
79509 If the widget is inside a container, the widget will be removed
79510 from the container. If the widget is a toplevel (derived from
79511 #GtkWindow), it will be removed from the list of toplevels, and the
79512 reference GTK+ holds to it will be removed. Removing a
79513 widget from its container or the list of toplevels results in the
79514 widget being finalized, unless you've added additional references
79515 to the widget with g_object_ref().
79516 In most cases, only toplevel widgets (windows) require explicit
79517 destruction, because when you destroy a toplevel its children will
79518 be destroyed as well.</doc>
79519         <return-value transfer-ownership="none">
79520           <type name="none" c:type="void"/>
79521         </return-value>
79522       </method>
79523       <method name="destroyed" c:identifier="gtk_widget_destroyed">
79524         <doc xml:whitespace="preserve">This function sets *@widget_pointer to %NULL if @widget_pointer !=
79525 %NULL.  It's intended to be used as a callback connected to the
79526 "destroy" signal of a widget. You connect gtk_widget_destroyed()
79527 as a signal handler, and pass the address of your widget variable
79528 as user data. Then when the widget is destroyed, the variable will
79529 be set to %NULL. Useful for example to avoid multiple copies
79530 of the same dialog.</doc>
79531         <return-value transfer-ownership="none">
79532           <type name="none" c:type="void"/>
79533         </return-value>
79534         <parameters>
79535           <parameter name="widget_pointer"
79536                      direction="inout"
79537                      caller-allocates="0"
79538                      transfer-ownership="none">
79539             <doc xml:whitespace="preserve">address of a variable that contains @widget</doc>
79540             <type name="Widget" c:type="GtkWidget**"/>
79541           </parameter>
79542         </parameters>
79543       </method>
79544       <method name="ref"
79545               c:identifier="gtk_widget_ref"
79546               deprecated="Use g_object_ref() instead."
79547               deprecated-version="2.12">
79548         <doc xml:whitespace="preserve">Adds a reference to a widget. This function is exactly the same
79549 as calling g_object_ref(), and exists mostly for historical
79550 reasons. It can still be convenient to avoid casting a widget
79551 to a #GObject, it saves a small amount of typing.</doc>
79552         <return-value transfer-ownership="full">
79553           <doc xml:whitespace="preserve">the widget that was referenced</doc>
79554           <type name="Widget" c:type="GtkWidget*"/>
79555         </return-value>
79556       </method>
79557       <method name="unref"
79558               c:identifier="gtk_widget_unref"
79559               deprecated="Use g_object_unref() instead."
79560               deprecated-version="2.12">
79561         <doc xml:whitespace="preserve">Inverse of gtk_widget_ref(). Equivalent to g_object_unref().</doc>
79562         <return-value transfer-ownership="none">
79563           <type name="none" c:type="void"/>
79564         </return-value>
79565       </method>
79566       <method name="set"
79567               c:identifier="gtk_widget_set"
79568               introspectable="0"
79569               deprecated="Use g_object_set() instead."
79570               deprecated-version="2.0">
79571         <doc xml:whitespace="preserve">Precursor of g_object_set().</doc>
79572         <return-value transfer-ownership="none">
79573           <type name="none" c:type="void"/>
79574         </return-value>
79575         <parameters>
79576           <parameter name="first_property_name" transfer-ownership="none">
79577             <doc xml:whitespace="preserve">name of first property to set</doc>
79578             <type name="utf8" c:type="gchar*"/>
79579           </parameter>
79580           <parameter transfer-ownership="none">
79581             <varargs>
79582             </varargs>
79583           </parameter>
79584         </parameters>
79585       </method>
79586       <method name="unparent" c:identifier="gtk_widget_unparent">
79587         <doc xml:whitespace="preserve">This function is only for use in widget implementations.
79588 Should be called by implementations of the remove method
79589 on #GtkContainer, to dissociate a child from the container.</doc>
79590         <return-value transfer-ownership="none">
79591           <type name="none" c:type="void"/>
79592         </return-value>
79593       </method>
79594       <method name="show" c:identifier="gtk_widget_show">
79595         <doc xml:whitespace="preserve">Flags a widget to be displayed. Any widget that isn't shown will
79596 not appear on the screen. If you want to show all the widgets in a
79597 container, it's easier to call gtk_widget_show_all() on the
79598 container, instead of individually showing the widgets.
79599 Remember that you have to show the containers containing a widget,
79600 in addition to the widget itself, before it will appear onscreen.
79601 When a toplevel container is shown, it is immediately realized and
79602 mapped; other shown widgets are realized and mapped when their
79603 toplevel container is realized and mapped.</doc>
79604         <return-value transfer-ownership="none">
79605           <type name="none" c:type="void"/>
79606         </return-value>
79607       </method>
79608       <method name="show_now" c:identifier="gtk_widget_show_now">
79609         <doc xml:whitespace="preserve">Shows a widget. If the widget is an unmapped toplevel widget
79610 (i.e. a #GtkWindow that has not yet been shown), enter the main
79611 loop and wait for the window to actually be mapped. Be careful;
79612 because the main loop is running, anything can happen during
79613 this function.</doc>
79614         <return-value transfer-ownership="none">
79615           <type name="none" c:type="void"/>
79616         </return-value>
79617       </method>
79618       <method name="hide" c:identifier="gtk_widget_hide">
79619         <doc xml:whitespace="preserve">Reverses the effects of gtk_widget_show(), causing the widget to be
79620 hidden (invisible to the user).</doc>
79621         <return-value transfer-ownership="none">
79622           <type name="none" c:type="void"/>
79623         </return-value>
79624       </method>
79625       <method name="show_all" c:identifier="gtk_widget_show_all">
79626         <doc xml:whitespace="preserve">Recursively shows a widget, and any child widgets (if the widget is
79627 a container).</doc>
79628         <return-value transfer-ownership="none">
79629           <type name="none" c:type="void"/>
79630         </return-value>
79631       </method>
79632       <method name="hide_all" c:identifier="gtk_widget_hide_all">
79633         <doc xml:whitespace="preserve">Recursively hides a widget and any child widgets.</doc>
79634         <return-value transfer-ownership="none">
79635           <type name="none" c:type="void"/>
79636         </return-value>
79637       </method>
79638       <method name="set_no_show_all"
79639               c:identifier="gtk_widget_set_no_show_all"
79640               version="2.4">
79641         <doc xml:whitespace="preserve">Sets the #GtkWidget:no-show-all property, which determines whether 
79642 calls to gtk_widget_show_all() and gtk_widget_hide_all() will affect 
79643 this widget. 
79644 This is mostly for use in constructing widget hierarchies with externally
79645 controlled visibility, see #GtkUIManager.</doc>
79646         <return-value transfer-ownership="none">
79647           <type name="none" c:type="void"/>
79648         </return-value>
79649         <parameters>
79650           <parameter name="no_show_all" transfer-ownership="none">
79651             <doc xml:whitespace="preserve">the new value for the "no-show-all" property</doc>
79652             <type name="boolean" c:type="gboolean"/>
79653           </parameter>
79654         </parameters>
79655       </method>
79656       <method name="get_no_show_all"
79657               c:identifier="gtk_widget_get_no_show_all"
79658               version="2.4">
79659         <doc xml:whitespace="preserve">Returns the current value of the GtkWidget:no-show-all property, 
79660 which determines whether calls to gtk_widget_show_all() and 
79661 gtk_widget_hide_all() will affect this widget.</doc>
79662         <return-value transfer-ownership="none">
79663           <doc xml:whitespace="preserve">the current value of the "no-show-all" property.</doc>
79664           <type name="boolean" c:type="gboolean"/>
79665         </return-value>
79666       </method>
79667       <method name="map" c:identifier="gtk_widget_map">
79668         <doc xml:whitespace="preserve">This function is only for use in widget implementations. Causes
79669 a widget to be mapped if it isn't already.</doc>
79670         <return-value transfer-ownership="none">
79671           <type name="none" c:type="void"/>
79672         </return-value>
79673       </method>
79674       <method name="unmap" c:identifier="gtk_widget_unmap">
79675         <doc xml:whitespace="preserve">This function is only for use in widget implementations. Causes
79676 a widget to be unmapped if it's currently mapped.</doc>
79677         <return-value transfer-ownership="none">
79678           <type name="none" c:type="void"/>
79679         </return-value>
79680       </method>
79681       <method name="realize" c:identifier="gtk_widget_realize">
79682         <doc xml:whitespace="preserve">Creates the GDK (windowing system) resources associated with a
79683 widget.  For example, @widget-&gt;window will be created when a widget
79684 is realized.  Normally realization happens implicitly; if you show
79685 a widget and all its parent containers, then the widget will be
79686 realized and mapped automatically.
79687 Realizing a widget requires all
79688 the widget's parent widgets to be realized; calling
79689 gtk_widget_realize() realizes the widget's parents in addition to
79690 when you realize it, bad things will happen.
79691 This function is primarily used in widget implementations, and
79692 isn't very useful otherwise. Many times when you think you might
79693 need it, a better approach is to connect to a signal that will be
79694 called after the widget is realized automatically, such as
79695 GtkWidget::expose-event. Or simply g_signal_connect () to the
79696 GtkWidget::realize signal.</doc>
79697         <return-value transfer-ownership="none">
79698           <type name="none" c:type="void"/>
79699         </return-value>
79700       </method>
79701       <method name="unrealize" c:identifier="gtk_widget_unrealize">
79702         <doc xml:whitespace="preserve">This function is only useful in widget implementations.
79703 Causes a widget to be unrealized (frees all GDK resources
79704 associated with the widget, such as @widget-&gt;window).</doc>
79705         <return-value transfer-ownership="none">
79706           <type name="none" c:type="void"/>
79707         </return-value>
79708       </method>
79709       <method name="queue_draw" c:identifier="gtk_widget_queue_draw">
79710         <doc xml:whitespace="preserve">Equivalent to calling gtk_widget_queue_draw_area() for the
79711 entire area of a widget.</doc>
79712         <return-value transfer-ownership="none">
79713           <type name="none" c:type="void"/>
79714         </return-value>
79715       </method>
79716       <method name="queue_draw_area" c:identifier="gtk_widget_queue_draw_area">
79717         <doc xml:whitespace="preserve">Invalidates the rectangular area of @widget defined by @x, @y,
79718 widget's window and all its child windows. Once the main loop
79719 becomes idle (after the current batch of events has been processed,
79720 roughly), the window will receive expose events for the union of
79721 all regions that have been invalidated.
79722 Normally you would only use this function in widget
79723 implementations. You might also use it, or
79724 gdk_window_invalidate_rect() directly, to schedule a redraw of a
79725 #GtkDrawingArea or some portion thereof.
79726 Frequently you can just call gdk_window_invalidate_rect() or
79727 gdk_window_invalidate_region() instead of this function. Those
79728 functions will invalidate only a single window, instead of the
79729 widget and all its children.
79730 The advantage of adding to the invalidated region compared to
79731 simply drawing immediately is efficiency; using an invalid region
79732 ensures that you only have to redraw one time.</doc>
79733         <return-value transfer-ownership="none">
79734           <type name="none" c:type="void"/>
79735         </return-value>
79736         <parameters>
79737           <parameter name="x" transfer-ownership="none">
79738             <doc xml:whitespace="preserve">x coordinate of upper-left corner of rectangle to redraw</doc>
79739             <type name="int" c:type="gint"/>
79740           </parameter>
79741           <parameter name="y" transfer-ownership="none">
79742             <doc xml:whitespace="preserve">y coordinate of upper-left corner of rectangle to redraw</doc>
79743             <type name="int" c:type="gint"/>
79744           </parameter>
79745           <parameter name="width" transfer-ownership="none">
79746             <doc xml:whitespace="preserve">width of region to draw</doc>
79747             <type name="int" c:type="gint"/>
79748           </parameter>
79749           <parameter name="height" transfer-ownership="none">
79750             <doc xml:whitespace="preserve">height of region to draw</doc>
79751             <type name="int" c:type="gint"/>
79752           </parameter>
79753         </parameters>
79754       </method>
79755       <method name="queue_clear"
79756               c:identifier="gtk_widget_queue_clear"
79757               deprecated="Use gtk_widget_queue_draw() instead."
79758               deprecated-version="2.2">
79759         <doc xml:whitespace="preserve">This function does the same as gtk_widget_queue_draw().</doc>
79760         <return-value transfer-ownership="none">
79761           <type name="none" c:type="void"/>
79762         </return-value>
79763       </method>
79764       <method name="queue_clear_area"
79765               c:identifier="gtk_widget_queue_clear_area"
79766               deprecated="Use gtk_widget_queue_draw_area() instead."
79767               deprecated-version="2.2">
79768         <doc xml:whitespace="preserve">This function is no longer different from
79769 gtk_widget_queue_draw_area(), though it once was. Now it just calls
79770 gtk_widget_queue_draw_area(). Originally
79771 gtk_widget_queue_clear_area() would force a redraw of the
79772 background for %GTK_NO_WINDOW widgets, and
79773 gtk_widget_queue_draw_area() would not. Now both functions ensure
79774 the background will be redrawn.</doc>
79775         <return-value transfer-ownership="none">
79776           <type name="none" c:type="void"/>
79777         </return-value>
79778         <parameters>
79779           <parameter name="x" transfer-ownership="none">
79780             <doc xml:whitespace="preserve">x coordinate of upper-left corner of rectangle to redraw</doc>
79781             <type name="int" c:type="gint"/>
79782           </parameter>
79783           <parameter name="y" transfer-ownership="none">
79784             <doc xml:whitespace="preserve">y coordinate of upper-left corner of rectangle to redraw</doc>
79785             <type name="int" c:type="gint"/>
79786           </parameter>
79787           <parameter name="width" transfer-ownership="none">
79788             <doc xml:whitespace="preserve">width of region to draw</doc>
79789             <type name="int" c:type="gint"/>
79790           </parameter>
79791           <parameter name="height" transfer-ownership="none">
79792             <doc xml:whitespace="preserve">height of region to draw</doc>
79793             <type name="int" c:type="gint"/>
79794           </parameter>
79795         </parameters>
79796       </method>
79797       <method name="queue_resize" c:identifier="gtk_widget_queue_resize">
79798         <doc xml:whitespace="preserve">This function is only for use in widget implementations.
79799 Flags a widget to have its size renegotiated; should
79800 be called when a widget for some reason has a new size request.
79801 For example, when you change the text in a #GtkLabel, #GtkLabel
79802 queues a resize to ensure there's enough space for the new text.</doc>
79803         <return-value transfer-ownership="none">
79804           <type name="none" c:type="void"/>
79805         </return-value>
79806       </method>
79807       <method name="queue_resize_no_redraw"
79808               c:identifier="gtk_widget_queue_resize_no_redraw"
79809               version="2.4">
79810         <doc xml:whitespace="preserve">This function works like gtk_widget_queue_resize(), 
79811 except that the widget is not invalidated.</doc>
79812         <return-value transfer-ownership="none">
79813           <type name="none" c:type="void"/>
79814         </return-value>
79815       </method>
79816       <method name="draw" c:identifier="gtk_widget_draw">
79817         <doc xml:whitespace="preserve">In GTK+ 1.2, this function would immediately render the
79818 region @area of a widget, by invoking the virtual draw method of a
79819 widget. In GTK+ 2.0, the draw method is gone, and instead
79820 gtk_widget_draw() simply invalidates the specified region of the
79821 widget, then updates the invalid region of the widget immediately.
79822 Usually you don't want to update the region immediately for
79823 performance reasons, so in general gtk_widget_queue_draw_area() is
79824 a better choice if you want to draw a region of a widget.</doc>
79825         <return-value transfer-ownership="none">
79826           <type name="none" c:type="void"/>
79827         </return-value>
79828         <parameters>
79829           <parameter name="area" transfer-ownership="none">
79830             <doc xml:whitespace="preserve">area to draw</doc>
79831             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
79832           </parameter>
79833         </parameters>
79834       </method>
79835       <method name="size_request" c:identifier="gtk_widget_size_request">
79836         <doc xml:whitespace="preserve">This function is typically used when implementing a #GtkContainer
79837 subclass.  Obtains the preferred size of a widget. The container
79838 uses this information to arrange its child widgets and decide what
79839 size allocations to give them with gtk_widget_size_allocate().
79840 You can also call this function from an application, with some
79841 caveats. Most notably, getting a size request requires the widget
79842 to be associated with a screen, because font information may be
79843 needed. Multihead-aware applications should keep this in mind.
79844 Also remember that the size request is not necessarily the size
79845 a widget will actually be allocated.
79846 See also gtk_widget_get_child_requisition().</doc>
79847         <return-value transfer-ownership="none">
79848           <type name="none" c:type="void"/>
79849         </return-value>
79850         <parameters>
79851           <parameter name="requisition" transfer-ownership="none">
79852             <doc xml:whitespace="preserve">a #GtkRequisition to be filled in</doc>
79853             <type name="Requisition" c:type="GtkRequisition*"/>
79854           </parameter>
79855         </parameters>
79856       </method>
79857       <method name="size_allocate" c:identifier="gtk_widget_size_allocate">
79858         <doc xml:whitespace="preserve">This function is only used by #GtkContainer subclasses, to assign a size
79859 and position to their child widgets.</doc>
79860         <return-value transfer-ownership="none">
79861           <type name="none" c:type="void"/>
79862         </return-value>
79863         <parameters>
79864           <parameter name="allocation" transfer-ownership="none">
79865             <doc xml:whitespace="preserve">position and size to be allocated to @widget</doc>
79866             <type name="Allocation" c:type="GtkAllocation*"/>
79867           </parameter>
79868         </parameters>
79869       </method>
79870       <method name="get_child_requisition"
79871               c:identifier="gtk_widget_get_child_requisition">
79872         <doc xml:whitespace="preserve">This function is only for use in widget implementations. Obtains
79873 geometry on the widget (e.g. with gtk_widget_set_size_request()),
79874 in which case it returns that geometry instead of the widget's
79875 requisition.
79876 This function differs from gtk_widget_size_request() in that
79877 it retrieves the last size request value from @widget-&gt;requisition,
79878 while gtk_widget_size_request() actually calls the "size_request" method
79879 on @widget to compute the size request and fill in @widget-&gt;requisition,
79880 and only then returns @widget-&gt;requisition.
79881 Because this function does not call the "size_request" method, it
79882 can only be used when you know that @widget-&gt;requisition is
79883 up-to-date, that is, gtk_widget_size_request() has been called
79884 since the last time a resize was queued. In general, only container
79885 implementations have this information; applications should use
79886 gtk_widget_size_request().</doc>
79887         <return-value transfer-ownership="none">
79888           <type name="none" c:type="void"/>
79889         </return-value>
79890         <parameters>
79891           <parameter name="requisition" transfer-ownership="none">
79892             <doc xml:whitespace="preserve">a #GtkRequisition to be filled in</doc>
79893             <type name="Requisition" c:type="GtkRequisition*"/>
79894           </parameter>
79895         </parameters>
79896       </method>
79897       <method name="add_accelerator" c:identifier="gtk_widget_add_accelerator">
79898         <return-value transfer-ownership="none">
79899           <type name="none" c:type="void"/>
79900         </return-value>
79901         <parameters>
79902           <parameter name="accel_signal" transfer-ownership="none">
79903             <type name="utf8" c:type="gchar*"/>
79904           </parameter>
79905           <parameter name="accel_group" transfer-ownership="none">
79906             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
79907           </parameter>
79908           <parameter name="accel_key" transfer-ownership="none">
79909             <type name="uint" c:type="guint"/>
79910           </parameter>
79911           <parameter name="accel_mods" transfer-ownership="none">
79912             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
79913           </parameter>
79914           <parameter name="accel_flags" transfer-ownership="none">
79915             <type name="AccelFlags" c:type="GtkAccelFlags"/>
79916           </parameter>
79917         </parameters>
79918       </method>
79919       <method name="remove_accelerator"
79920               c:identifier="gtk_widget_remove_accelerator">
79921         <doc xml:whitespace="preserve">Removes an accelerator from @widget, previously installed with
79922 gtk_widget_add_accelerator().</doc>
79923         <return-value transfer-ownership="none">
79924           <doc xml:whitespace="preserve">whether an accelerator was installed and could be removed</doc>
79925           <type name="boolean" c:type="gboolean"/>
79926         </return-value>
79927         <parameters>
79928           <parameter name="accel_group" transfer-ownership="none">
79929             <doc xml:whitespace="preserve">accel group for this widget</doc>
79930             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
79931           </parameter>
79932           <parameter name="accel_key" transfer-ownership="none">
79933             <doc xml:whitespace="preserve">GDK keyval of the accelerator</doc>
79934             <type name="uint" c:type="guint"/>
79935           </parameter>
79936           <parameter name="accel_mods" transfer-ownership="none">
79937             <doc xml:whitespace="preserve">modifier key combination of the accelerator</doc>
79938             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
79939           </parameter>
79940         </parameters>
79941       </method>
79942       <method name="set_accel_path" c:identifier="gtk_widget_set_accel_path">
79943         <doc xml:whitespace="preserve">Given an accelerator group, @accel_group, and an accelerator path,
79944 key binding that is defined for @accel_path is pressed, @widget
79945 will be activated.  This removes any accelerators (for any
79946 accelerator group) installed by previous calls to
79947 gtk_widget_set_accel_path(). Associating accelerators with
79948 paths allows them to be modified by the user and the modifications
79949 to be saved for future use. (See gtk_accel_map_save().)
79950 This function is a low level function that would most likely
79951 be used by a menu creation system like #GtkUIManager. If you
79952 use #GtkUIManager, setting up accelerator paths will be done
79953 automatically.
79954 Even when you you aren't using #GtkUIManager, if you only want to
79955 set up accelerators on menu items gtk_menu_item_set_accel_path()
79956 provides a somewhat more convenient interface.
79957 Note that @accel_path string will be stored in a #GQuark. Therefore, if you
79958 pass a static string, you can save some memory by interning it first with 
79959 g_intern_static_string().</doc>
79960         <return-value transfer-ownership="none">
79961           <type name="none" c:type="void"/>
79962         </return-value>
79963         <parameters>
79964           <parameter name="accel_path"
79965                      transfer-ownership="none"
79966                      allow-none="1">
79967             <doc xml:whitespace="preserve">path used to look up the accelerator</doc>
79968             <type name="utf8" c:type="gchar*"/>
79969           </parameter>
79970           <parameter name="accel_group"
79971                      transfer-ownership="none"
79972                      allow-none="1">
79973             <doc xml:whitespace="preserve">a #GtkAccelGroup.</doc>
79974             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
79975           </parameter>
79976         </parameters>
79977       </method>
79978       <method name="list_accel_closures"
79979               c:identifier="gtk_widget_list_accel_closures"
79980               introspectable="0">
79981         <return-value transfer-ownership="full">
79982           <type name="GLib.List" c:type="GList*">
79983             <type name="any" c:type="gpointer"/>
79984           </type>
79985         </return-value>
79986       </method>
79987       <method name="can_activate_accel"
79988               c:identifier="gtk_widget_can_activate_accel"
79989               version="2.4">
79990         <doc xml:whitespace="preserve">Determines whether an accelerator that activates the signal
79991 identified by @signal_id can currently be activated.
79992 This is done by emitting the #GtkWidget::can-activate-accel
79993 signal on @widget; if the signal isn't overridden by a
79994 handler or in a derived widget, then the default check is
79995 that the widget must be sensitive, and the widget and all
79996 its ancestors mapped.</doc>
79997         <return-value transfer-ownership="none">
79998           <doc xml:whitespace="preserve">%TRUE if the accelerator can be activated.</doc>
79999           <type name="boolean" c:type="gboolean"/>
80000         </return-value>
80001         <parameters>
80002           <parameter name="signal_id" transfer-ownership="none">
80003             <doc xml:whitespace="preserve">the ID of a signal installed on @widget</doc>
80004             <type name="uint" c:type="guint"/>
80005           </parameter>
80006         </parameters>
80007       </method>
80008       <method name="mnemonic_activate"
80009               c:identifier="gtk_widget_mnemonic_activate">
80010         <doc xml:whitespace="preserve">Emits the #GtkWidget::mnemonic-activate signal.
80011 The default handler for this signal activates the @widget if
80012 is %TRUE.</doc>
80013         <return-value transfer-ownership="none">
80014           <doc xml:whitespace="preserve">%TRUE if the signal has been handled</doc>
80015           <type name="boolean" c:type="gboolean"/>
80016         </return-value>
80017         <parameters>
80018           <parameter name="group_cycling" transfer-ownership="none">
80019             <doc xml:whitespace="preserve">%TRUE if there are other widgets with the same mnemonic</doc>
80020             <type name="boolean" c:type="gboolean"/>
80021           </parameter>
80022         </parameters>
80023       </method>
80024       <method name="event" c:identifier="gtk_widget_event">
80025         <doc xml:whitespace="preserve">Rarely-used function. This function is used to emit
80026 the event signals on a widget (those signals should never
80027 be emitted without using this function to do so).
80028 If you want to synthesize an event though, don't use this function;
80029 instead, use gtk_main_do_event() so the event will behave as if
80030 it were in the event queue. Don't synthesize expose events; instead,
80031 use gdk_window_invalidate_rect() to invalidate a region of the
80032 window.
80033 the event was handled)</doc>
80034         <return-value transfer-ownership="none">
80035           <doc xml:whitespace="preserve">return from the event signal emission (%TRUE if</doc>
80036           <type name="boolean" c:type="gboolean"/>
80037         </return-value>
80038         <parameters>
80039           <parameter name="event" transfer-ownership="none">
80040             <doc xml:whitespace="preserve">a #GdkEvent</doc>
80041             <type name="Gdk.Event" c:type="GdkEvent*"/>
80042           </parameter>
80043         </parameters>
80044       </method>
80045       <method name="send_expose" c:identifier="gtk_widget_send_expose">
80046         <doc xml:whitespace="preserve">Very rarely-used function. This function is used to emit
80047 an expose event signals on a widget. This function is not
80048 normally used directly. The only time it is used is when
80049 propagating an expose event to a child %NO_WINDOW widget, and
80050 that is normally done using gtk_container_propagate_expose().
80051 If you want to force an area of a window to be redrawn, 
80052 use gdk_window_invalidate_rect() or gdk_window_invalidate_region().
80053 To cause the redraw to be done immediately, follow that call
80054 with a call to gdk_window_process_updates().
80055 the event was handled)</doc>
80056         <return-value transfer-ownership="none">
80057           <doc xml:whitespace="preserve">return from the event signal emission (%TRUE if</doc>
80058           <type name="int" c:type="gint"/>
80059         </return-value>
80060         <parameters>
80061           <parameter name="event" transfer-ownership="none">
80062             <doc xml:whitespace="preserve">a expose #GdkEvent</doc>
80063             <type name="Gdk.Event" c:type="GdkEvent*"/>
80064           </parameter>
80065         </parameters>
80066       </method>
80067       <method name="send_focus_change"
80068               c:identifier="gtk_widget_send_focus_change"
80069               version="2.22">
80070         <doc xml:whitespace="preserve">Sends the focus change @event to @widget
80071 This function is not meant to be used by applications. The only time it
80072 should be used is when it is necessary for a #GtkWidget to assign focus
80073 to a widget that is semantically owned by the first widget even though
80074 it's not a direct child - for instance, a search entry in a floating
80075 window similar to the quick search in #GtkTreeView.
80076 An example of its usage is:
80077 |[
80078 GdkEvent *fevent = gdk_event_new (GDK_FOCUS_CHANGE);
80079 fevent-&gt;focus_change.type = GDK_FOCUS_CHANGE;
80080 fevent-&gt;focus_change.in = TRUE;
80081 fevent-&gt;focus_change.window = gtk_widget_get_window (widget);
80082 if (fevent-&gt;focus_change.window != NULL)
80083 g_object_ref (fevent-&gt;focus_change.window);
80084 gtk_widget_send_focus_change (widget, fevent);
80085 gdk_event_free (event);
80086 ]|
80087 if the event was handled, and %FALSE otherwise</doc>
80088         <return-value transfer-ownership="none">
80089           <doc xml:whitespace="preserve">the return value from the event signal emission: %TRUE</doc>
80090           <type name="boolean" c:type="gboolean"/>
80091         </return-value>
80092         <parameters>
80093           <parameter name="event" transfer-ownership="none">
80094             <doc xml:whitespace="preserve">a #GdkEvent of type GDK_FOCUS_CHANGE</doc>
80095             <type name="Gdk.Event" c:type="GdkEvent*"/>
80096           </parameter>
80097         </parameters>
80098       </method>
80099       <method name="activate" c:identifier="gtk_widget_activate">
80100         <doc xml:whitespace="preserve">For widgets that can be "activated" (buttons, menu items, etc.)
80101 this function activates them. Activation is what happens when you
80102 press Enter on a widget during key navigation. If @widget isn't 
80103 activatable, the function returns %FALSE.</doc>
80104         <return-value transfer-ownership="none">
80105           <doc xml:whitespace="preserve">%TRUE if the widget was activatable</doc>
80106           <type name="boolean" c:type="gboolean"/>
80107         </return-value>
80108       </method>
80109       <method name="set_scroll_adjustments"
80110               c:identifier="gtk_widget_set_scroll_adjustments">
80111         <doc xml:whitespace="preserve">For widgets that support scrolling, sets the scroll adjustments and
80112 returns %TRUE.  For widgets that don't support scrolling, does
80113 nothing and returns %FALSE. Widgets that don't support scrolling
80114 can be scrolled by placing them in a #GtkViewport, which does
80115 support scrolling.</doc>
80116         <return-value transfer-ownership="none">
80117           <doc xml:whitespace="preserve">%TRUE if the widget supports scrolling</doc>
80118           <type name="boolean" c:type="gboolean"/>
80119         </return-value>
80120         <parameters>
80121           <parameter name="hadjustment"
80122                      transfer-ownership="none"
80123                      allow-none="1">
80124             <doc xml:whitespace="preserve">an adjustment for horizontal scrolling, or %NULL</doc>
80125             <type name="Adjustment" c:type="GtkAdjustment*"/>
80126           </parameter>
80127           <parameter name="vadjustment"
80128                      transfer-ownership="none"
80129                      allow-none="1">
80130             <doc xml:whitespace="preserve">an adjustment for vertical scrolling, or %NULL</doc>
80131             <type name="Adjustment" c:type="GtkAdjustment*"/>
80132           </parameter>
80133         </parameters>
80134       </method>
80135       <method name="reparent" c:identifier="gtk_widget_reparent">
80136         <doc xml:whitespace="preserve">Moves a widget from one #GtkContainer to another, handling reference
80137 count issues to avoid destroying the widget.</doc>
80138         <return-value transfer-ownership="none">
80139           <type name="none" c:type="void"/>
80140         </return-value>
80141         <parameters>
80142           <parameter name="new_parent" transfer-ownership="none">
80143             <doc xml:whitespace="preserve">a #GtkContainer to move the widget into</doc>
80144             <type name="Widget" c:type="GtkWidget*"/>
80145           </parameter>
80146         </parameters>
80147       </method>
80148       <method name="intersect" c:identifier="gtk_widget_intersect">
80149         <doc xml:whitespace="preserve">Computes the intersection of a @widget's area and @area, storing
80150 the intersection in @intersection, and returns %TRUE if there was
80151 an intersection.  @intersection may be %NULL if you're only
80152 interested in whether there was an intersection.</doc>
80153         <return-value transfer-ownership="none">
80154           <doc xml:whitespace="preserve">%TRUE if there was an intersection</doc>
80155           <type name="boolean" c:type="gboolean"/>
80156         </return-value>
80157         <parameters>
80158           <parameter name="area" transfer-ownership="none">
80159             <doc xml:whitespace="preserve">a rectangle</doc>
80160             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
80161           </parameter>
80162           <parameter name="intersection" transfer-ownership="none">
80163             <doc xml:whitespace="preserve">rectangle to store intersection of @widget and @area</doc>
80164             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
80165           </parameter>
80166         </parameters>
80167       </method>
80168       <method name="region_intersect"
80169               c:identifier="gtk_widget_region_intersect">
80170         <doc xml:whitespace="preserve">Computes the intersection of a @widget's area and @region, returning
80171 the intersection. The result may be empty, use gdk_region_empty() to
80172 check.</doc>
80173         <return-value transfer-ownership="full">
80174           <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>
80175           <type name="Gdk.Region" c:type="GdkRegion*"/>
80176         </return-value>
80177         <parameters>
80178           <parameter name="region" transfer-ownership="none">
80179             <doc xml:whitespace="preserve">a #GdkRegion, 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>
80180             <type name="Gdk.Region" c:type="GdkRegion*"/>
80181           </parameter>
80182         </parameters>
80183       </method>
80184       <method name="freeze_child_notify"
80185               c:identifier="gtk_widget_freeze_child_notify">
80186         <doc xml:whitespace="preserve">Stops emission of #GtkWidget::child-notify signals on @widget. The 
80187 signals are queued until gtk_widget_thaw_child_notify() is called 
80188 on @widget. 
80189 This is the analogue of g_object_freeze_notify() for child properties.</doc>
80190         <return-value transfer-ownership="none">
80191           <type name="none" c:type="void"/>
80192         </return-value>
80193       </method>
80194       <method name="child_notify" c:identifier="gtk_widget_child_notify">
80195         <doc xml:whitespace="preserve">Emits a #GtkWidget::child-notify signal for the 
80196 &lt;link linkend="child-properties"&gt;child property&lt;/link&gt; @child_property 
80197 on @widget.
80198 This is the analogue of g_object_notify() for child properties.</doc>
80199         <return-value transfer-ownership="none">
80200           <type name="none" c:type="void"/>
80201         </return-value>
80202         <parameters>
80203           <parameter name="child_property" transfer-ownership="none">
80204             <doc xml:whitespace="preserve">the name of a child property installed on the class of @widget&lt;!-- --&gt;'s parent</doc>
80205             <type name="utf8" c:type="gchar*"/>
80206           </parameter>
80207         </parameters>
80208       </method>
80209       <method name="thaw_child_notify"
80210               c:identifier="gtk_widget_thaw_child_notify">
80211         <doc xml:whitespace="preserve">Reverts the effect of a previous call to gtk_widget_freeze_child_notify().
80212 This causes all queued #GtkWidget::child-notify signals on @widget to be 
80213 emitted.</doc>
80214         <return-value transfer-ownership="none">
80215           <type name="none" c:type="void"/>
80216         </return-value>
80217       </method>
80218       <method name="set_can_focus"
80219               c:identifier="gtk_widget_set_can_focus"
80220               version="2.18">
80221         <doc xml:whitespace="preserve">Specifies whether @widget can own the input focus. See
80222 gtk_widget_grab_focus() for actually setting the input focus on a
80223 widget.</doc>
80224         <return-value transfer-ownership="none">
80225           <type name="none" c:type="void"/>
80226         </return-value>
80227         <parameters>
80228           <parameter name="can_focus" transfer-ownership="none">
80229             <doc xml:whitespace="preserve">whether or not @widget can own the input focus.</doc>
80230             <type name="boolean" c:type="gboolean"/>
80231           </parameter>
80232         </parameters>
80233       </method>
80234       <method name="get_can_focus"
80235               c:identifier="gtk_widget_get_can_focus"
80236               version="2.18">
80237         <doc xml:whitespace="preserve">Determines whether @widget can own the input focus. See
80238 gtk_widget_set_can_focus().</doc>
80239         <return-value transfer-ownership="none">
80240           <doc xml:whitespace="preserve">%TRUE if @widget can own the input focus, %FALSE otherwise</doc>
80241           <type name="boolean" c:type="gboolean"/>
80242         </return-value>
80243       </method>
80244       <method name="has_focus"
80245               c:identifier="gtk_widget_has_focus"
80246               version="2.18">
80247         <doc xml:whitespace="preserve">Determines if the widget has the global input focus. See
80248 gtk_widget_is_focus() for the difference between having the global
80249 input focus, and only having the focus within a toplevel.</doc>
80250         <return-value transfer-ownership="none">
80251           <doc xml:whitespace="preserve">%TRUE if the widget has the global input focus.</doc>
80252           <type name="boolean" c:type="gboolean"/>
80253         </return-value>
80254       </method>
80255       <method name="is_focus" c:identifier="gtk_widget_is_focus">
80256         <doc xml:whitespace="preserve">Determines if the widget is the focus widget within its
80257 toplevel. (This does not mean that the %HAS_FOCUS flag is
80258 necessarily set; %HAS_FOCUS will only be set if the
80259 toplevel widget additionally has the global input focus.)</doc>
80260         <return-value transfer-ownership="none">
80261           <doc xml:whitespace="preserve">%TRUE if the widget is the focus widget.</doc>
80262           <type name="boolean" c:type="gboolean"/>
80263         </return-value>
80264       </method>
80265       <method name="grab_focus" c:identifier="gtk_widget_grab_focus">
80266         <doc xml:whitespace="preserve">Causes @widget to have the keyboard focus for the #GtkWindow it's
80267 inside. @widget must be a focusable widget, such as a #GtkEntry;
80268 something like #GtkFrame won't work.
80269 More precisely, it must have the %GTK_CAN_FOCUS flag set. Use
80270 gtk_widget_set_can_focus() to modify that flag.</doc>
80271         <return-value transfer-ownership="none">
80272           <type name="none" c:type="void"/>
80273         </return-value>
80274       </method>
80275       <method name="set_can_default"
80276               c:identifier="gtk_widget_set_can_default"
80277               version="2.18">
80278         <doc xml:whitespace="preserve">Specifies whether @widget can be a default widget. See
80279 gtk_widget_grab_default() for details about the meaning of
80280 "default".</doc>
80281         <return-value transfer-ownership="none">
80282           <type name="none" c:type="void"/>
80283         </return-value>
80284         <parameters>
80285           <parameter name="can_default" transfer-ownership="none">
80286             <doc xml:whitespace="preserve">whether or not @widget can be a default widget.</doc>
80287             <type name="boolean" c:type="gboolean"/>
80288           </parameter>
80289         </parameters>
80290       </method>
80291       <method name="get_can_default"
80292               c:identifier="gtk_widget_get_can_default"
80293               version="2.18">
80294         <doc xml:whitespace="preserve">Determines whether @widget can be a default widget. See
80295 gtk_widget_set_can_default().</doc>
80296         <return-value transfer-ownership="none">
80297           <doc xml:whitespace="preserve">%TRUE if @widget can be a default widget, %FALSE otherwise</doc>
80298           <type name="boolean" c:type="gboolean"/>
80299         </return-value>
80300       </method>
80301       <method name="has_default"
80302               c:identifier="gtk_widget_has_default"
80303               version="2.18">
80304         <doc xml:whitespace="preserve">Determines whether @widget is the current default widget within its
80305 toplevel. See gtk_widget_set_can_default().
80306 its toplevel, %FALSE otherwise</doc>
80307         <return-value transfer-ownership="none">
80308           <doc xml:whitespace="preserve">%TRUE if @widget is the current default widget within</doc>
80309           <type name="boolean" c:type="gboolean"/>
80310         </return-value>
80311       </method>
80312       <method name="grab_default" c:identifier="gtk_widget_grab_default">
80313         <doc xml:whitespace="preserve">Causes @widget to become the default widget. @widget must have the
80314 %GTK_CAN_DEFAULT flag set; typically you have to set this flag
80315 yourself by calling &lt;literal&gt;gtk_widget_set_can_default (@widget,
80316 %TRUE)&lt;/literal&gt;. The default widget is activated when 
80317 the user presses Enter in a window. Default widgets must be 
80318 activatable, that is, gtk_widget_activate() should affect them.</doc>
80319         <return-value transfer-ownership="none">
80320           <type name="none" c:type="void"/>
80321         </return-value>
80322       </method>
80323       <method name="set_receives_default"
80324               c:identifier="gtk_widget_set_receives_default"
80325               version="2.18">
80326         <doc xml:whitespace="preserve">Specifies whether @widget will be treated as the default widget
80327 within its toplevel when it has the focus, even if another widget
80328 is the default.
80329 See gtk_widget_grab_default() for details about the meaning of
80330 "default".</doc>
80331         <return-value transfer-ownership="none">
80332           <type name="none" c:type="void"/>
80333         </return-value>
80334         <parameters>
80335           <parameter name="receives_default" transfer-ownership="none">
80336             <doc xml:whitespace="preserve">whether or not @widget can be a default widget.</doc>
80337             <type name="boolean" c:type="gboolean"/>
80338           </parameter>
80339         </parameters>
80340       </method>
80341       <method name="get_receives_default"
80342               c:identifier="gtk_widget_get_receives_default"
80343               version="2.18">
80344         <doc xml:whitespace="preserve">Determines whether @widget is alyways treated as default widget
80345 withing its toplevel when it has the focus, even if another widget
80346 is the default.
80347 See gtk_widget_set_receives_default().
80348 %FALSE otherwise</doc>
80349         <return-value transfer-ownership="none">
80350           <doc xml:whitespace="preserve">%TRUE if @widget acts as default widget when focussed,</doc>
80351           <type name="boolean" c:type="gboolean"/>
80352         </return-value>
80353       </method>
80354       <method name="has_grab"
80355               c:identifier="gtk_widget_has_grab"
80356               version="2.18">
80357         <doc xml:whitespace="preserve">Determines whether the widget is currently grabbing events, so it
80358 is the only widget receiving input events (keyboard and mouse).
80359 See also gtk_grab_add().</doc>
80360         <return-value transfer-ownership="none">
80361           <doc xml:whitespace="preserve">%TRUE if the widget is in the grab_widgets stack</doc>
80362           <type name="boolean" c:type="gboolean"/>
80363         </return-value>
80364       </method>
80365       <method name="set_name" c:identifier="gtk_widget_set_name">
80366         <doc xml:whitespace="preserve">Widgets can be named, which allows you to refer to them from a
80367 gtkrc file. You can apply a style to widgets with a particular name
80368 in the gtkrc file. See the documentation for gtkrc files (on the
80369 same page as the docs for #GtkRcStyle).
80370 Note that widget names are separated by periods in paths (see 
80371 gtk_widget_path()), so names with embedded periods may cause confusion.</doc>
80372         <return-value transfer-ownership="none">
80373           <type name="none" c:type="void"/>
80374         </return-value>
80375         <parameters>
80376           <parameter name="name" transfer-ownership="none">
80377             <doc xml:whitespace="preserve">name for the widget</doc>
80378             <type name="utf8" c:type="gchar*"/>
80379           </parameter>
80380         </parameters>
80381       </method>
80382       <method name="get_name" c:identifier="gtk_widget_get_name">
80383         <doc xml:whitespace="preserve">Retrieves the name of a widget. See gtk_widget_set_name() for the
80384 significance of widget names.
80385 should not be modified or freed</doc>
80386         <return-value transfer-ownership="none">
80387           <doc xml:whitespace="preserve">name of the widget. This string is owned by GTK+ and</doc>
80388           <type name="utf8" c:type="gchar*"/>
80389         </return-value>
80390       </method>
80391       <method name="set_state" c:identifier="gtk_widget_set_state">
80392         <doc xml:whitespace="preserve">This function is for use in widget implementations. Sets the state
80393 of a widget (insensitive, prelighted, etc.) Usually you should set
80394 the state using wrapper functions such as gtk_widget_set_sensitive().</doc>
80395         <return-value transfer-ownership="none">
80396           <type name="none" c:type="void"/>
80397         </return-value>
80398         <parameters>
80399           <parameter name="state" transfer-ownership="none">
80400             <doc xml:whitespace="preserve">new state for @widget</doc>
80401             <type name="StateType" c:type="GtkStateType"/>
80402           </parameter>
80403         </parameters>
80404       </method>
80405       <method name="get_state"
80406               c:identifier="gtk_widget_get_state"
80407               version="2.18">
80408         <doc xml:whitespace="preserve">Returns the widget's state. See gtk_widget_set_state().</doc>
80409         <return-value transfer-ownership="full">
80410           <doc xml:whitespace="preserve">the state of @widget.</doc>
80411           <type name="StateType" c:type="GtkStateType"/>
80412         </return-value>
80413       </method>
80414       <method name="set_sensitive" c:identifier="gtk_widget_set_sensitive">
80415         <doc xml:whitespace="preserve">Sets the sensitivity of a widget. A widget is sensitive if the user
80416 can interact with it. Insensitive widgets are "grayed out" and the
80417 user can't interact with them. Insensitive widgets are known as
80418 "inactive", "disabled", or "ghosted" in some other toolkits.</doc>
80419         <return-value transfer-ownership="none">
80420           <type name="none" c:type="void"/>
80421         </return-value>
80422         <parameters>
80423           <parameter name="sensitive" transfer-ownership="none">
80424             <doc xml:whitespace="preserve">%TRUE to make the widget sensitive</doc>
80425             <type name="boolean" c:type="gboolean"/>
80426           </parameter>
80427         </parameters>
80428       </method>
80429       <method name="get_sensitive"
80430               c:identifier="gtk_widget_get_sensitive"
80431               version="2.18">
80432         <doc xml:whitespace="preserve">Returns the widget's sensitivity (in the sense of returning
80433 the value that has been set using gtk_widget_set_sensitive()).
80434 The effective sensitivity of a widget is however determined by both its
80435 own and its parent widget's sensitivity. See gtk_widget_is_sensitive().</doc>
80436         <return-value transfer-ownership="none">
80437           <doc xml:whitespace="preserve">%TRUE if the widget is sensitive</doc>
80438           <type name="boolean" c:type="gboolean"/>
80439         </return-value>
80440       </method>
80441       <method name="is_sensitive"
80442               c:identifier="gtk_widget_is_sensitive"
80443               version="2.18">
80444         <doc xml:whitespace="preserve">Returns the widget's effective sensitivity, which means
80445 it is sensitive itself and also its parent widget is sensntive</doc>
80446         <return-value transfer-ownership="none">
80447           <doc xml:whitespace="preserve">%TRUE if the widget is effectively sensitive</doc>
80448           <type name="boolean" c:type="gboolean"/>
80449         </return-value>
80450       </method>
80451       <method name="set_visible"
80452               c:identifier="gtk_widget_set_visible"
80453               version="2.18">
80454         <doc xml:whitespace="preserve">Sets the visibility state of @widget. Note that setting this to
80455 %TRUE doesn't mean the widget is actually viewable, see
80456 gtk_widget_get_visible().
80457 This function simply calls gtk_widget_show() or gtk_widget_hide()
80458 but is nicer to use when the visibility of the widget depends on
80459 some condition.</doc>
80460         <return-value transfer-ownership="none">
80461           <type name="none" c:type="void"/>
80462         </return-value>
80463         <parameters>
80464           <parameter name="visible" transfer-ownership="none">
80465             <doc xml:whitespace="preserve">whether the widget should be shown or not</doc>
80466             <type name="boolean" c:type="gboolean"/>
80467           </parameter>
80468         </parameters>
80469       </method>
80470       <method name="get_visible"
80471               c:identifier="gtk_widget_get_visible"
80472               version="2.18">
80473         <doc xml:whitespace="preserve">Determines whether the widget is visible. Note that this doesn't
80474 take into account whether the widget's parent is also visible
80475 or the widget is obscured in any way.
80476 See gtk_widget_set_visible().</doc>
80477         <return-value transfer-ownership="none">
80478           <doc xml:whitespace="preserve">%TRUE if the widget is visible</doc>
80479           <type name="boolean" c:type="gboolean"/>
80480         </return-value>
80481       </method>
80482       <method name="set_has_window"
80483               c:identifier="gtk_widget_set_has_window"
80484               version="2.18">
80485         <doc xml:whitespace="preserve">Specifies whether @widget has a #GdkWindow of its own. Note that
80486 all realized widgets have a non-%NULL "window" pointer
80487 (gtk_widget_get_window() never returns a %NULL window when a widget
80488 is realized), but for many of them it's actually the #GdkWindow of
80489 one of its parent widgets. Widgets that create a %window for
80490 themselves in GtkWidget::realize() however must announce this by
80491 calling this function with @has_window = %TRUE.
80492 This function should only be called by widget implementations,
80493 and they should call it in their init() function.</doc>
80494         <return-value transfer-ownership="none">
80495           <type name="none" c:type="void"/>
80496         </return-value>
80497         <parameters>
80498           <parameter name="has_window" transfer-ownership="none">
80499             <doc xml:whitespace="preserve">whether or not @widget has a window.</doc>
80500             <type name="boolean" c:type="gboolean"/>
80501           </parameter>
80502         </parameters>
80503       </method>
80504       <method name="get_has_window"
80505               c:identifier="gtk_widget_get_has_window"
80506               version="2.18">
80507         <doc xml:whitespace="preserve">Determines whether @widget has a #GdkWindow of its own. See
80508 gtk_widget_set_has_window().</doc>
80509         <return-value transfer-ownership="none">
80510           <doc xml:whitespace="preserve">%TRUE if @widget has a window, %FALSE otherwise</doc>
80511           <type name="boolean" c:type="gboolean"/>
80512         </return-value>
80513       </method>
80514       <method name="is_toplevel"
80515               c:identifier="gtk_widget_is_toplevel"
80516               version="2.18">
80517         <doc xml:whitespace="preserve">Determines whether @widget is a toplevel widget. Currently only
80518 #GtkWindow and #GtkInvisible are toplevel widgets. Toplevel
80519 widgets have no parent widget.</doc>
80520         <return-value transfer-ownership="none">
80521           <doc xml:whitespace="preserve">%TRUE if @widget is a toplevel, %FALSE otherwise</doc>
80522           <type name="boolean" c:type="gboolean"/>
80523         </return-value>
80524       </method>
80525       <method name="is_drawable"
80526               c:identifier="gtk_widget_is_drawable"
80527               version="2.18">
80528         <doc xml:whitespace="preserve">Determines whether @widget can be drawn to. A widget can be drawn
80529 to if it is mapped and visible.</doc>
80530         <return-value transfer-ownership="none">
80531           <doc xml:whitespace="preserve">%TRUE if @widget is drawable, %FALSE otherwise</doc>
80532           <type name="boolean" c:type="gboolean"/>
80533         </return-value>
80534       </method>
80535       <method name="set_realized"
80536               c:identifier="gtk_widget_set_realized"
80537               version="2.20">
80538         <doc xml:whitespace="preserve">Marks the widget as being realized.
80539 This function should only ever be called in a derived widget's
80540 "realize" or "unrealize" implementation.</doc>
80541         <return-value transfer-ownership="none">
80542           <type name="none" c:type="void"/>
80543         </return-value>
80544         <parameters>
80545           <parameter name="realized" transfer-ownership="none">
80546             <doc xml:whitespace="preserve">%TRUE to mark the widget as realized</doc>
80547             <type name="boolean" c:type="gboolean"/>
80548           </parameter>
80549         </parameters>
80550       </method>
80551       <method name="get_realized"
80552               c:identifier="gtk_widget_get_realized"
80553               version="2.20">
80554         <doc xml:whitespace="preserve">Determines whether @widget is realized.</doc>
80555         <return-value transfer-ownership="none">
80556           <doc xml:whitespace="preserve">%TRUE if @widget is realized, %FALSE otherwise</doc>
80557           <type name="boolean" c:type="gboolean"/>
80558         </return-value>
80559       </method>
80560       <method name="set_mapped"
80561               c:identifier="gtk_widget_set_mapped"
80562               version="2.20">
80563         <doc xml:whitespace="preserve">Marks the widget as being realized.
80564 This function should only ever be called in a derived widget's
80565 "map" or "unmap" implementation.</doc>
80566         <return-value transfer-ownership="none">
80567           <type name="none" c:type="void"/>
80568         </return-value>
80569         <parameters>
80570           <parameter name="mapped" transfer-ownership="none">
80571             <doc xml:whitespace="preserve">%TRUE to mark the widget as mapped</doc>
80572             <type name="boolean" c:type="gboolean"/>
80573           </parameter>
80574         </parameters>
80575       </method>
80576       <method name="get_mapped"
80577               c:identifier="gtk_widget_get_mapped"
80578               version="2.20">
80579         <doc xml:whitespace="preserve">Whether the widget is mapped.</doc>
80580         <return-value transfer-ownership="none">
80581           <doc xml:whitespace="preserve">%TRUE if the widget is mapped, %FALSE otherwise.</doc>
80582           <type name="boolean" c:type="gboolean"/>
80583         </return-value>
80584       </method>
80585       <method name="set_app_paintable"
80586               c:identifier="gtk_widget_set_app_paintable">
80587         <doc xml:whitespace="preserve">Sets whether the application intends to draw on the widget in
80588 an #GtkWidget::expose-event handler. 
80589 This is a hint to the widget and does not affect the behavior of 
80590 the GTK+ core; many widgets ignore this flag entirely. For widgets 
80591 that do pay attention to the flag, such as #GtkEventBox and #GtkWindow, 
80592 the effect is to suppress default themed drawing of the widget's 
80593 background. (Children of the widget will still be drawn.) The application 
80594 is then entirely responsible for drawing the widget background.
80595 Note that the background is still drawn when the widget is mapped.
80596 If this is not suitable (e.g. because you want to make a transparent
80597 window using an RGBA visual), you can work around this by doing:
80598 |[
80599 gtk_widget_realize (window);
80600 gdk_window_set_back_pixmap (window-&gt;window, NULL, FALSE);
80601 gtk_widget_show (window);
80602 ]|</doc>
80603         <return-value transfer-ownership="none">
80604           <type name="none" c:type="void"/>
80605         </return-value>
80606         <parameters>
80607           <parameter name="app_paintable" transfer-ownership="none">
80608             <doc xml:whitespace="preserve">%TRUE if the application will paint on the widget</doc>
80609             <type name="boolean" c:type="gboolean"/>
80610           </parameter>
80611         </parameters>
80612       </method>
80613       <method name="get_app_paintable"
80614               c:identifier="gtk_widget_get_app_paintable"
80615               version="2.18">
80616         <doc xml:whitespace="preserve">Determines whether the application intends to draw on the widget in
80617 an #GtkWidget::expose-event handler.
80618 See gtk_widget_set_app_paintable()</doc>
80619         <return-value transfer-ownership="none">
80620           <doc xml:whitespace="preserve">%TRUE if the widget is app paintable</doc>
80621           <type name="boolean" c:type="gboolean"/>
80622         </return-value>
80623       </method>
80624       <method name="set_double_buffered"
80625               c:identifier="gtk_widget_set_double_buffered">
80626         <doc xml:whitespace="preserve">Widgets are double buffered by default; you can use this function
80627 to turn off the buffering. "Double buffered" simply means that
80628 gdk_window_begin_paint_region() and gdk_window_end_paint() are called
80629 automatically around expose events sent to the
80630 widget. gdk_window_begin_paint() diverts all drawing to a widget's
80631 window to an offscreen buffer, and gdk_window_end_paint() draws the
80632 buffer to the screen. The result is that users see the window
80633 update in one smooth step, and don't see individual graphics
80634 primitives being rendered.
80635 In very simple terms, double buffered widgets don't flicker,
80636 so you would only use this function to turn off double buffering
80637 if you had special needs and really knew what you were doing.
80638 expose events, since even the clearing to the background color or 
80639 pixmap will not happen automatically (as it is done in 
80640 gdk_window_begin_paint()).</doc>
80641         <return-value transfer-ownership="none">
80642           <type name="none" c:type="void"/>
80643         </return-value>
80644         <parameters>
80645           <parameter name="double_buffered" transfer-ownership="none">
80646             <doc xml:whitespace="preserve">%TRUE to double-buffer a widget</doc>
80647             <type name="boolean" c:type="gboolean"/>
80648           </parameter>
80649         </parameters>
80650       </method>
80651       <method name="get_double_buffered"
80652               c:identifier="gtk_widget_get_double_buffered"
80653               version="2.18">
80654         <doc xml:whitespace="preserve">Determines whether the widget is double buffered.
80655 See gtk_widget_set_double_buffered()</doc>
80656         <return-value transfer-ownership="none">
80657           <doc xml:whitespace="preserve">%TRUE if the widget is double buffered</doc>
80658           <type name="boolean" c:type="gboolean"/>
80659         </return-value>
80660       </method>
80661       <method name="set_redraw_on_allocate"
80662               c:identifier="gtk_widget_set_redraw_on_allocate">
80663         <doc xml:whitespace="preserve">Sets whether the entire widget is queued for drawing when its size 
80664 allocation changes. By default, this setting is %TRUE and
80665 the entire widget is redrawn on every size change. If your widget
80666 leaves the upper left unchanged when made bigger, turning this
80667 setting off will improve performance.
80668 Note that for %NO_WINDOW widgets setting this flag to %FALSE turns
80669 its position changes; this is to allow containers that don't draw
80670 anything to avoid excess invalidations. If you set this flag on a
80671 %NO_WINDOW widget that &lt;emphasis&gt;does&lt;/emphasis&gt; draw on @widget-&gt;window, 
80672 you are responsible for invalidating both the old and new allocation 
80673 of the widget when the widget is moved and responsible for invalidating
80674 regions newly when the widget increases size.</doc>
80675         <return-value transfer-ownership="none">
80676           <type name="none" c:type="void"/>
80677         </return-value>
80678         <parameters>
80679           <parameter name="redraw_on_allocate" transfer-ownership="none">
80680             <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>
80681             <type name="boolean" c:type="gboolean"/>
80682           </parameter>
80683         </parameters>
80684       </method>
80685       <method name="set_parent" c:identifier="gtk_widget_set_parent">
80686         <doc xml:whitespace="preserve">This function is useful only when implementing subclasses of 
80687 #GtkContainer.
80688 Sets the container as the parent of @widget, and takes care of
80689 some details such as updating the state and style of the child
80690 to reflect its new location. The opposite function is
80691 gtk_widget_unparent().</doc>
80692         <return-value transfer-ownership="none">
80693           <type name="none" c:type="void"/>
80694         </return-value>
80695         <parameters>
80696           <parameter name="parent" transfer-ownership="none">
80697             <doc xml:whitespace="preserve">parent container</doc>
80698             <type name="Widget" c:type="GtkWidget*"/>
80699           </parameter>
80700         </parameters>
80701       </method>
80702       <method name="get_parent" c:identifier="gtk_widget_get_parent">
80703         <doc xml:whitespace="preserve">Returns the parent container of @widget.</doc>
80704         <return-value transfer-ownership="none">
80705           <doc xml:whitespace="preserve">the parent container of @widget, or %NULL</doc>
80706           <type name="Widget" c:type="GtkWidget*"/>
80707         </return-value>
80708       </method>
80709       <method name="set_parent_window"
80710               c:identifier="gtk_widget_set_parent_window">
80711         <doc xml:whitespace="preserve">Sets a non default parent window for @widget.</doc>
80712         <return-value transfer-ownership="none">
80713           <type name="none" c:type="void"/>
80714         </return-value>
80715         <parameters>
80716           <parameter name="parent_window" transfer-ownership="none">
80717             <doc xml:whitespace="preserve">the new parent window.</doc>
80718             <type name="Gdk.Window" c:type="GdkWindow*"/>
80719           </parameter>
80720         </parameters>
80721       </method>
80722       <method name="get_parent_window"
80723               c:identifier="gtk_widget_get_parent_window">
80724         <doc xml:whitespace="preserve">Gets @widget's parent window.</doc>
80725         <return-value transfer-ownership="none">
80726           <doc xml:whitespace="preserve">the parent window of @widget.</doc>
80727           <type name="Gdk.Window" c:type="GdkWindow*"/>
80728         </return-value>
80729       </method>
80730       <method name="set_child_visible"
80731               c:identifier="gtk_widget_set_child_visible">
80732         <doc xml:whitespace="preserve">Sets whether @widget should be mapped along with its when its parent
80733 is mapped and @widget has been shown with gtk_widget_show(). 
80734 The child visibility can be set for widget before it is added to
80735 a container with gtk_widget_set_parent(), to avoid mapping
80736 children unnecessary before immediately unmapping them. However
80737 it will be reset to its default state of %TRUE when the widget
80738 is removed from a container.
80739 Note that changing the child visibility of a widget does not
80740 queue a resize on the widget. Most of the time, the size of
80741 a widget is computed from all visible children, whether or
80742 not they are mapped. If this is not the case, the container
80743 can queue a resize itself.
80744 This function is only useful for container implementations and
80745 never should be called by an application.</doc>
80746         <return-value transfer-ownership="none">
80747           <type name="none" c:type="void"/>
80748         </return-value>
80749         <parameters>
80750           <parameter name="is_visible" transfer-ownership="none">
80751             <doc xml:whitespace="preserve">if %TRUE, @widget should be mapped along with its parent.</doc>
80752             <type name="boolean" c:type="gboolean"/>
80753           </parameter>
80754         </parameters>
80755       </method>
80756       <method name="get_child_visible"
80757               c:identifier="gtk_widget_get_child_visible">
80758         <doc xml:whitespace="preserve">Gets the value set with gtk_widget_set_child_visible().
80759 If you feel a need to use this function, your code probably
80760 needs reorganization. 
80761 This function is only useful for container implementations and
80762 never should be called by an application.</doc>
80763         <return-value transfer-ownership="none">
80764           <doc xml:whitespace="preserve">%TRUE if the widget is mapped with the parent.</doc>
80765           <type name="boolean" c:type="gboolean"/>
80766         </return-value>
80767       </method>
80768       <method name="set_window"
80769               c:identifier="gtk_widget_set_window"
80770               version="2.18">
80771         <doc xml:whitespace="preserve">Sets a widget's window. This function should only be used in a
80772 widget's GtkWidget::realize() implementation. The %window passed is
80773 usually either new window created with gdk_window_new(), or the
80774 window of its parent widget as returned by
80775 gtk_widget_get_parent_window().
80776 Widgets must indicate whether they will create their own #GdkWindow
80777 by calling gtk_widget_set_has_window(). This is usually done in the
80778 widget's init() function.</doc>
80779         <return-value transfer-ownership="none">
80780           <type name="none" c:type="void"/>
80781         </return-value>
80782         <parameters>
80783           <parameter name="window" transfer-ownership="none">
80784             <doc xml:whitespace="preserve">a #GdkWindow</doc>
80785             <type name="Gdk.Window" c:type="GdkWindow*"/>
80786           </parameter>
80787         </parameters>
80788       </method>
80789       <method name="get_window"
80790               c:identifier="gtk_widget_get_window"
80791               version="2.14">
80792         <doc xml:whitespace="preserve">Returns the widget's window if it is realized, %NULL otherwise</doc>
80793         <return-value transfer-ownership="full">
80794           <doc xml:whitespace="preserve">@widget's window.</doc>
80795           <type name="Gdk.Window" c:type="GdkWindow*"/>
80796         </return-value>
80797       </method>
80798       <method name="get_allocation"
80799               c:identifier="gtk_widget_get_allocation"
80800               version="2.18">
80801         <doc xml:whitespace="preserve">Retrieves the widget's allocation.</doc>
80802         <return-value transfer-ownership="none">
80803           <type name="none" c:type="void"/>
80804         </return-value>
80805         <parameters>
80806           <parameter name="allocation"
80807                      direction="out"
80808                      caller-allocates="1"
80809                      transfer-ownership="none">
80810             <doc xml:whitespace="preserve">a pointer to a #GtkAllocation to copy to</doc>
80811             <type name="Allocation" c:type="GtkAllocation*"/>
80812           </parameter>
80813         </parameters>
80814       </method>
80815       <method name="set_allocation"
80816               c:identifier="gtk_widget_set_allocation"
80817               version="2.18">
80818         <doc xml:whitespace="preserve">Sets the widget's allocation.  This should not be used
80819 directly, but from within a widget's size_allocate method.</doc>
80820         <return-value transfer-ownership="none">
80821           <type name="none" c:type="void"/>
80822         </return-value>
80823         <parameters>
80824           <parameter name="allocation" transfer-ownership="none">
80825             <doc xml:whitespace="preserve">a pointer to a #GtkAllocation to copy from</doc>
80826             <type name="Allocation" c:type="GtkAllocation*"/>
80827           </parameter>
80828         </parameters>
80829       </method>
80830       <method name="get_requisition"
80831               c:identifier="gtk_widget_get_requisition"
80832               version="2.20">
80833         <doc xml:whitespace="preserve">Retrieves the widget's requisition.
80834 This function should only be used by widget implementations in
80835 order to figure whether the widget's requisition has actually
80836 changed after some internal state change (so that they can call
80837 gtk_widget_queue_resize() instead of gtk_widget_queue_draw()).
80838 Normally, gtk_widget_size_request() should be used.</doc>
80839         <return-value transfer-ownership="none">
80840           <type name="none" c:type="void"/>
80841         </return-value>
80842         <parameters>
80843           <parameter name="requisition"
80844                      direction="out"
80845                      caller-allocates="1"
80846                      transfer-ownership="none">
80847             <doc xml:whitespace="preserve">a pointer to a #GtkRequisition to copy to</doc>
80848             <type name="Requisition" c:type="GtkRequisition*"/>
80849           </parameter>
80850         </parameters>
80851       </method>
80852       <method name="child_focus" c:identifier="gtk_widget_child_focus">
80853         <doc xml:whitespace="preserve">This function is used by custom widget implementations; if you're
80854 writing an app, you'd use gtk_widget_grab_focus() to move the focus
80855 to a particular widget, and gtk_container_set_focus_chain() to
80856 change the focus tab order. So you may want to investigate those
80857 functions instead.
80858 gtk_widget_child_focus() is called by containers as the user moves
80859 around the window using keyboard shortcuts. @direction indicates
80860 what kind of motion is taking place (up, down, left, right, tab
80861 forward, tab backward). gtk_widget_child_focus() emits the
80862 #GtkWidget::focus signal; widgets override the default handler
80863 for this signal in order to implement appropriate focus behavior.
80864 The default ::focus handler for a widget should return %TRUE if
80865 moving in @direction left the focus on a focusable location inside
80866 that widget, and %FALSE if moving in @direction moved the focus
80867 outside the widget. If returning %TRUE, widgets normally
80868 call gtk_widget_grab_focus() to place the focus accordingly;
80869 if returning %FALSE, they don't modify the current focus location.
80870 This function replaces gtk_container_focus() from GTK+ 1.2.  
80871 It was necessary to check that the child was visible, sensitive, 
80872 and focusable before calling gtk_container_focus(). 
80873 gtk_widget_child_focus() returns %FALSE if the widget is not 
80874 currently in a focusable state, so there's no need for those checks.</doc>
80875         <return-value transfer-ownership="none">
80876           <doc xml:whitespace="preserve">%TRUE if focus ended up inside @widget</doc>
80877           <type name="boolean" c:type="gboolean"/>
80878         </return-value>
80879         <parameters>
80880           <parameter name="direction" transfer-ownership="none">
80881             <doc xml:whitespace="preserve">direction of focus movement</doc>
80882             <type name="DirectionType" c:type="GtkDirectionType"/>
80883           </parameter>
80884         </parameters>
80885       </method>
80886       <method name="keynav_failed"
80887               c:identifier="gtk_widget_keynav_failed"
80888               version="2.12">
80889         <doc xml:whitespace="preserve">This function should be called whenever keyboard navigation within
80890 a single widget hits a boundary. The function emits the
80891 #GtkWidget::keynav-failed signal on the widget and its return
80892 value should be interpreted in a way similar to the return value of
80893 gtk_widget_child_focus():
80894 When %TRUE is returned, stay in the widget, the failed keyboard
80895 navigation is Ok and/or there is nowhere we can/should move the
80896 focus to.
80897 When %FALSE is returned, the caller should continue with keyboard
80898 navigation outside the widget, e.g. by calling
80899 gtk_widget_child_focus() on the widget's toplevel.
80900 The default ::keynav-failed handler returns %TRUE for 
80901 %GTK_DIR_TAB_FORWARD and %GTK_DIR_TAB_BACKWARD. For the other 
80902 values of #GtkDirectionType, it looks at the 
80903 #GtkSettings:gtk-keynav-cursor-only setting and returns %FALSE 
80904 if the setting is %TRUE. This way the entire user interface
80905 becomes cursor-navigatable on input devices such as mobile phones
80906 which only have cursor keys but no tab key.
80907 Whenever the default handler returns %TRUE, it also calls
80908 gtk_widget_error_bell() to notify the user of the failed keyboard
80909 navigation.
80910 A use case for providing an own implementation of ::keynav-failed 
80911 (either by connecting to it or by overriding it) would be a row of
80912 #GtkEntry widgets where the user should be able to navigate the
80913 entire row with the cursor keys, as e.g. known from user interfaces 
80914 that require entering license keys.
80915 if the emitting widget should try to handle the keyboard
80916 navigation attempt in its parent container(s).</doc>
80917         <return-value transfer-ownership="none">
80918           <doc xml:whitespace="preserve">%TRUE if stopping keyboard navigation is fine, %FALSE</doc>
80919           <type name="boolean" c:type="gboolean"/>
80920         </return-value>
80921         <parameters>
80922           <parameter name="direction" transfer-ownership="none">
80923             <doc xml:whitespace="preserve">direction of focus movement</doc>
80924             <type name="DirectionType" c:type="GtkDirectionType"/>
80925           </parameter>
80926         </parameters>
80927       </method>
80928       <method name="error_bell"
80929               c:identifier="gtk_widget_error_bell"
80930               version="2.12">
80931         <doc xml:whitespace="preserve">Notifies the user about an input-related error on this widget. 
80932 If the #GtkSettings:gtk-error-bell setting is %TRUE, it calls
80933 gdk_window_beep(), otherwise it does nothing.
80934 Note that the effect of gdk_window_beep() can be configured in many
80935 ways, depending on the windowing backend and the desktop environment
80936 or window manager that is used.</doc>
80937         <return-value transfer-ownership="none">
80938           <type name="none" c:type="void"/>
80939         </return-value>
80940       </method>
80941       <method name="set_size_request"
80942               c:identifier="gtk_widget_set_size_request">
80943         <doc xml:whitespace="preserve">Sets the minimum size of a widget; that is, the widget's size
80944 request will be @width by @height. You can use this function to
80945 force a widget to be either larger or smaller than it normally
80946 would be.
80947 In most cases, gtk_window_set_default_size() is a better choice for
80948 toplevel windows than this function; setting the default size will
80949 still allow users to shrink the window. Setting the size request
80950 will force them to leave the window at least as large as the size
80951 request. When dealing with window sizes,
80952 gtk_window_set_geometry_hints() can be a useful function as well.
80953 Note the inherent danger of setting any fixed size - themes,
80954 translations into other languages, different fonts, and user action
80955 can all change the appropriate size for a given widget. So, it's
80956 basically impossible to hardcode a size that will always be
80957 correct.
80958 The size request of a widget is the smallest size a widget can
80959 accept while still functioning well and drawing itself correctly.
80960 However in some strange cases a widget may be allocated less than
80961 its requested size, and in many cases a widget may be allocated more
80962 space than it requested.
80963 If the size request in a given direction is -1 (unset), then
80964 the "natural" size request of the widget will be used instead.
80965 Widgets can't actually be allocated a size less than 1 by 1, but
80966 you can pass 0,0 to this function to mean "as small as possible."</doc>
80967         <return-value transfer-ownership="none">
80968           <type name="none" c:type="void"/>
80969         </return-value>
80970         <parameters>
80971           <parameter name="width" transfer-ownership="none">
80972             <doc xml:whitespace="preserve">width @widget should request, or -1 to unset</doc>
80973             <type name="int" c:type="gint"/>
80974           </parameter>
80975           <parameter name="height" transfer-ownership="none">
80976             <doc xml:whitespace="preserve">height @widget should request, or -1 to unset</doc>
80977             <type name="int" c:type="gint"/>
80978           </parameter>
80979         </parameters>
80980       </method>
80981       <method name="get_size_request"
80982               c:identifier="gtk_widget_get_size_request">
80983         <doc xml:whitespace="preserve">Gets the size request that was explicitly set for the widget using
80984 gtk_widget_set_size_request(). A value of -1 stored in @width or
80985 and the natural requisition of the widget will be used intead. See
80986 gtk_widget_set_size_request(). To get the size a widget will
80987 actually use, call gtk_widget_size_request() instead of
80988 this function.</doc>
80989         <return-value transfer-ownership="none">
80990           <type name="none" c:type="void"/>
80991         </return-value>
80992         <parameters>
80993           <parameter name="width"
80994                      direction="out"
80995                      caller-allocates="0"
80996                      transfer-ownership="full"
80997                      allow-none="1">
80998             <doc xml:whitespace="preserve">return location for width, or %NULL</doc>
80999             <type name="int" c:type="gint*"/>
81000           </parameter>
81001           <parameter name="height"
81002                      direction="out"
81003                      caller-allocates="0"
81004                      transfer-ownership="full"
81005                      allow-none="1">
81006             <doc xml:whitespace="preserve">return location for height, or %NULL</doc>
81007             <type name="int" c:type="gint*"/>
81008           </parameter>
81009         </parameters>
81010       </method>
81011       <method name="set_uposition" c:identifier="gtk_widget_set_uposition">
81012         <doc xml:whitespace="preserve">Sets the position of a widget. The funny "u" in the name comes from
81013 the "user position" hint specified by the X Window System, and
81014 exists for legacy reasons. This function doesn't work if a widget
81015 is inside a container; it's only really useful on #GtkWindow.
81016 Don't use this function to center dialogs over the main application
81017 window; most window managers will do the centering on your behalf
81018 if you call gtk_window_set_transient_for(), and it's really not
81019 possible to get the centering to work correctly in all cases from
81020 application code. But if you insist, use gtk_window_set_position()
81021 to set #GTK_WIN_POS_CENTER_ON_PARENT, don't do the centering
81022 manually.
81023 Note that although @x and @y can be individually unset, the position
81024 is not honoured unless both @x and @y are set.</doc>
81025         <return-value transfer-ownership="none">
81026           <type name="none" c:type="void"/>
81027         </return-value>
81028         <parameters>
81029           <parameter name="x" transfer-ownership="none">
81030             <doc xml:whitespace="preserve">x position; -1 to unset x; -2 to leave x unchanged</doc>
81031             <type name="int" c:type="gint"/>
81032           </parameter>
81033           <parameter name="y" transfer-ownership="none">
81034             <doc xml:whitespace="preserve">y position; -1 to unset y; -2 to leave y unchanged</doc>
81035             <type name="int" c:type="gint"/>
81036           </parameter>
81037         </parameters>
81038       </method>
81039       <method name="set_usize"
81040               c:identifier="gtk_widget_set_usize"
81041               deprecated="Use gtk_widget_set_size_request() instead."
81042               deprecated-version="2.2">
81043         <doc xml:whitespace="preserve">Sets the minimum size of a widget; that is, the widget's size
81044 request will be @width by @height. You can use this function to
81045 force a widget to be either larger or smaller than it is. The
81046 strange "usize" name dates from the early days of GTK+, and derives
81047 from X Window System terminology. In many cases,
81048 gtk_window_set_default_size() is a better choice for toplevel
81049 windows than this function; setting the default size will still
81050 allow users to shrink the window. Setting the usize will force them
81051 to leave the window at least as large as the usize. When dealing
81052 with window sizes, gtk_window_set_geometry_hints() can be a useful
81053 function as well.
81054 Note the inherent danger of setting any fixed size - themes,
81055 translations into other languages, different fonts, and user action
81056 can all change the appropriate size for a given widget. So, it's
81057 basically impossible to hardcode a size that will always be
81058 correct.</doc>
81059         <return-value transfer-ownership="none">
81060           <type name="none" c:type="void"/>
81061         </return-value>
81062         <parameters>
81063           <parameter name="width" transfer-ownership="none">
81064             <doc xml:whitespace="preserve">minimum width, or -1 to unset</doc>
81065             <type name="int" c:type="gint"/>
81066           </parameter>
81067           <parameter name="height" transfer-ownership="none">
81068             <doc xml:whitespace="preserve">minimum height, or -1 to unset</doc>
81069             <type name="int" c:type="gint"/>
81070           </parameter>
81071         </parameters>
81072       </method>
81073       <method name="set_events" c:identifier="gtk_widget_set_events">
81074         <doc xml:whitespace="preserve">Sets the event mask (see #GdkEventMask) for a widget. The event
81075 mask determines which events a widget will receive. Keep in mind
81076 that different widgets have different default event masks, and by
81077 changing the event mask you may disrupt a widget's functionality,
81078 so be careful. This function must be called while a widget is
81079 unrealized. Consider gtk_widget_add_events() for widgets that are
81080 already realized, or if you want to preserve the existing event
81081 mask. This function can't be used with #GTK_NO_WINDOW widgets;
81082 to get events on those widgets, place them inside a #GtkEventBox
81083 and receive events on the event box.</doc>
81084         <return-value transfer-ownership="none">
81085           <type name="none" c:type="void"/>
81086         </return-value>
81087         <parameters>
81088           <parameter name="events" transfer-ownership="none">
81089             <doc xml:whitespace="preserve">event mask</doc>
81090             <type name="int" c:type="gint"/>
81091           </parameter>
81092         </parameters>
81093       </method>
81094       <method name="add_events" c:identifier="gtk_widget_add_events">
81095         <doc xml:whitespace="preserve">Adds the events in the bitfield @events to the event mask for</doc>
81096         <return-value transfer-ownership="none">
81097           <type name="none" c:type="void"/>
81098         </return-value>
81099         <parameters>
81100           <parameter name="events" transfer-ownership="none">
81101             <doc xml:whitespace="preserve">an event mask, see #GdkEventMask</doc>
81102             <type name="int" c:type="gint"/>
81103           </parameter>
81104         </parameters>
81105       </method>
81106       <method name="set_extension_events"
81107               c:identifier="gtk_widget_set_extension_events">
81108         <doc xml:whitespace="preserve">Sets the extension events mask to @mode. See #GdkExtensionMode
81109 and gdk_input_set_extension_events().</doc>
81110         <return-value transfer-ownership="none">
81111           <type name="none" c:type="void"/>
81112         </return-value>
81113         <parameters>
81114           <parameter name="mode" transfer-ownership="none">
81115             <doc xml:whitespace="preserve">bitfield of extension events to receive</doc>
81116             <type name="Gdk.ExtensionMode" c:type="GdkExtensionMode"/>
81117           </parameter>
81118         </parameters>
81119       </method>
81120       <method name="get_extension_events"
81121               c:identifier="gtk_widget_get_extension_events">
81122         <doc xml:whitespace="preserve">Retrieves the extension events the widget will receive; see
81123 gdk_input_set_extension_events().</doc>
81124         <return-value transfer-ownership="full">
81125           <doc xml:whitespace="preserve">extension events for @widget</doc>
81126           <type name="Gdk.ExtensionMode" c:type="GdkExtensionMode"/>
81127         </return-value>
81128       </method>
81129       <method name="get_toplevel" c:identifier="gtk_widget_get_toplevel">
81130         <doc xml:whitespace="preserve">This function returns the topmost widget in the container hierarchy
81131 returned as the topmost widget. No reference will be added to the
81132 returned widget; it should not be unreferenced.
81133 Note the difference in behavior vs. gtk_widget_get_ancestor();
81134 &lt;literal&gt;gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)&lt;/literal&gt; 
81135 would return
81136 %NULL if @widget wasn't inside a toplevel window, and if the
81137 window was inside a #GtkWindow-derived widget which was in turn
81138 inside the toplevel #GtkWindow. While the second case may
81139 seem unlikely, it actually happens when a #GtkPlug is embedded
81140 inside a #GtkSocket within the same application.
81141 To reliably find the toplevel #GtkWindow, use
81142 gtk_widget_get_toplevel() and check if the %TOPLEVEL flags
81143 is set on the result.
81144 |[
81145 GtkWidget *toplevel = gtk_widget_get_toplevel (widget);
81146 if (gtk_widget_is_toplevel (toplevel))
81147 {
81148 /&amp;ast; Perform action on toplevel. &amp;ast;/
81149 }
81150 ]|
81151 if there's no ancestor.</doc>
81152         <return-value transfer-ownership="none">
81153           <doc xml:whitespace="preserve">the topmost ancestor of @widget, or @widget itself</doc>
81154           <type name="Widget" c:type="GtkWidget*"/>
81155         </return-value>
81156       </method>
81157       <method name="get_ancestor" c:identifier="gtk_widget_get_ancestor">
81158         <doc xml:whitespace="preserve">Gets the first ancestor of @widget with type @widget_type. For example,
81159 &lt;literal&gt;gtk_widget_get_ancestor (widget, GTK_TYPE_BOX)&lt;/literal&gt; gets 
81160 the first #GtkBox that's an ancestor of @widget. No reference will be 
81161 added to the returned widget; it should not be unreferenced. See note 
81162 about checking for a toplevel #GtkWindow in the docs for 
81163 gtk_widget_get_toplevel().
81164 Note that unlike gtk_widget_is_ancestor(), gtk_widget_get_ancestor() 
81165 considers @widget to be an ancestor of itself.</doc>
81166         <return-value transfer-ownership="none">
81167           <doc xml:whitespace="preserve">the ancestor widget, or %NULL if not found</doc>
81168           <type name="Widget" c:type="GtkWidget*"/>
81169         </return-value>
81170         <parameters>
81171           <parameter name="widget_type" transfer-ownership="none">
81172             <doc xml:whitespace="preserve">ancestor type</doc>
81173             <type name="GType" c:type="GType"/>
81174           </parameter>
81175         </parameters>
81176       </method>
81177       <method name="get_colormap" c:identifier="gtk_widget_get_colormap">
81178         <doc xml:whitespace="preserve">Gets the colormap that will be used to render @widget. No reference will
81179 be added to the returned colormap; it should not be unreferenced.</doc>
81180         <return-value transfer-ownership="none">
81181           <doc xml:whitespace="preserve">the colormap used by @widget</doc>
81182           <type name="Gdk.Colormap" c:type="GdkColormap*"/>
81183         </return-value>
81184       </method>
81185       <method name="get_visual" c:identifier="gtk_widget_get_visual">
81186         <doc xml:whitespace="preserve">Gets the visual that will be used to render @widget.</doc>
81187         <return-value transfer-ownership="none">
81188           <doc xml:whitespace="preserve">the visual for @widget</doc>
81189           <type name="Gdk.Visual" c:type="GdkVisual*"/>
81190         </return-value>
81191       </method>
81192       <method name="get_screen"
81193               c:identifier="gtk_widget_get_screen"
81194               version="2.2">
81195         <doc xml:whitespace="preserve">Get the #GdkScreen from the toplevel window associated with
81196 this widget. This function can only be called after the widget
81197 has been added to a widget hierarchy with a #GtkWindow
81198 at the top.
81199 In general, you should only create screen specific
81200 resources when a widget has been realized, and you should
81201 free those resources when the widget is unrealized.</doc>
81202         <return-value transfer-ownership="none">
81203           <doc xml:whitespace="preserve">the #GdkScreen for the toplevel for this widget.</doc>
81204           <type name="Gdk.Screen" c:type="GdkScreen*"/>
81205         </return-value>
81206       </method>
81207       <method name="has_screen"
81208               c:identifier="gtk_widget_has_screen"
81209               version="2.2">
81210         <doc xml:whitespace="preserve">Checks whether there is a #GdkScreen is associated with
81211 this widget. All toplevel widgets have an associated
81212 screen, and all widgets added into a hierarchy with a toplevel
81213 window at the top.
81214 with the widget.</doc>
81215         <return-value transfer-ownership="none">
81216           <doc xml:whitespace="preserve">%TRUE if there is a #GdkScreen associcated</doc>
81217           <type name="boolean" c:type="gboolean"/>
81218         </return-value>
81219       </method>
81220       <method name="get_display"
81221               c:identifier="gtk_widget_get_display"
81222               version="2.2">
81223         <doc xml:whitespace="preserve">Get the #GdkDisplay for the toplevel window associated with
81224 this widget. This function can only be called after the widget
81225 has been added to a widget hierarchy with a #GtkWindow at the top.
81226 In general, you should only create display specific
81227 resources when a widget has been realized, and you should
81228 free those resources when the widget is unrealized.</doc>
81229         <return-value transfer-ownership="none">
81230           <doc xml:whitespace="preserve">the #GdkDisplay for the toplevel for this widget.</doc>
81231           <type name="Gdk.Display" c:type="GdkDisplay*"/>
81232         </return-value>
81233       </method>
81234       <method name="get_root_window"
81235               c:identifier="gtk_widget_get_root_window"
81236               version="2.2">
81237         <doc xml:whitespace="preserve">Get the root window where this widget is located. This function can
81238 only be called after the widget has been added to a widget
81239 hierarchy with #GtkWindow at the top.
81240 The root window is useful for such purposes as creating a popup
81241 #GdkWindow associated with the window. In general, you should only
81242 create display specific resources when a widget has been realized,
81243 and you should free those resources when the widget is unrealized.</doc>
81244         <return-value transfer-ownership="none">
81245           <doc xml:whitespace="preserve">the #GdkWindow root window for the toplevel for this widget.</doc>
81246           <type name="Gdk.Window" c:type="GdkWindow*"/>
81247         </return-value>
81248       </method>
81249       <method name="get_settings" c:identifier="gtk_widget_get_settings">
81250         <doc xml:whitespace="preserve">Gets the settings object holding the settings (global property
81251 settings, RC file information, etc) used for this widget.
81252 Note that this function can only be called when the #GtkWidget
81253 is attached to a toplevel, since the settings object is specific
81254 to a particular #GdkScreen.</doc>
81255         <return-value transfer-ownership="none">
81256           <doc xml:whitespace="preserve">the relevant #GtkSettings object</doc>
81257           <type name="Settings" c:type="GtkSettings*"/>
81258         </return-value>
81259       </method>
81260       <method name="get_clipboard"
81261               c:identifier="gtk_widget_get_clipboard"
81262               version="2.2">
81263         <doc xml:whitespace="preserve">Returns the clipboard object for the given selection to
81264 be used with @widget. @widget must have a #GdkDisplay
81265 associated with it, so must be attached to a toplevel
81266 window.
81267 clipboard already exists, a new one will
81268 be created. Once a clipboard object has
81269 been created, it is persistent for all time.</doc>
81270         <return-value transfer-ownership="none">
81271           <doc xml:whitespace="preserve">the appropriate clipboard object. If no</doc>
81272           <type name="Clipboard" c:type="GtkClipboard*"/>
81273         </return-value>
81274         <parameters>
81275           <parameter name="selection" transfer-ownership="none">
81276             <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>
81277             <type name="Gdk.Atom" c:type="GdkAtom"/>
81278           </parameter>
81279         </parameters>
81280       </method>
81281       <method name="get_snapshot"
81282               c:identifier="gtk_widget_get_snapshot"
81283               version="2.14">
81284         <doc xml:whitespace="preserve">Create a #GdkPixmap of the contents of the widget and its children.
81285 Works even if the widget is obscured. The depth and visual of the
81286 resulting pixmap is dependent on the widget being snapshot and likely
81287 differs from those of a target widget displaying the pixmap.
81288 The function gdk_pixbuf_get_from_drawable() can be used to convert
81289 the pixmap to a visual independant representation.
81290 The snapshot area used by this function is the @widget's allocation plus
81291 any extra space occupied by additional windows belonging to this widget
81292 (such as the arrows of a spin button).
81293 Thus, the resulting snapshot pixmap is possibly larger than the allocation.
81294 If @clip_rect is non-%NULL, the resulting pixmap is shrunken to
81295 match the specified clip_rect. The (x,y) coordinates of @clip_rect are
81296 interpreted widget relative. If width or height of @clip_rect are 0 or
81297 negative, the width or height of the resulting pixmap will be shrunken
81298 by the respective amount.
81299 For instance a @clip_rect &lt;literal&gt;{ +5, +5, -10, -10 }&lt;/literal&gt; will
81300 chop off 5 pixels at each side of the snapshot pixmap.
81301 If non-%NULL, @clip_rect will contain the exact widget-relative snapshot
81302 coordinates upon return. A @clip_rect of &lt;literal&gt;{ -1, -1, 0, 0 }&lt;/literal&gt;
81303 can be used to preserve the auto-grown snapshot area and use @clip_rect
81304 as a pure output parameter.
81305 The returned pixmap can be %NULL, if the resulting @clip_area was empty.</doc>
81306         <return-value transfer-ownership="full">
81307           <doc xml:whitespace="preserve">#GdkPixmap snapshot of the widget</doc>
81308           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
81309         </return-value>
81310         <parameters>
81311           <parameter name="clip_rect" transfer-ownership="none" allow-none="1">
81312             <doc xml:whitespace="preserve">a #GdkRectangle or %NULL</doc>
81313             <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
81314           </parameter>
81315         </parameters>
81316       </method>
81317       <method name="get_accessible" c:identifier="gtk_widget_get_accessible">
81318         <doc xml:whitespace="preserve">Returns the accessible object that describes the widget to an
81319 assistive technology. 
81320 If no accessibility library is loaded (i.e. no ATK implementation library is 
81321 loaded via &lt;envar&gt;GTK_MODULES&lt;/envar&gt; or via another application library, 
81322 such as libgnome), then this #AtkObject instance may be a no-op. Likewise, 
81323 if no class-specific #AtkObject implementation is available for the widget 
81324 instance in question, it will inherit an #AtkObject implementation from the 
81325 first ancestor class for which such an implementation is defined.
81326 The documentation of the &lt;ulink url="http://developer.gnome.org/doc/API/2.0/atk/index.html"&gt;ATK&lt;/ulink&gt;
81327 library contains more information about accessible objects and their uses.</doc>
81328         <return-value transfer-ownership="none">
81329           <doc xml:whitespace="preserve">the #AtkObject associated with @widget</doc>
81330           <type name="Atk.Object" c:type="AtkObject*"/>
81331         </return-value>
81332       </method>
81333       <method name="set_colormap" c:identifier="gtk_widget_set_colormap">
81334         <doc xml:whitespace="preserve">Sets the colormap for the widget to the given value. Widget must not
81335 have been previously realized. This probably should only be used
81336 from an &lt;function&gt;init()&lt;/function&gt; function (i.e. from the constructor 
81337 for the widget).</doc>
81338         <return-value transfer-ownership="none">
81339           <type name="none" c:type="void"/>
81340         </return-value>
81341         <parameters>
81342           <parameter name="colormap" transfer-ownership="none">
81343             <doc xml:whitespace="preserve">a colormap</doc>
81344             <type name="Gdk.Colormap" c:type="GdkColormap*"/>
81345           </parameter>
81346         </parameters>
81347       </method>
81348       <method name="get_events" c:identifier="gtk_widget_get_events">
81349         <doc xml:whitespace="preserve">Returns the event mask for the widget (a bitfield containing flags
81350 from the #GdkEventMask enumeration). These are the events that the widget
81351 will receive.</doc>
81352         <return-value transfer-ownership="none">
81353           <doc xml:whitespace="preserve">event mask for @widget</doc>
81354           <type name="int" c:type="gint"/>
81355         </return-value>
81356       </method>
81357       <method name="get_pointer" c:identifier="gtk_widget_get_pointer">
81358         <doc xml:whitespace="preserve">Obtains the location of the mouse pointer in widget coordinates.
81359 Widget coordinates are a bit odd; for historical reasons, they are
81360 defined as @widget-&gt;window coordinates for widgets that are not
81361 #GTK_NO_WINDOW widgets, and are relative to @widget-&gt;allocation.x,</doc>
81362         <return-value transfer-ownership="none">
81363           <type name="none" c:type="void"/>
81364         </return-value>
81365         <parameters>
81366           <parameter name="x"
81367                      direction="out"
81368                      caller-allocates="0"
81369                      transfer-ownership="full"
81370                      allow-none="1">
81371             <doc xml:whitespace="preserve">return location for the X coordinate, or %NULL</doc>
81372             <type name="int" c:type="gint*"/>
81373           </parameter>
81374           <parameter name="y"
81375                      direction="out"
81376                      caller-allocates="0"
81377                      transfer-ownership="full"
81378                      allow-none="1">
81379             <doc xml:whitespace="preserve">return location for the Y coordinate, or %NULL</doc>
81380             <type name="int" c:type="gint*"/>
81381           </parameter>
81382         </parameters>
81383       </method>
81384       <method name="is_ancestor" c:identifier="gtk_widget_is_ancestor">
81385         <doc xml:whitespace="preserve">Determines whether @widget is somewhere inside @ancestor, possibly with
81386 intermediate containers.
81387 grandchild, great grandchild, etc.</doc>
81388         <return-value transfer-ownership="none">
81389           <doc xml:whitespace="preserve">%TRUE if @ancestor contains @widget as a child,</doc>
81390           <type name="boolean" c:type="gboolean"/>
81391         </return-value>
81392         <parameters>
81393           <parameter name="ancestor" transfer-ownership="none">
81394             <doc xml:whitespace="preserve">another #GtkWidget</doc>
81395             <type name="Widget" c:type="GtkWidget*"/>
81396           </parameter>
81397         </parameters>
81398       </method>
81399       <method name="translate_coordinates"
81400               c:identifier="gtk_widget_translate_coordinates">
81401         <doc xml:whitespace="preserve">Translate coordinates relative to @src_widget's allocation to coordinates
81402 relative to @dest_widget's allocations. In order to perform this
81403 operation, both widgets must be realized, and must share a common
81404 toplevel.
81405 was no common ancestor. In this case, nothing is stored in
81406 *@dest_x and *@dest_y. Otherwise %TRUE.</doc>
81407         <return-value transfer-ownership="none">
81408           <doc xml:whitespace="preserve">%FALSE if either widget was not realized, or there</doc>
81409           <type name="boolean" c:type="gboolean"/>
81410         </return-value>
81411         <parameters>
81412           <parameter name="dest_widget" transfer-ownership="none">
81413             <doc xml:whitespace="preserve">a #GtkWidget</doc>
81414             <type name="Widget" c:type="GtkWidget*"/>
81415           </parameter>
81416           <parameter name="src_x" transfer-ownership="none">
81417             <doc xml:whitespace="preserve">X position relative to @src_widget</doc>
81418             <type name="int" c:type="gint"/>
81419           </parameter>
81420           <parameter name="src_y" transfer-ownership="none">
81421             <doc xml:whitespace="preserve">Y position relative to @src_widget</doc>
81422             <type name="int" c:type="gint"/>
81423           </parameter>
81424           <parameter name="dest_x"
81425                      direction="out"
81426                      caller-allocates="0"
81427                      transfer-ownership="full">
81428             <doc xml:whitespace="preserve">location to store X position relative to @dest_widget</doc>
81429             <type name="int" c:type="gint*"/>
81430           </parameter>
81431           <parameter name="dest_y"
81432                      direction="out"
81433                      caller-allocates="0"
81434                      transfer-ownership="full">
81435             <doc xml:whitespace="preserve">location to store Y position relative to @dest_widget</doc>
81436             <type name="int" c:type="gint*"/>
81437           </parameter>
81438         </parameters>
81439       </method>
81440       <method name="hide_on_delete" c:identifier="gtk_widget_hide_on_delete">
81441         <doc xml:whitespace="preserve">Utility function; intended to be connected to the #GtkWidget::delete-event
81442 signal on a #GtkWindow. The function calls gtk_widget_hide() on its
81443 argument, then returns %TRUE. If connected to ::delete-event, the
81444 result is that clicking the close button for a window (on the
81445 window frame, top right corner usually) will hide but not destroy
81446 the window. By default, GTK+ destroys windows when ::delete-event
81447 is received.</doc>
81448         <return-value transfer-ownership="none">
81449           <doc xml:whitespace="preserve">%TRUE</doc>
81450           <type name="boolean" c:type="gboolean"/>
81451         </return-value>
81452       </method>
81453       <method name="style_attach"
81454               c:identifier="gtk_widget_style_attach"
81455               version="2.20">
81456         <doc xml:whitespace="preserve">This function attaches the widget's #GtkStyle to the widget's
81457 #GdkWindow. It is a replacement for
81458 &lt;programlisting&gt;
81459 widget-&gt;style = gtk_style_attach (widget-&gt;style, widget-&gt;window);
81460 &lt;/programlisting&gt;
81461 and should only ever be called in a derived widget's "realize"
81462 implementation which does not chain up to its parent class'
81463 "realize" implementation, because one of the parent classes
81464 (finally #GtkWidget) would attach the style itself.</doc>
81465         <return-value transfer-ownership="none">
81466           <type name="none" c:type="void"/>
81467         </return-value>
81468       </method>
81469       <method name="has_rc_style"
81470               c:identifier="gtk_widget_has_rc_style"
81471               version="2.20">
81472         <doc xml:whitespace="preserve">Determines if the widget style has been looked up through the rc mechanism.
81473 mechanism, %FALSE otherwise.</doc>
81474         <return-value transfer-ownership="none">
81475           <doc xml:whitespace="preserve">%TRUE if the widget has been looked up through the rc</doc>
81476           <type name="boolean" c:type="gboolean"/>
81477         </return-value>
81478       </method>
81479       <method name="set_style" c:identifier="gtk_widget_set_style">
81480         <doc xml:whitespace="preserve">Sets the #GtkStyle for a widget (@widget-&gt;style). You probably don't
81481 want to use this function; it interacts badly with themes, because
81482 themes work by replacing the #GtkStyle. Instead, use
81483 gtk_widget_modify_style().</doc>
81484         <return-value transfer-ownership="none">
81485           <type name="none" c:type="void"/>
81486         </return-value>
81487         <parameters>
81488           <parameter name="style" transfer-ownership="none" allow-none="1">
81489             <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>
81490             <type name="Style" c:type="GtkStyle*"/>
81491           </parameter>
81492         </parameters>
81493       </method>
81494       <method name="ensure_style" c:identifier="gtk_widget_ensure_style">
81495         <doc xml:whitespace="preserve">Ensures that @widget has a style (@widget-&gt;style). Not a very useful
81496 function; most of the time, if you want the style, the widget is
81497 realized, and realized widgets are guaranteed to have a style
81498 already.</doc>
81499         <return-value transfer-ownership="none">
81500           <type name="none" c:type="void"/>
81501         </return-value>
81502       </method>
81503       <method name="get_style" c:identifier="gtk_widget_get_style">
81504         <doc xml:whitespace="preserve">Simply an accessor function that returns @widget-&gt;style.</doc>
81505         <return-value transfer-ownership="none">
81506           <doc xml:whitespace="preserve">the widget's #GtkStyle</doc>
81507           <type name="Style" c:type="GtkStyle*"/>
81508         </return-value>
81509       </method>
81510       <method name="modify_style" c:identifier="gtk_widget_modify_style">
81511         <doc xml:whitespace="preserve">Modifies style values on the widget. Modifications made using this
81512 technique take precedence over style values set via an RC file,
81513 however, they will be overriden if a style is explicitely set on
81514 the widget using gtk_widget_set_style(). The #GtkRcStyle structure
81515 is designed so each field can either be set or unset, so it is
81516 possible, using this function, to modify some style values and
81517 leave the others unchanged.
81518 Note that modifications made with this function are not cumulative
81519 with previous calls to gtk_widget_modify_style() or with such
81520 functions as gtk_widget_modify_fg(). If you wish to retain
81521 previous values, you must first call gtk_widget_get_modifier_style(),
81522 make your modifications to the returned style, then call
81523 gtk_widget_modify_style() with that style. On the other hand,
81524 if you first call gtk_widget_modify_style(), subsequent calls
81525 to such functions gtk_widget_modify_fg() will have a cumulative
81526 effect with the initial modifications.</doc>
81527         <return-value transfer-ownership="none">
81528           <type name="none" c:type="void"/>
81529         </return-value>
81530         <parameters>
81531           <parameter name="style" transfer-ownership="none">
81532             <doc xml:whitespace="preserve">the #GtkRcStyle holding the style modifications</doc>
81533             <type name="RcStyle" c:type="GtkRcStyle*"/>
81534           </parameter>
81535         </parameters>
81536       </method>
81537       <method name="get_modifier_style"
81538               c:identifier="gtk_widget_get_modifier_style">
81539         <doc xml:whitespace="preserve">Returns the current modifier style for the widget. (As set by
81540 gtk_widget_modify_style().) If no style has previously set, a new
81541 #GtkRcStyle will be created with all values unset, and set as the
81542 modifier style for the widget. If you make changes to this rc
81543 style, you must call gtk_widget_modify_style(), passing in the
81544 returned rc style, to make sure that your changes take effect.
81545 normally end up destroying it, because gtk_widget_modify_style() copies
81546 the passed-in style and sets the copy as the new modifier style,
81547 thus dropping any reference to the old modifier style. Add a reference
81548 to the modifier style if you want to keep it alive.
81549 owned by the widget. If you want to keep a pointer to value this
81550 around, you must add a refcount using g_object_ref().</doc>
81551         <return-value transfer-ownership="none">
81552           <doc xml:whitespace="preserve">the modifier style for the widget. This rc style is</doc>
81553           <type name="RcStyle" c:type="GtkRcStyle*"/>
81554         </return-value>
81555       </method>
81556       <method name="modify_fg" c:identifier="gtk_widget_modify_fg">
81557         <doc xml:whitespace="preserve">Sets the foreground color for a widget in a particular state.
81558 All other style values are left untouched. See also
81559 gtk_widget_modify_style().</doc>
81560         <return-value transfer-ownership="none">
81561           <type name="none" c:type="void"/>
81562         </return-value>
81563         <parameters>
81564           <parameter name="state" transfer-ownership="none">
81565             <doc xml:whitespace="preserve">the state for which to set the foreground color</doc>
81566             <type name="StateType" c:type="GtkStateType"/>
81567           </parameter>
81568           <parameter name="color" transfer-ownership="none" allow-none="1">
81569             <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>
81570             <type name="Gdk.Color" c:type="GdkColor*"/>
81571           </parameter>
81572         </parameters>
81573       </method>
81574       <method name="modify_bg" c:identifier="gtk_widget_modify_bg">
81575         <doc xml:whitespace="preserve">Sets the background color for a widget in a particular state.
81576 All other style values are left untouched. See also
81577 gtk_widget_modify_style(). 
81578 Note that "no window" widgets (which have the %GTK_NO_WINDOW flag set)
81579 draw on their parent container's window and thus may not draw any 
81580 background themselves. This is the case for e.g. #GtkLabel. To modify 
81581 the background of such widgets, you have to set the background color 
81582 on their parent; if you want to set the background of a rectangular 
81583 area around a label, try placing the label in a #GtkEventBox widget 
81584 and setting the background color on that.</doc>
81585         <return-value transfer-ownership="none">
81586           <type name="none" c:type="void"/>
81587         </return-value>
81588         <parameters>
81589           <parameter name="state" transfer-ownership="none">
81590             <doc xml:whitespace="preserve">the state for which to set the background color</doc>
81591             <type name="StateType" c:type="GtkStateType"/>
81592           </parameter>
81593           <parameter name="color" transfer-ownership="none" allow-none="1">
81594             <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>
81595             <type name="Gdk.Color" c:type="GdkColor*"/>
81596           </parameter>
81597         </parameters>
81598       </method>
81599       <method name="modify_text" c:identifier="gtk_widget_modify_text">
81600         <doc xml:whitespace="preserve">Sets the text color for a widget in a particular state.  All other
81601 style values are left untouched. The text color is the foreground
81602 color used along with the base color (see gtk_widget_modify_base())
81603 for widgets such as #GtkEntry and #GtkTextView. See also
81604 gtk_widget_modify_style().</doc>
81605         <return-value transfer-ownership="none">
81606           <type name="none" c:type="void"/>
81607         </return-value>
81608         <parameters>
81609           <parameter name="state" transfer-ownership="none">
81610             <doc xml:whitespace="preserve">the state for which to set the text color</doc>
81611             <type name="StateType" c:type="GtkStateType"/>
81612           </parameter>
81613           <parameter name="color" transfer-ownership="none" allow-none="1">
81614             <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>
81615             <type name="Gdk.Color" c:type="GdkColor*"/>
81616           </parameter>
81617         </parameters>
81618       </method>
81619       <method name="modify_base" c:identifier="gtk_widget_modify_base">
81620         <doc xml:whitespace="preserve">Sets the base color for a widget in a particular state.
81621 All other style values are left untouched. The base color
81622 is the background color used along with the text color
81623 (see gtk_widget_modify_text()) for widgets such as #GtkEntry
81624 and #GtkTextView. See also gtk_widget_modify_style().
81625 Note that "no window" widgets (which have the %GTK_NO_WINDOW flag set)
81626 draw on their parent container's window and thus may not draw any 
81627 background themselves. This is the case for e.g. #GtkLabel. To modify 
81628 the background of such widgets, you have to set the base color on their 
81629 parent; if you want to set the background of a rectangular area around 
81630 a label, try placing the label in a #GtkEventBox widget and setting 
81631 the base color on that.</doc>
81632         <return-value transfer-ownership="none">
81633           <type name="none" c:type="void"/>
81634         </return-value>
81635         <parameters>
81636           <parameter name="state" transfer-ownership="none">
81637             <doc xml:whitespace="preserve">the state for which to set the base color</doc>
81638             <type name="StateType" c:type="GtkStateType"/>
81639           </parameter>
81640           <parameter name="color" transfer-ownership="none" allow-none="1">
81641             <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>
81642             <type name="Gdk.Color" c:type="GdkColor*"/>
81643           </parameter>
81644         </parameters>
81645       </method>
81646       <method name="modify_cursor"
81647               c:identifier="gtk_widget_modify_cursor"
81648               version="2.12">
81649         <doc xml:whitespace="preserve">Sets the cursor color to use in a widget, overriding the
81650 #GtkWidget:cursor-color and #GtkWidget:secondary-cursor-color
81651 style properties. All other style values are left untouched. 
81652 See also gtk_widget_modify_style().</doc>
81653         <return-value transfer-ownership="none">
81654           <type name="none" c:type="void"/>
81655         </return-value>
81656         <parameters>
81657           <parameter name="primary" transfer-ownership="none">
81658             <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>
81659             <type name="Gdk.Color" c:type="GdkColor*"/>
81660           </parameter>
81661           <parameter name="secondary" transfer-ownership="none">
81662             <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>
81663             <type name="Gdk.Color" c:type="GdkColor*"/>
81664           </parameter>
81665         </parameters>
81666       </method>
81667       <method name="modify_font" c:identifier="gtk_widget_modify_font">
81668         <doc xml:whitespace="preserve">Sets the font to use for a widget.  All other style values are left
81669 untouched. See also gtk_widget_modify_style().</doc>
81670         <return-value transfer-ownership="none">
81671           <type name="none" c:type="void"/>
81672         </return-value>
81673         <parameters>
81674           <parameter name="font_desc" transfer-ownership="none" allow-none="1">
81675             <doc xml:whitespace="preserve">the font description to use, or %NULL to undo the effect of previous calls to gtk_widget_modify_font().</doc>
81676             <type name="Pango.FontDescription" c:type="PangoFontDescription*"/>
81677           </parameter>
81678         </parameters>
81679       </method>
81680       <method name="create_pango_context"
81681               c:identifier="gtk_widget_create_pango_context">
81682         <doc xml:whitespace="preserve">Creates a new #PangoContext with the appropriate font map,
81683 font description, and base direction for drawing text for
81684 this widget. See also gtk_widget_get_pango_context().</doc>
81685         <return-value transfer-ownership="full">
81686           <doc xml:whitespace="preserve">the new #PangoContext</doc>
81687           <type name="Pango.Context" c:type="PangoContext*"/>
81688         </return-value>
81689       </method>
81690       <method name="get_pango_context"
81691               c:identifier="gtk_widget_get_pango_context">
81692         <doc xml:whitespace="preserve">Gets a #PangoContext with the appropriate font map, font description,
81693 and base direction for this widget. Unlike the context returned
81694 by gtk_widget_create_pango_context(), this context is owned by
81695 the widget (it can be used until the screen for the widget changes
81696 or the widget is removed from its toplevel), and will be updated to
81697 match any changes to the widget's attributes.
81698 If you create and keep a #PangoLayout using this context, you must
81699 deal with changes to the context by calling pango_layout_context_changed()
81700 on the layout in response to the #GtkWidget::style-set and 
81701 #GtkWidget::direction-changed signals for the widget.</doc>
81702         <return-value transfer-ownership="none">
81703           <doc xml:whitespace="preserve">the #PangoContext for the widget.</doc>
81704           <type name="Pango.Context" c:type="PangoContext*"/>
81705         </return-value>
81706       </method>
81707       <method name="create_pango_layout"
81708               c:identifier="gtk_widget_create_pango_layout">
81709         <doc xml:whitespace="preserve">Creates a new #PangoLayout with the appropriate font map,
81710 font description, and base direction for drawing text for
81711 this widget.
81712 If you keep a #PangoLayout created in this way around, in order to
81713 notify the layout of changes to the base direction or font of this
81714 widget, you must call pango_layout_context_changed() in response to
81715 the #GtkWidget::style-set and #GtkWidget::direction-changed signals 
81716 for the widget.</doc>
81717         <return-value transfer-ownership="full">
81718           <doc xml:whitespace="preserve">the new #PangoLayout</doc>
81719           <type name="Pango.Layout" c:type="PangoLayout*"/>
81720         </return-value>
81721         <parameters>
81722           <parameter name="text" transfer-ownership="none">
81723             <doc xml:whitespace="preserve">text to set on the layout (can be %NULL)</doc>
81724             <type name="utf8" c:type="gchar*"/>
81725           </parameter>
81726         </parameters>
81727       </method>
81728       <method name="render_icon" c:identifier="gtk_widget_render_icon">
81729         <doc xml:whitespace="preserve">A convenience function that uses the theme engine and RC file
81730 settings for @widget to look up @stock_id and render it to
81731 a pixbuf. @stock_id should be a stock icon ID such as
81732 #GTK_STOCK_OPEN or #GTK_STOCK_OK. @size should be a size
81733 such as #GTK_ICON_SIZE_MENU. @detail should be a string that
81734 identifies the widget or code doing the rendering, so that
81735 theme engines can special-case rendering for that widget or code.
81736 The pixels in the returned #GdkPixbuf are shared with the rest of
81737 the application and should not be modified. The pixbuf should be freed
81738 after use with g_object_unref().</doc>
81739         <return-value transfer-ownership="full">
81740           <doc xml:whitespace="preserve">a new pixbuf, or %NULL if the stock ID wasn't known</doc>
81741           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
81742         </return-value>
81743         <parameters>
81744           <parameter name="stock_id" transfer-ownership="none">
81745             <doc xml:whitespace="preserve">a stock ID</doc>
81746             <type name="utf8" c:type="gchar*"/>
81747           </parameter>
81748           <parameter name="size" transfer-ownership="none">
81749             <doc xml:whitespace="preserve">(type int) 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>
81750             <type name="IconSize" c:type="GtkIconSize"/>
81751           </parameter>
81752           <parameter name="detail" transfer-ownership="none" allow-none="1">
81753             <doc xml:whitespace="preserve">render detail to pass to theme engine</doc>
81754             <type name="utf8" c:type="gchar*"/>
81755           </parameter>
81756         </parameters>
81757       </method>
81758       <method name="set_composite_name"
81759               c:identifier="gtk_widget_set_composite_name">
81760         <doc xml:whitespace="preserve">Sets a widgets composite name. The widget must be
81761 a composite child of its parent; see gtk_widget_push_composite_child().</doc>
81762         <return-value transfer-ownership="none">
81763           <type name="none" c:type="void"/>
81764         </return-value>
81765         <parameters>
81766           <parameter name="name" transfer-ownership="none">
81767             <doc xml:whitespace="preserve">the name to set</doc>
81768             <type name="utf8" c:type="gchar*"/>
81769           </parameter>
81770         </parameters>
81771       </method>
81772       <method name="get_composite_name"
81773               c:identifier="gtk_widget_get_composite_name">
81774         <doc xml:whitespace="preserve">Obtains the composite name of a widget. 
81775 a composite child. The string should be freed when it is no 
81776 longer needed.</doc>
81777         <return-value transfer-ownership="full">
81778           <doc xml:whitespace="preserve">the composite name of @widget, or %NULL if @widget is not</doc>
81779           <type name="utf8" c:type="gchar*"/>
81780         </return-value>
81781       </method>
81782       <method name="reset_rc_styles" c:identifier="gtk_widget_reset_rc_styles">
81783         <doc xml:whitespace="preserve">Reset the styles of @widget and all descendents, so when
81784 they are looked up again, they get the correct values
81785 for the currently loaded RC file settings.
81786 This function is not useful for applications.</doc>
81787         <return-value transfer-ownership="none">
81788           <type name="none" c:type="void"/>
81789         </return-value>
81790       </method>
81791       <method name="style_get_property"
81792               c:identifier="gtk_widget_style_get_property">
81793         <doc xml:whitespace="preserve">Gets the value of a style property of @widget.</doc>
81794         <return-value transfer-ownership="none">
81795           <type name="none" c:type="void"/>
81796         </return-value>
81797         <parameters>
81798           <parameter name="property_name" transfer-ownership="none">
81799             <doc xml:whitespace="preserve">the name of a style property</doc>
81800             <type name="utf8" c:type="gchar*"/>
81801           </parameter>
81802           <parameter name="value" transfer-ownership="none">
81803             <doc xml:whitespace="preserve">location to return the property value</doc>
81804             <type name="GObject.Value" c:type="GValue*"/>
81805           </parameter>
81806         </parameters>
81807       </method>
81808       <method name="style_get"
81809               c:identifier="gtk_widget_style_get"
81810               introspectable="0">
81811         <doc xml:whitespace="preserve">Gets the values of a multiple style properties of @widget.</doc>
81812         <return-value transfer-ownership="none">
81813           <type name="none" c:type="void"/>
81814         </return-value>
81815         <parameters>
81816           <parameter name="first_property_name" transfer-ownership="none">
81817             <doc xml:whitespace="preserve">the name of the first property to get</doc>
81818             <type name="utf8" c:type="gchar*"/>
81819           </parameter>
81820           <parameter transfer-ownership="none">
81821             <varargs>
81822             </varargs>
81823           </parameter>
81824         </parameters>
81825       </method>
81826       <method name="set_direction" c:identifier="gtk_widget_set_direction">
81827         <doc xml:whitespace="preserve">Sets the reading direction on a particular widget. This direction
81828 controls the primary direction for widgets containing text,
81829 and also the direction in which the children of a container are
81830 packed. The ability to set the direction is present in order
81831 so that correct localization into languages with right-to-left
81832 reading directions can be done. Generally, applications will
81833 let the default reading direction present, except for containers
81834 where the containers are arranged in an order that is explicitely
81835 visual rather than logical (such as buttons for text justification).
81836 If the direction is set to %GTK_TEXT_DIR_NONE, then the value
81837 set by gtk_widget_set_default_direction() will be used.</doc>
81838         <return-value transfer-ownership="none">
81839           <type name="none" c:type="void"/>
81840         </return-value>
81841         <parameters>
81842           <parameter name="dir" transfer-ownership="none">
81843             <doc xml:whitespace="preserve">the new direction</doc>
81844             <type name="TextDirection" c:type="GtkTextDirection"/>
81845           </parameter>
81846         </parameters>
81847       </method>
81848       <method name="get_direction" c:identifier="gtk_widget_get_direction">
81849         <doc xml:whitespace="preserve">Gets the reading direction for a particular widget. See
81850 gtk_widget_set_direction().</doc>
81851         <return-value transfer-ownership="full">
81852           <doc xml:whitespace="preserve">the reading direction for the widget.</doc>
81853           <type name="TextDirection" c:type="GtkTextDirection"/>
81854         </return-value>
81855       </method>
81856       <method name="is_composited"
81857               c:identifier="gtk_widget_is_composited"
81858               version="2.10">
81859         <doc xml:whitespace="preserve">Whether @widget can rely on having its alpha channel
81860 drawn correctly. On X11 this function returns whether a
81861 compositing manager is running for @widget's screen.
81862 Please note that the semantics of this call will change
81863 in the future if used on a widget that has a composited
81864 window in its hierarchy (as set by gdk_window_set_composited()).
81865 channel being drawn correctly.</doc>
81866         <return-value transfer-ownership="none">
81867           <doc xml:whitespace="preserve">%TRUE if the widget can rely on its alpha</doc>
81868           <type name="boolean" c:type="gboolean"/>
81869         </return-value>
81870       </method>
81871       <method name="shape_combine_mask"
81872               c:identifier="gtk_widget_shape_combine_mask">
81873         <doc xml:whitespace="preserve">Sets a shape for this widget's GDK window. This allows for
81874 transparent windows etc., see gdk_window_shape_combine_mask()
81875 for more information.</doc>
81876         <return-value transfer-ownership="none">
81877           <type name="none" c:type="void"/>
81878         </return-value>
81879         <parameters>
81880           <parameter name="shape_mask"
81881                      transfer-ownership="none"
81882                      allow-none="1">
81883             <doc xml:whitespace="preserve">shape to be added, or %NULL to remove an existing shape</doc>
81884             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
81885           </parameter>
81886           <parameter name="offset_x" transfer-ownership="none">
81887             <doc xml:whitespace="preserve">X position of shape mask with respect to @window</doc>
81888             <type name="int" c:type="gint"/>
81889           </parameter>
81890           <parameter name="offset_y" transfer-ownership="none">
81891             <doc xml:whitespace="preserve">Y position of shape mask with respect to @window</doc>
81892             <type name="int" c:type="gint"/>
81893           </parameter>
81894         </parameters>
81895       </method>
81896       <method name="input_shape_combine_mask"
81897               c:identifier="gtk_widget_input_shape_combine_mask"
81898               version="2.10">
81899         <doc xml:whitespace="preserve">Sets an input shape for this widget's GDK window. This allows for
81900 windows which react to mouse click in a nonrectangular region, see 
81901 gdk_window_input_shape_combine_mask() for more information.</doc>
81902         <return-value transfer-ownership="none">
81903           <type name="none" c:type="void"/>
81904         </return-value>
81905         <parameters>
81906           <parameter name="shape_mask"
81907                      transfer-ownership="none"
81908                      allow-none="1">
81909             <doc xml:whitespace="preserve">shape to be added, or %NULL to remove an existing shape</doc>
81910             <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
81911           </parameter>
81912           <parameter name="offset_x" transfer-ownership="none">
81913             <doc xml:whitespace="preserve">X position of shape mask with respect to @window</doc>
81914             <type name="int" c:type="gint"/>
81915           </parameter>
81916           <parameter name="offset_y" transfer-ownership="none">
81917             <doc xml:whitespace="preserve">Y position of shape mask with respect to @window</doc>
81918             <type name="int" c:type="gint"/>
81919           </parameter>
81920         </parameters>
81921       </method>
81922       <method name="reset_shapes" c:identifier="gtk_widget_reset_shapes">
81923         <doc xml:whitespace="preserve">Recursively resets the shape on this widget and its descendants.</doc>
81924         <return-value transfer-ownership="none">
81925           <type name="none" c:type="void"/>
81926         </return-value>
81927       </method>
81928       <method name="path" c:identifier="gtk_widget_path">
81929         <doc xml:whitespace="preserve">Obtains the full path to @widget. The path is simply the name of a
81930 widget and all its parents in the container hierarchy, separated by
81931 periods. The name of a widget comes from
81932 gtk_widget_get_name(). Paths are used to apply styles to a widget
81933 in gtkrc configuration files. Widget names are the type of the
81934 widget by default (e.g. "GtkButton") or can be set to an
81935 application-specific value with gtk_widget_set_name(). By setting
81936 the name of a widget, you allow users or theme authors to apply
81937 styles to that specific widget in their gtkrc
81938 file. @path_reversed_p fills in the path in reverse order,
81939 i.e. starting with @widget's name instead of starting with the name
81940 of @widget's outermost ancestor.</doc>
81941         <return-value transfer-ownership="none">
81942           <type name="none" c:type="void"/>
81943         </return-value>
81944         <parameters>
81945           <parameter name="path_length"
81946                      direction="out"
81947                      caller-allocates="0"
81948                      transfer-ownership="full"
81949                      allow-none="1">
81950             <doc xml:whitespace="preserve">location to store length of the path, or %NULL</doc>
81951             <type name="uint" c:type="guint*"/>
81952           </parameter>
81953           <parameter name="path"
81954                      direction="out"
81955                      caller-allocates="0"
81956                      transfer-ownership="full"
81957                      allow-none="1">
81958             <doc xml:whitespace="preserve">location to store allocated path string, or %NULL</doc>
81959             <type name="utf8" c:type="gchar**"/>
81960           </parameter>
81961           <parameter name="path_reversed"
81962                      direction="out"
81963                      caller-allocates="0"
81964                      transfer-ownership="full"
81965                      allow-none="1">
81966             <doc xml:whitespace="preserve">location to store allocated reverse path string, or %NULL</doc>
81967             <type name="utf8" c:type="gchar**"/>
81968           </parameter>
81969         </parameters>
81970       </method>
81971       <method name="class_path" c:identifier="gtk_widget_class_path">
81972         <doc xml:whitespace="preserve">Same as gtk_widget_path(), but always uses the name of a widget's type,
81973 never uses a custom name set with gtk_widget_set_name().</doc>
81974         <return-value transfer-ownership="none">
81975           <type name="none" c:type="void"/>
81976         </return-value>
81977         <parameters>
81978           <parameter name="path_length"
81979                      direction="out"
81980                      caller-allocates="0"
81981                      transfer-ownership="full"
81982                      allow-none="1">
81983             <doc xml:whitespace="preserve">location to store the length of the class path, or %NULL</doc>
81984             <type name="uint" c:type="guint*"/>
81985           </parameter>
81986           <parameter name="path" transfer-ownership="none">
81987             <doc xml:whitespace="preserve">(out) (allow-none) location to store the class path as an allocated string, or %NULL</doc>
81988             <array c:type="gchar**">
81989               <type name="utf8"/>
81990             </array>
81991           </parameter>
81992           <parameter name="path_reversed" transfer-ownership="none">
81993             <doc xml:whitespace="preserve">(out) (allow-none) location to store the reverse class path as an allocated string, or %NULL</doc>
81994             <array c:type="gchar**">
81995               <type name="utf8"/>
81996             </array>
81997           </parameter>
81998         </parameters>
81999       </method>
82000       <method name="list_mnemonic_labels"
82001               c:identifier="gtk_widget_list_mnemonic_labels"
82002               version="2.4">
82003         <doc xml:whitespace="preserve">Returns a newly allocated list of the widgets, normally labels, for 
82004 which this widget is a the target of a mnemonic (see for example, 
82005 gtk_label_set_mnemonic_widget()).
82006 The widgets in the list are not individually referenced. If you
82007 want to iterate through the list and perform actions involving
82008 callbacks that might destroy the widgets, you
82009 &lt;emphasis&gt;must&lt;/emphasis&gt; call &lt;literal&gt;g_list_foreach (result,
82010 (GFunc)g_object_ref, NULL)&lt;/literal&gt; first, and then unref all the
82011 widgets afterwards.
82012 mnemonic labels; free this list
82013 with g_list_free() when you are done with it.</doc>
82014         <return-value transfer-ownership="container">
82015           <doc xml:whitespace="preserve">the list of</doc>
82016           <type name="GLib.List" c:type="GList*">
82017             <type name="Widget"/>
82018           </type>
82019         </return-value>
82020       </method>
82021       <method name="add_mnemonic_label"
82022               c:identifier="gtk_widget_add_mnemonic_label"
82023               version="2.4">
82024         <doc xml:whitespace="preserve">Adds a widget to the list of mnemonic labels for
82025 this widget. (See gtk_widget_list_mnemonic_labels()). Note the
82026 list of mnemonic labels for the widget is cleared when the
82027 widget is destroyed, so the caller must make sure to update
82028 its internal state at this point as well, by using a connection
82029 to the #GtkWidget::destroy signal or a weak notifier.</doc>
82030         <return-value transfer-ownership="none">
82031           <type name="none" c:type="void"/>
82032         </return-value>
82033         <parameters>
82034           <parameter name="label" transfer-ownership="none">
82035             <doc xml:whitespace="preserve">a #GtkWidget that acts as a mnemonic label for @widget</doc>
82036             <type name="Widget" c:type="GtkWidget*"/>
82037           </parameter>
82038         </parameters>
82039       </method>
82040       <method name="remove_mnemonic_label"
82041               c:identifier="gtk_widget_remove_mnemonic_label"
82042               version="2.4">
82043         <doc xml:whitespace="preserve">Removes a widget from the list of mnemonic labels for
82044 this widget. (See gtk_widget_list_mnemonic_labels()). The widget
82045 must have previously been added to the list with
82046 gtk_widget_add_mnemonic_label().</doc>
82047         <return-value transfer-ownership="none">
82048           <type name="none" c:type="void"/>
82049         </return-value>
82050         <parameters>
82051           <parameter name="label" transfer-ownership="none">
82052             <doc xml:whitespace="preserve">a #GtkWidget that was previously set as a mnemnic label for</doc>
82053             <type name="Widget" c:type="GtkWidget*"/>
82054           </parameter>
82055         </parameters>
82056       </method>
82057       <method name="set_tooltip_window"
82058               c:identifier="gtk_widget_set_tooltip_window"
82059               version="2.12">
82060         <doc xml:whitespace="preserve">Replaces the default, usually yellow, window used for displaying
82061 tooltips with @custom_window. GTK+ will take care of showing and
82062 hiding @custom_window at the right moment, to behave likewise as
82063 the default tooltip window. If @custom_window is %NULL, the default
82064 tooltip window will be used.
82065 If the custom window should have the default theming it needs to
82066 have the name "gtk-tooltip", see gtk_widget_set_name().</doc>
82067         <return-value transfer-ownership="none">
82068           <type name="none" c:type="void"/>
82069         </return-value>
82070         <parameters>
82071           <parameter name="custom_window"
82072                      transfer-ownership="none"
82073                      allow-none="1">
82074             <doc xml:whitespace="preserve">a #GtkWindow, or %NULL</doc>
82075             <type name="Window" c:type="GtkWindow*"/>
82076           </parameter>
82077         </parameters>
82078       </method>
82079       <method name="get_tooltip_window"
82080               c:identifier="gtk_widget_get_tooltip_window"
82081               version="2.12">
82082         <doc xml:whitespace="preserve">Returns the #GtkWindow of the current tooltip. This can be the
82083 GtkWindow created by default, or the custom tooltip window set
82084 using gtk_widget_set_tooltip_window().</doc>
82085         <return-value transfer-ownership="none">
82086           <doc xml:whitespace="preserve">The #GtkWindow of the current tooltip.</doc>
82087           <type name="Window" c:type="GtkWindow*"/>
82088         </return-value>
82089       </method>
82090       <method name="trigger_tooltip_query"
82091               c:identifier="gtk_widget_trigger_tooltip_query"
82092               version="2.12">
82093         <doc xml:whitespace="preserve">Triggers a tooltip query on the display where the toplevel of @widget
82094 is located. See gtk_tooltip_trigger_tooltip_query() for more
82095 information.</doc>
82096         <return-value transfer-ownership="none">
82097           <type name="none" c:type="void"/>
82098         </return-value>
82099       </method>
82100       <method name="set_tooltip_text"
82101               c:identifier="gtk_widget_set_tooltip_text"
82102               version="2.12">
82103         <doc xml:whitespace="preserve">Sets @text as the contents of the tooltip. This function will take
82104 care of setting GtkWidget:has-tooltip to %TRUE and of the default
82105 handler for the GtkWidget::query-tooltip signal.
82106 See also the GtkWidget:tooltip-text property and gtk_tooltip_set_text().</doc>
82107         <return-value transfer-ownership="none">
82108           <type name="none" c:type="void"/>
82109         </return-value>
82110         <parameters>
82111           <parameter name="text" transfer-ownership="none">
82112             <doc xml:whitespace="preserve">the contents of the tooltip for @widget</doc>
82113             <type name="utf8" c:type="gchar*"/>
82114           </parameter>
82115         </parameters>
82116       </method>
82117       <method name="get_tooltip_text"
82118               c:identifier="gtk_widget_get_tooltip_text"
82119               version="2.12">
82120         <doc xml:whitespace="preserve">Gets the contents of the tooltip for @widget.
82121 returned string with g_free() when done.</doc>
82122         <return-value transfer-ownership="full">
82123           <doc xml:whitespace="preserve">the tooltip text, or %NULL. You should free the</doc>
82124           <type name="utf8" c:type="gchar*"/>
82125         </return-value>
82126       </method>
82127       <method name="set_tooltip_markup"
82128               c:identifier="gtk_widget_set_tooltip_markup"
82129               version="2.12">
82130         <doc xml:whitespace="preserve">Sets @markup as the contents of the tooltip, which is marked up with
82131 the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
82132 This function will take care of setting GtkWidget:has-tooltip to %TRUE
82133 and of the default handler for the GtkWidget::query-tooltip signal.
82134 See also the GtkWidget:tooltip-markup property and
82135 gtk_tooltip_set_markup().</doc>
82136         <return-value transfer-ownership="none">
82137           <type name="none" c:type="void"/>
82138         </return-value>
82139         <parameters>
82140           <parameter name="markup" transfer-ownership="none" allow-none="1">
82141             <doc xml:whitespace="preserve">the contents of the tooltip for @widget, or %NULL</doc>
82142             <type name="utf8" c:type="gchar*"/>
82143           </parameter>
82144         </parameters>
82145       </method>
82146       <method name="get_tooltip_markup"
82147               c:identifier="gtk_widget_get_tooltip_markup"
82148               version="2.12">
82149         <doc xml:whitespace="preserve">Gets the contents of the tooltip for @widget.
82150 returned string with g_free() when done.</doc>
82151         <return-value transfer-ownership="full">
82152           <doc xml:whitespace="preserve">the tooltip text, or %NULL. You should free the</doc>
82153           <type name="utf8" c:type="gchar*"/>
82154         </return-value>
82155       </method>
82156       <method name="set_has_tooltip"
82157               c:identifier="gtk_widget_set_has_tooltip"
82158               version="2.12">
82159         <doc xml:whitespace="preserve">Sets the has-tooltip property on @widget to @has_tooltip.  See
82160 GtkWidget:has-tooltip for more information.</doc>
82161         <return-value transfer-ownership="none">
82162           <type name="none" c:type="void"/>
82163         </return-value>
82164         <parameters>
82165           <parameter name="has_tooltip" transfer-ownership="none">
82166             <doc xml:whitespace="preserve">whether or not @widget has a tooltip.</doc>
82167             <type name="boolean" c:type="gboolean"/>
82168           </parameter>
82169         </parameters>
82170       </method>
82171       <method name="get_has_tooltip"
82172               c:identifier="gtk_widget_get_has_tooltip"
82173               version="2.12">
82174         <doc xml:whitespace="preserve">Returns the current value of the has-tooltip property.  See
82175 GtkWidget:has-tooltip for more information.</doc>
82176         <return-value transfer-ownership="none">
82177           <doc xml:whitespace="preserve">current value of has-tooltip on @widget.</doc>
82178           <type name="boolean" c:type="gboolean"/>
82179         </return-value>
82180       </method>
82181       <method name="get_action"
82182               c:identifier="gtk_widget_get_action"
82183               version="2.10"
82184               deprecated="Use gtk_activatable_get_related_action() instead."
82185               deprecated-version="2.16">
82186         <doc xml:whitespace="preserve">Returns the #GtkAction that @widget is a proxy for. 
82187 See also gtk_action_get_proxies().
82188 %NULL, if it is not attached to an action.</doc>
82189         <return-value transfer-ownership="full">
82190           <doc xml:whitespace="preserve">the action that a widget is a proxy for, or</doc>
82191           <type name="Action" c:type="GtkAction*"/>
82192         </return-value>
82193       </method>
82194       <property name="app-paintable" writable="1" transfer-ownership="none">
82195         <type name="boolean" c:type="gboolean"/>
82196       </property>
82197       <property name="can-default" writable="1" transfer-ownership="none">
82198         <type name="boolean" c:type="gboolean"/>
82199       </property>
82200       <property name="can-focus" writable="1" transfer-ownership="none">
82201         <type name="boolean" c:type="gboolean"/>
82202       </property>
82203       <property name="composite-child" transfer-ownership="none">
82204         <type name="boolean" c:type="gboolean"/>
82205       </property>
82206       <property name="double-buffered" writable="1" transfer-ownership="none">
82207         <type name="boolean" c:type="gboolean"/>
82208       </property>
82209       <property name="events" writable="1" transfer-ownership="none">
82210         <type name="Gdk.EventMask" c:type="GdkEventMask"/>
82211       </property>
82212       <property name="extension-events" writable="1" transfer-ownership="none">
82213         <type name="Gdk.ExtensionMode" c:type="GdkExtensionMode"/>
82214       </property>
82215       <property name="has-default" writable="1" transfer-ownership="none">
82216         <type name="boolean" c:type="gboolean"/>
82217       </property>
82218       <property name="has-focus" writable="1" transfer-ownership="none">
82219         <type name="boolean" c:type="gboolean"/>
82220       </property>
82221       <property name="has-tooltip"
82222                 version="2.12"
82223                 writable="1"
82224                 transfer-ownership="none">
82225         <doc xml:whitespace="preserve">Enables or disables the emission of #GtkWidget::query-tooltip on @widget.  
82226 A value of %TRUE indicates that @widget can have a tooltip, in this case
82227 the widget will be queried using #GtkWidget::query-tooltip to determine
82228 whether it will provide a tooltip or not.
82229 Note that setting this property to %TRUE for the first time will change
82230 the event masks of the GdkWindows of this widget to include leave-notify
82231 and motion-notify events.  This cannot and will not be undone when the
82232 property is set to %FALSE again.</doc>
82233         <type name="boolean" c:type="gboolean"/>
82234       </property>
82235       <property name="height-request" writable="1" transfer-ownership="none">
82236         <type name="int" c:type="gint"/>
82237       </property>
82238       <property name="is-focus" writable="1" transfer-ownership="none">
82239         <type name="boolean" c:type="gboolean"/>
82240       </property>
82241       <property name="name" writable="1" transfer-ownership="none">
82242         <type name="utf8" c:type="gchararray"/>
82243       </property>
82244       <property name="no-show-all" writable="1" transfer-ownership="none">
82245         <type name="boolean" c:type="gboolean"/>
82246       </property>
82247       <property name="parent" writable="1" transfer-ownership="none">
82248         <type name="Container" c:type="GtkContainer"/>
82249       </property>
82250       <property name="receives-default" writable="1" transfer-ownership="none">
82251         <type name="boolean" c:type="gboolean"/>
82252       </property>
82253       <property name="sensitive" writable="1" transfer-ownership="none">
82254         <type name="boolean" c:type="gboolean"/>
82255       </property>
82256       <property name="style" writable="1" transfer-ownership="none">
82257         <type name="Style" c:type="GtkStyle"/>
82258       </property>
82259       <property name="tooltip-markup"
82260                 version="2.12"
82261                 writable="1"
82262                 transfer-ownership="none">
82263         <doc xml:whitespace="preserve">Sets the text of tooltip to be the given string, which is marked up
82264 with the &lt;link linkend="PangoMarkupFormat"&gt;Pango text markup language&lt;/link&gt;.
82265 Also see gtk_tooltip_set_markup().
82266 This is a convenience property which will take care of getting the
82267 will automatically be set to %TRUE and there will be taken care of
82268 #GtkWidget::query-tooltip in the default signal handler.</doc>
82269         <type name="utf8" c:type="gchararray"/>
82270       </property>
82271       <property name="tooltip-text"
82272                 version="2.12"
82273                 writable="1"
82274                 transfer-ownership="none">
82275         <doc xml:whitespace="preserve">Sets the text of tooltip to be the given string.
82276 Also see gtk_tooltip_set_text().
82277 This is a convenience property which will take care of getting the
82278 will automatically be set to %TRUE and there will be taken care of
82279 #GtkWidget::query-tooltip in the default signal handler.</doc>
82280         <type name="utf8" c:type="gchararray"/>
82281       </property>
82282       <property name="visible" writable="1" transfer-ownership="none">
82283         <type name="boolean" c:type="gboolean"/>
82284       </property>
82285       <property name="width-request" writable="1" transfer-ownership="none">
82286         <type name="int" c:type="gint"/>
82287       </property>
82288       <property name="window" version="2.14" transfer-ownership="none">
82289         <doc xml:whitespace="preserve">The widget's window if it is realized, %NULL otherwise.</doc>
82290         <type name="Gdk.Window" c:type="GdkWindow"/>
82291       </property>
82292       <field name="object">
82293         <type name="Object" c:type="GtkObject"/>
82294       </field>
82295       <field name="private_flags">
82296         <type name="uint16" c:type="guint16"/>
82297       </field>
82298       <field name="state">
82299         <type name="uint8" c:type="guint8"/>
82300       </field>
82301       <field name="saved_state">
82302         <type name="uint8" c:type="guint8"/>
82303       </field>
82304       <field name="name">
82305         <type name="utf8" c:type="gchar*"/>
82306       </field>
82307       <field name="style">
82308         <type name="Style" c:type="GtkStyle*"/>
82309       </field>
82310       <field name="requisition">
82311         <type name="Requisition" c:type="GtkRequisition"/>
82312       </field>
82313       <field name="allocation">
82314         <type name="Allocation" c:type="GtkAllocation"/>
82315       </field>
82316       <field name="window">
82317         <type name="Gdk.Window" c:type="GdkWindow*"/>
82318       </field>
82319       <field name="parent">
82320         <type name="Widget" c:type="GtkWidget*"/>
82321       </field>
82322       <glib:signal name="accel-closures-changed">
82323         <return-value transfer-ownership="full">
82324           <type name="none" c:type="void"/>
82325         </return-value>
82326       </glib:signal>
82327       <glib:signal name="button-press-event">
82328         <doc xml:whitespace="preserve">The ::button-press-event signal will be emitted when a button
82329 (typically from a mouse) is pressed.
82330 To receive this signal, the #GdkWindow associated to the 
82331 widget needs to enable the #GDK_BUTTON_PRESS_MASK mask.
82332 This signal will be sent to the grab widget if there is one.
82333 %FALSE to propagate the event further.</doc>
82334         <return-value transfer-ownership="full">
82335           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
82336           <type name="boolean" c:type="gboolean"/>
82337         </return-value>
82338         <parameters>
82339           <parameter name="event" transfer-ownership="none">
82340             <doc xml:whitespace="preserve">the #GdkEventButton which triggered this signal</doc>
82341             <type name="Gdk.Event" c:type="GdkEvent"/>
82342           </parameter>
82343         </parameters>
82344       </glib:signal>
82345       <glib:signal name="button-release-event">
82346         <doc xml:whitespace="preserve">The ::button-release-event signal will be emitted when a button
82347 (typically from a mouse) is released.
82348 To receive this signal, the #GdkWindow associated to the 
82349 widget needs to enable the #GDK_BUTTON_RELEASE_MASK mask.
82350 This signal will be sent to the grab widget if there is one.
82351 %FALSE to propagate the event further.</doc>
82352         <return-value transfer-ownership="full">
82353           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
82354           <type name="boolean" c:type="gboolean"/>
82355         </return-value>
82356         <parameters>
82357           <parameter name="event" transfer-ownership="none">
82358             <doc xml:whitespace="preserve">the #GdkEventButton which triggered this signal</doc>
82359             <type name="Gdk.Event" c:type="GdkEvent"/>
82360           </parameter>
82361         </parameters>
82362       </glib:signal>
82363       <glib:signal name="can-activate-accel">
82364         <doc xml:whitespace="preserve">Determines whether an accelerator that activates the signal
82365 identified by @signal_id can currently be activated.
82366 This signal is present to allow applications and derived
82367 widgets to override the default #GtkWidget handling
82368 for determining whether an accelerator can be activated.</doc>
82369         <return-value transfer-ownership="full">
82370           <doc xml:whitespace="preserve">%TRUE if the signal can be activated.</doc>
82371           <type name="boolean" c:type="gboolean"/>
82372         </return-value>
82373         <parameters>
82374           <parameter name="signal_id" transfer-ownership="none">
82375             <doc xml:whitespace="preserve">the ID of a signal installed on @widget</doc>
82376             <type name="uint" c:type="guint"/>
82377           </parameter>
82378         </parameters>
82379       </glib:signal>
82380       <glib:signal name="child-notify">
82381         <doc xml:whitespace="preserve">The ::child-notify signal is emitted for each 
82382 &lt;link linkend="child-properties"&gt;child property&lt;/link&gt;  that has
82383 changed on an object. The signal's detail holds the property name.</doc>
82384         <return-value transfer-ownership="full">
82385           <type name="none" c:type="void"/>
82386         </return-value>
82387         <parameters>
82388           <parameter name="pspec" transfer-ownership="none">
82389             <doc xml:whitespace="preserve">the #GParamSpec of the changed child property</doc>
82390             <type name="GObject.ParamSpec" c:type="GParam"/>
82391           </parameter>
82392         </parameters>
82393       </glib:signal>
82394       <glib:signal name="client-event">
82395         <doc xml:whitespace="preserve">The ::client-event will be emitted when the @widget's window
82396 receives a message (via a ClientMessage event) from another
82397 application.
82398 the event. %FALSE to propagate the event further.</doc>
82399         <return-value transfer-ownership="full">
82400           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for</doc>
82401           <type name="boolean" c:type="gboolean"/>
82402         </return-value>
82403         <parameters>
82404           <parameter name="event" transfer-ownership="none">
82405             <doc xml:whitespace="preserve">the #GdkEventClient which triggered this signal</doc>
82406             <type name="Gdk.Event" c:type="GdkEvent"/>
82407           </parameter>
82408         </parameters>
82409       </glib:signal>
82410       <glib:signal name="composited-changed">
82411         <doc xml:whitespace="preserve">The ::composited-changed signal is emitted when the composited
82412 status of @widget&lt;!-- --&gt;s screen changes. 
82413 See gdk_screen_is_composited().</doc>
82414         <return-value transfer-ownership="full">
82415           <type name="none" c:type="void"/>
82416         </return-value>
82417       </glib:signal>
82418       <glib:signal name="configure-event">
82419         <return-value transfer-ownership="full">
82420           <type name="boolean" c:type="gboolean"/>
82421         </return-value>
82422         <parameters>
82423           <parameter name="object" transfer-ownership="none">
82424             <type name="Gdk.Event" c:type="GdkEvent"/>
82425           </parameter>
82426         </parameters>
82427       </glib:signal>
82428       <glib:signal name="damage-event" version="2.14">
82429         <doc xml:whitespace="preserve">Emitted when a redirected window belonging to @widget gets drawn into.
82430 The region/area members of the event shows what area of the redirected
82431 drawable was drawn into.
82432 %FALSE to propagate the event further.</doc>
82433         <return-value transfer-ownership="full">
82434           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
82435           <type name="boolean" c:type="gboolean"/>
82436         </return-value>
82437         <parameters>
82438           <parameter name="event" transfer-ownership="none">
82439             <doc xml:whitespace="preserve">the #GdkEventExpose event</doc>
82440             <type name="Gdk.Event" c:type="GdkEvent"/>
82441           </parameter>
82442         </parameters>
82443       </glib:signal>
82444       <glib:signal name="delete-event">
82445         <doc xml:whitespace="preserve">The ::delete-event signal is emitted if a user requests that
82446 a toplevel window is closed. The default handler for this signal
82447 destroys the window. Connecting gtk_widget_hide_on_delete() to
82448 this signal will cause the window to be hidden instead, so that
82449 it can later be shown again without reconstructing it.
82450 %FALSE to propagate the event further.</doc>
82451         <return-value transfer-ownership="full">
82452           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
82453           <type name="boolean" c:type="gboolean"/>
82454         </return-value>
82455         <parameters>
82456           <parameter name="event" transfer-ownership="none">
82457             <doc xml:whitespace="preserve">the event which triggered this signal</doc>
82458             <type name="Gdk.Event" c:type="GdkEvent"/>
82459           </parameter>
82460         </parameters>
82461       </glib:signal>
82462       <glib:signal name="destroy-event">
82463         <doc xml:whitespace="preserve">The ::destroy-event signal is emitted when a #GdkWindow is destroyed.
82464 You rarely get this signal, because most widgets disconnect themselves 
82465 from their window before they destroy it, so no widget owns the 
82466 window at destroy time.
82467 To receive this signal, the #GdkWindow associated to the widget needs
82468 to enable the #GDK_STRUCTURE_MASK mask. GDK will enable this mask
82469 automatically for all new windows.
82470 %FALSE to propagate the event further.</doc>
82471         <return-value transfer-ownership="full">
82472           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
82473           <type name="boolean" c:type="gboolean"/>
82474         </return-value>
82475         <parameters>
82476           <parameter name="event" transfer-ownership="none">
82477             <doc xml:whitespace="preserve">the event which triggered this signal</doc>
82478             <type name="Gdk.Event" c:type="GdkEvent"/>
82479           </parameter>
82480         </parameters>
82481       </glib:signal>
82482       <glib:signal name="direction-changed">
82483         <doc xml:whitespace="preserve">The ::direction-changed signal is emitted when the text direction
82484 of a widget changes.</doc>
82485         <return-value transfer-ownership="full">
82486           <type name="none" c:type="void"/>
82487         </return-value>
82488         <parameters>
82489           <parameter name="previous_direction" transfer-ownership="none">
82490             <doc xml:whitespace="preserve">the previous text direction of @widget</doc>
82491             <type name="TextDirection" c:type="GtkTextDirection"/>
82492           </parameter>
82493         </parameters>
82494       </glib:signal>
82495       <glib:signal name="drag-begin">
82496         <doc xml:whitespace="preserve">The ::drag-begin signal is emitted on the drag source when a drag is 
82497 started. A typical reason to connect to this signal is to set up a 
82498 custom drag icon with gtk_drag_source_set_icon().
82499 Note that some widgets set up a drag icon in the default handler of
82500 this signal, so you may have to use g_signal_connect_after() to
82501 override what the default handler did.</doc>
82502         <return-value transfer-ownership="full">
82503           <type name="none" c:type="void"/>
82504         </return-value>
82505         <parameters>
82506           <parameter name="drag_context" transfer-ownership="none">
82507             <doc xml:whitespace="preserve">the drag context</doc>
82508             <type name="Gdk.DragContext" c:type="GdkDragContext"/>
82509           </parameter>
82510         </parameters>
82511       </glib:signal>
82512       <glib:signal name="drag-data-delete">
82513         <doc xml:whitespace="preserve">The ::drag-data-delete signal is emitted on the drag source when a drag 
82514 with the action %GDK_ACTION_MOVE is successfully completed. The signal 
82515 handler is responsible for deleting the data that has been dropped. What 
82516 "delete" means depends on the context of the drag operation.</doc>
82517         <return-value transfer-ownership="full">
82518           <type name="none" c:type="void"/>
82519         </return-value>
82520         <parameters>
82521           <parameter name="drag_context" transfer-ownership="none">
82522             <doc xml:whitespace="preserve">the drag context</doc>
82523             <type name="Gdk.DragContext" c:type="GdkDragContext"/>
82524           </parameter>
82525         </parameters>
82526       </glib:signal>
82527       <glib:signal name="drag-data-get">
82528         <doc xml:whitespace="preserve">The ::drag-data-get signal is emitted on the drag source when the drop 
82529 site requests the data which is dragged. It is the responsibility of 
82530 the signal handler to fill @data with the data in the format which 
82531 is indicated by @info. See gtk_selection_data_set() and 
82532 gtk_selection_data_set_text().</doc>
82533         <return-value transfer-ownership="full">
82534           <type name="none" c:type="void"/>
82535         </return-value>
82536         <parameters>
82537           <parameter name="drag_context" transfer-ownership="none">
82538             <doc xml:whitespace="preserve">the drag context</doc>
82539             <type name="Gdk.DragContext" c:type="GdkDragContext"/>
82540           </parameter>
82541           <parameter name="data" transfer-ownership="none">
82542             <doc xml:whitespace="preserve">the #GtkSelectionData to be filled with the dragged data</doc>
82543             <type name="SelectionData" c:type="GtkSelectionData"/>
82544           </parameter>
82545           <parameter name="info" transfer-ownership="none">
82546             <doc xml:whitespace="preserve">the info that has been registered with the target in the #GtkTargetList</doc>
82547             <type name="uint" c:type="guint"/>
82548           </parameter>
82549           <parameter name="time" transfer-ownership="none">
82550             <doc xml:whitespace="preserve">the timestamp at which the data was requested</doc>
82551             <type name="uint" c:type="guint"/>
82552           </parameter>
82553         </parameters>
82554       </glib:signal>
82555       <glib:signal name="drag-data-received">
82556         <doc xml:whitespace="preserve">The ::drag-data-received signal is emitted on the drop site when the 
82557 dragged data has been received. If the data was received in order to 
82558 determine whether the drop will be accepted, the handler is expected 
82559 to call gdk_drag_status() and &lt;emphasis&gt;not&lt;/emphasis&gt; finish the drag. 
82560 If the data was received in response to a #GtkWidget::drag-drop signal 
82561 (and this is the last target to be received), the handler for this 
82562 signal is expected to process the received data and then call 
82563 gtk_drag_finish(), setting the @success parameter depending on whether 
82564 the data was processed successfully. 
82565 The handler may inspect and modify @drag_context-&gt;action before calling 
82566 gtk_drag_finish(), e.g. to implement %GDK_ACTION_ASK as shown in the 
82567 following example:
82568 |[
82569 void  
82570 drag_data_received (GtkWidget          *widget,
82571 GdkDragContext     *drag_context,
82572 gint                x,
82573 gint                y,
82574 GtkSelectionData   *data,
82575 guint               info,
82576 guint               time)
82577 {
82578 if ((data-&gt;length &gt;= 0) &amp;&amp; (data-&gt;format == 8))
82579 {
82580 if (drag_context-&gt;action == GDK_ACTION_ASK) 
82581 {
82582 GtkWidget *dialog;
82583 gint response;
82584 dialog = gtk_message_dialog_new (NULL,
82585 GTK_DIALOG_MODAL | 
82586 GTK_DIALOG_DESTROY_WITH_PARENT,
82587 GTK_MESSAGE_INFO,
82588 GTK_BUTTONS_YES_NO,
82589 "Move the data ?\n");
82590 response = gtk_dialog_run (GTK_DIALOG (dialog));
82591 gtk_widget_destroy (dialog);
82592 if (response == GTK_RESPONSE_YES)
82593 drag_context-&gt;action = GDK_ACTION_MOVE;
82594 else
82595 drag_context-&gt;action = GDK_ACTION_COPY;
82596 }
82597 gtk_drag_finish (drag_context, TRUE, FALSE, time);
82598 return;
82599 }
82600 gtk_drag_finish (drag_context, FALSE, FALSE, time);
82601 }
82602 ]|</doc>
82603         <return-value transfer-ownership="full">
82604           <type name="none" c:type="void"/>
82605         </return-value>
82606         <parameters>
82607           <parameter name="drag_context" transfer-ownership="none">
82608             <doc xml:whitespace="preserve">the drag context</doc>
82609             <type name="Gdk.DragContext" c:type="GdkDragContext"/>
82610           </parameter>
82611           <parameter name="x" transfer-ownership="none">
82612             <doc xml:whitespace="preserve">where the drop happened</doc>
82613             <type name="int" c:type="gint"/>
82614           </parameter>
82615           <parameter name="y" transfer-ownership="none">
82616             <doc xml:whitespace="preserve">where the drop happened</doc>
82617             <type name="int" c:type="gint"/>
82618           </parameter>
82619           <parameter name="data" transfer-ownership="none">
82620             <doc xml:whitespace="preserve">the received data</doc>
82621             <type name="SelectionData" c:type="GtkSelectionData"/>
82622           </parameter>
82623           <parameter name="info" transfer-ownership="none">
82624             <doc xml:whitespace="preserve">the info that has been registered with the target in the #GtkTargetList</doc>
82625             <type name="uint" c:type="guint"/>
82626           </parameter>
82627           <parameter name="time" transfer-ownership="none">
82628             <doc xml:whitespace="preserve">the timestamp at which the data was received</doc>
82629             <type name="uint" c:type="guint"/>
82630           </parameter>
82631         </parameters>
82632       </glib:signal>
82633       <glib:signal name="drag-drop">
82634         <doc xml:whitespace="preserve">The ::drag-drop signal is emitted on the drop site when the user drops 
82635 the data onto the widget. The signal handler must determine whether 
82636 the cursor position is in a drop zone or not. If it is not in a drop 
82637 zone, it returns %FALSE and no further processing is necessary. 
82638 Otherwise, the handler returns %TRUE. In this case, the handler must 
82639 ensure that gtk_drag_finish() is called to let the source know that 
82640 the drop is done. The call to gtk_drag_finish() can be done either 
82641 directly or in a #GtkWidget::drag-data-received handler which gets 
82642 triggered by calling gtk_drag_get_data() to receive the data for one 
82643 or more of the supported targets.</doc>
82644         <return-value transfer-ownership="full">
82645           <doc xml:whitespace="preserve">whether the cursor position is in a drop zone</doc>
82646           <type name="boolean" c:type="gboolean"/>
82647         </return-value>
82648         <parameters>
82649           <parameter name="drag_context" transfer-ownership="none">
82650             <doc xml:whitespace="preserve">the drag context</doc>
82651             <type name="Gdk.DragContext" c:type="GdkDragContext"/>
82652           </parameter>
82653           <parameter name="x" transfer-ownership="none">
82654             <doc xml:whitespace="preserve">the x coordinate of the current cursor position</doc>
82655             <type name="int" c:type="gint"/>
82656           </parameter>
82657           <parameter name="y" transfer-ownership="none">
82658             <doc xml:whitespace="preserve">the y coordinate of the current cursor position</doc>
82659             <type name="int" c:type="gint"/>
82660           </parameter>
82661           <parameter name="time" transfer-ownership="none">
82662             <doc xml:whitespace="preserve">the timestamp of the motion event</doc>
82663             <type name="uint" c:type="guint"/>
82664           </parameter>
82665         </parameters>
82666       </glib:signal>
82667       <glib:signal name="drag-end">
82668         <doc xml:whitespace="preserve">The ::drag-end signal is emitted on the drag source when a drag is 
82669 finished.  A typical reason to connect to this signal is to undo 
82670 things done in #GtkWidget::drag-begin.</doc>
82671         <return-value transfer-ownership="full">
82672           <type name="none" c:type="void"/>
82673         </return-value>
82674         <parameters>
82675           <parameter name="drag_context" transfer-ownership="none">
82676             <doc xml:whitespace="preserve">the drag context</doc>
82677             <type name="Gdk.DragContext" c:type="GdkDragContext"/>
82678           </parameter>
82679         </parameters>
82680       </glib:signal>
82681       <glib:signal name="drag-failed" version="2.12">
82682         <doc xml:whitespace="preserve">The ::drag-failed signal is emitted on the drag source when a drag has
82683 failed. The signal handler may hook custom code to handle a failed DND
82684 operation based on the type of error, it returns %TRUE is the failure has
82685 been already handled (not showing the default "drag operation failed"
82686 animation), otherwise it returns %FALSE.</doc>
82687         <return-value transfer-ownership="full">
82688           <doc xml:whitespace="preserve">%TRUE if the failed drag operation has been already handled.</doc>
82689           <type name="boolean" c:type="gboolean"/>
82690         </return-value>
82691         <parameters>
82692           <parameter name="drag_context" transfer-ownership="none">
82693             <doc xml:whitespace="preserve">the drag context</doc>
82694             <type name="Gdk.DragContext" c:type="GdkDragContext"/>
82695           </parameter>
82696           <parameter name="result" transfer-ownership="none">
82697             <doc xml:whitespace="preserve">the result of the drag operation</doc>
82698             <type name="DragResult" c:type="GtkDragResult"/>
82699           </parameter>
82700         </parameters>
82701       </glib:signal>
82702       <glib:signal name="drag-leave">
82703         <doc xml:whitespace="preserve">The ::drag-leave signal is emitted on the drop site when the cursor 
82704 leaves the widget. A typical reason to connect to this signal is to 
82705 undo things done in #GtkWidget::drag-motion, e.g. undo highlighting 
82706 with gtk_drag_unhighlight()</doc>
82707         <return-value transfer-ownership="full">
82708           <type name="none" c:type="void"/>
82709         </return-value>
82710         <parameters>
82711           <parameter name="drag_context" transfer-ownership="none">
82712             <doc xml:whitespace="preserve">the drag context</doc>
82713             <type name="Gdk.DragContext" c:type="GdkDragContext"/>
82714           </parameter>
82715           <parameter name="time" transfer-ownership="none">
82716             <doc xml:whitespace="preserve">the timestamp of the motion event</doc>
82717             <type name="uint" c:type="guint"/>
82718           </parameter>
82719         </parameters>
82720       </glib:signal>
82721       <glib:signal name="drag-motion">
82722         <doc xml:whitespace="preserve">The drag-motion signal is emitted on the drop site when the user
82723 moves the cursor over the widget during a drag. The signal handler
82724 must determine whether the cursor position is in a drop zone or not.
82725 If it is not in a drop zone, it returns %FALSE and no further processing
82726 is necessary. Otherwise, the handler returns %TRUE. In this case, the
82727 handler is responsible for providing the necessary information for
82728 displaying feedback to the user, by calling gdk_drag_status().
82729 If the decision whether the drop will be accepted or rejected can't be
82730 made based solely on the cursor position and the type of the data, the
82731 handler may inspect the dragged data by calling gtk_drag_get_data() and
82732 defer the gdk_drag_status() call to the #GtkWidget::drag-data-received
82733 handler. Note that you cannot not pass #GTK_DEST_DEFAULT_DROP,
82734 #GTK_DEST_DEFAULT_MOTION or #GTK_DEST_DEFAULT_ALL to gtk_drag_dest_set()
82735 when using the drag-motion signal that way.
82736 Also note that there is no drag-enter signal. The drag receiver has to
82737 keep track of whether he has received any drag-motion signals since the
82738 last #GtkWidget::drag-leave and if not, treat the drag-motion signal as
82739 an "enter" signal. Upon an "enter", the handler will typically highlight
82740 the drop site with gtk_drag_highlight().
82741 |[
82742 static void
82743 drag_motion (GtkWidget *widget,
82744 GdkDragContext *context,
82745 gint x,
82746 gint y,
82747 guint time)
82748 {
82749 GdkAtom target;
82750 PrivateData *private_data = GET_PRIVATE_DATA (widget);
82751 if (!private_data-&gt;drag_highlight) 
82752 {
82753 private_data-&gt;drag_highlight = 1;
82754 gtk_drag_highlight (widget);
82755 }
82756 target = gtk_drag_dest_find_target (widget, context, NULL);
82757 if (target == GDK_NONE)
82758 gdk_drag_status (context, 0, time);
82759 else 
82760 {
82761 private_data-&gt;pending_status = context-&gt;suggested_action;
82762 gtk_drag_get_data (widget, context, target, time);
82763 }
82764 return TRUE;
82765 }
82766 static void
82767 drag_data_received (GtkWidget        *widget,
82768 GdkDragContext   *context,
82769 gint              x,
82770 gint              y,
82771 GtkSelectionData *selection_data,
82772 guint             info,
82773 guint             time)
82774 {
82775 PrivateData *private_data = GET_PRIVATE_DATA (widget);
82776 if (private_data-&gt;suggested_action) 
82777 {
82778 private_data-&gt;suggested_action = 0;
82779 /&amp;ast; We are getting this data due to a request in drag_motion,
82780 * rather than due to a request in drag_drop, so we are just
82781 * supposed to call gdk_drag_status (), not actually paste in 
82782 * the data.
82783 &amp;ast;/
82784 str = gtk_selection_data_get_text (selection_data);
82785 if (!data_is_acceptable (str)) 
82786 gdk_drag_status (context, 0, time);
82787 else
82788 gdk_drag_status (context, private_data-&gt;suggested_action, time);
82789 }
82790 else
82791 {
82792 /&amp;ast; accept the drop &amp;ast;/
82793 }
82794 }
82795 ]|</doc>
82796         <return-value transfer-ownership="full">
82797           <doc xml:whitespace="preserve">whether the cursor position is in a drop zone</doc>
82798           <type name="boolean" c:type="gboolean"/>
82799         </return-value>
82800         <parameters>
82801           <parameter name="drag_context" transfer-ownership="none">
82802             <doc xml:whitespace="preserve">the drag context</doc>
82803             <type name="Gdk.DragContext" c:type="GdkDragContext"/>
82804           </parameter>
82805           <parameter name="x" transfer-ownership="none">
82806             <doc xml:whitespace="preserve">the x coordinate of the current cursor position</doc>
82807             <type name="int" c:type="gint"/>
82808           </parameter>
82809           <parameter name="y" transfer-ownership="none">
82810             <doc xml:whitespace="preserve">the y coordinate of the current cursor position</doc>
82811             <type name="int" c:type="gint"/>
82812           </parameter>
82813           <parameter name="time" transfer-ownership="none">
82814             <doc xml:whitespace="preserve">the timestamp of the motion event</doc>
82815             <type name="uint" c:type="guint"/>
82816           </parameter>
82817         </parameters>
82818       </glib:signal>
82819       <glib:signal name="enter-notify-event">
82820         <doc xml:whitespace="preserve">The ::enter-notify-event will be emitted when the pointer enters
82821 the @widget's window.
82822 To receive this signal, the #GdkWindow associated to the widget needs
82823 to enable the #GDK_ENTER_NOTIFY_MASK mask.
82824 This signal will be sent to the grab widget if there is one.
82825 %FALSE to propagate the event further.</doc>
82826         <return-value transfer-ownership="full">
82827           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
82828           <type name="boolean" c:type="gboolean"/>
82829         </return-value>
82830         <parameters>
82831           <parameter name="event" transfer-ownership="none">
82832             <doc xml:whitespace="preserve">the #GdkEventCrossing which triggered this signal</doc>
82833             <type name="Gdk.Event" c:type="GdkEvent"/>
82834           </parameter>
82835         </parameters>
82836       </glib:signal>
82837       <glib:signal name="event">
82838         <doc xml:whitespace="preserve">The GTK+ main loop will emit three signals for each GDK event delivered
82839 signal that matches the type of event delivered (e.g. 
82840 #GtkWidget::key-press-event) and finally a generic 
82841 #GtkWidget::event-after signal.
82842 and to cancel the emission of the second specific ::event signal.
82843 %FALSE to propagate the event further and to allow the emission of 
82844 the second signal. The ::event-after signal is emitted regardless of
82845 the return value.</doc>
82846         <return-value transfer-ownership="full">
82847           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event</doc>
82848           <type name="boolean" c:type="gboolean"/>
82849         </return-value>
82850         <parameters>
82851           <parameter name="event" transfer-ownership="none">
82852             <doc xml:whitespace="preserve">the #GdkEvent which triggered this signal</doc>
82853             <type name="Gdk.Event" c:type="GdkEvent"/>
82854           </parameter>
82855         </parameters>
82856       </glib:signal>
82857       <glib:signal name="event-after">
82858         <doc xml:whitespace="preserve">After the emission of the #GtkWidget::event signal and (optionally) 
82859 the second more specific signal, ::event-after will be emitted 
82860 regardless of the previous two signals handlers return values.</doc>
82861         <return-value transfer-ownership="full">
82862           <type name="none" c:type="void"/>
82863         </return-value>
82864         <parameters>
82865           <parameter name="event" transfer-ownership="none">
82866             <doc xml:whitespace="preserve">the #GdkEvent which triggered this signal</doc>
82867             <type name="Gdk.Event" c:type="GdkEvent"/>
82868           </parameter>
82869         </parameters>
82870       </glib:signal>
82871       <glib:signal name="expose-event">
82872         <doc xml:whitespace="preserve">The ::expose-event signal is emitted when an area of a previously
82873 obscured #GdkWindow is made visible and needs to be redrawn.
82874 #GTK_NO_WINDOW widgets will get a synthesized event from their parent 
82875 widget.
82876 To receive this signal, the #GdkWindow associated to the widget needs
82877 to enable the #GDK_EXPOSURE_MASK mask.
82878 %FALSE to propagate the event further.</doc>
82879         <return-value transfer-ownership="full">
82880           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
82881           <type name="boolean" c:type="gboolean"/>
82882         </return-value>
82883         <parameters>
82884           <parameter name="event" transfer-ownership="none">
82885             <doc xml:whitespace="preserve">the #GdkEventExpose which triggered this signal</doc>
82886             <type name="Gdk.Event" c:type="GdkEvent"/>
82887           </parameter>
82888         </parameters>
82889       </glib:signal>
82890       <glib:signal name="focus">
82891         <return-value transfer-ownership="full">
82892           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.</doc>
82893           <type name="boolean" c:type="gboolean"/>
82894         </return-value>
82895         <parameters>
82896           <parameter name="returns" transfer-ownership="none">
82897             <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.</doc>
82898             <type name="DirectionType" c:type="GtkDirectionType"/>
82899           </parameter>
82900         </parameters>
82901       </glib:signal>
82902       <glib:signal name="focus-in-event">
82903         <return-value transfer-ownership="full">
82904           <type name="boolean" c:type="gboolean"/>
82905         </return-value>
82906         <parameters>
82907           <parameter name="object" transfer-ownership="none">
82908             <type name="Gdk.Event" c:type="GdkEvent"/>
82909           </parameter>
82910         </parameters>
82911       </glib:signal>
82912       <glib:signal name="focus-out-event">
82913         <return-value transfer-ownership="full">
82914           <type name="boolean" c:type="gboolean"/>
82915         </return-value>
82916         <parameters>
82917           <parameter name="object" transfer-ownership="none">
82918             <type name="Gdk.Event" c:type="GdkEvent"/>
82919           </parameter>
82920         </parameters>
82921       </glib:signal>
82922       <glib:signal name="grab-broken-event" version="2.8">
82923         <doc xml:whitespace="preserve">Emitted when a pointer or keyboard grab on a window belonging 
82924 to @widget gets broken. 
82925 On X11, this happens when the grab window becomes unviewable 
82926 (i.e. it or one of its ancestors is unmapped), or if the same 
82927 application grabs the pointer or keyboard again.
82928 the event. %FALSE to propagate the event further.</doc>
82929         <return-value transfer-ownership="full">
82930           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for</doc>
82931           <type name="boolean" c:type="gboolean"/>
82932         </return-value>
82933         <parameters>
82934           <parameter name="event" transfer-ownership="none">
82935             <doc xml:whitespace="preserve">the #GdkEventGrabBroken event</doc>
82936             <type name="Gdk.Event" c:type="GdkEvent"/>
82937           </parameter>
82938         </parameters>
82939       </glib:signal>
82940       <glib:signal name="grab-focus">
82941         <return-value transfer-ownership="full">
82942           <type name="none" c:type="void"/>
82943         </return-value>
82944       </glib:signal>
82945       <glib:signal name="grab-notify">
82946         <doc xml:whitespace="preserve">The ::grab-notify signal is emitted when a widget becomes
82947 shadowed by a GTK+ grab (not a pointer or keyboard grab) on 
82948 another widget, or when it becomes unshadowed due to a grab 
82949 being removed.
82950 A widget is shadowed by a gtk_grab_add() when the topmost 
82951 grab widget in the grab stack of its window group is not 
82952 its ancestor.</doc>
82953         <return-value transfer-ownership="full">
82954           <type name="none" c:type="void"/>
82955         </return-value>
82956         <parameters>
82957           <parameter name="was_grabbed" transfer-ownership="none">
82958             <doc xml:whitespace="preserve">%FALSE if the widget becomes shadowed, %TRUE if it becomes unshadowed</doc>
82959             <type name="boolean" c:type="gboolean"/>
82960           </parameter>
82961         </parameters>
82962       </glib:signal>
82963       <glib:signal name="hide">
82964         <return-value transfer-ownership="full">
82965           <type name="none" c:type="void"/>
82966         </return-value>
82967       </glib:signal>
82968       <glib:signal name="hierarchy-changed">
82969         <doc xml:whitespace="preserve">The ::hierarchy-changed signal is emitted when the
82970 anchored state of a widget changes. A widget is
82971 &lt;firstterm&gt;anchored&lt;/firstterm&gt; when its toplevel
82972 ancestor is a #GtkWindow. This signal is emitted when
82973 a widget changes from un-anchored to anchored or vice-versa.</doc>
82974         <return-value transfer-ownership="full">
82975           <type name="none" c:type="void"/>
82976         </return-value>
82977         <parameters>
82978           <parameter name="previous_toplevel"
82979                      transfer-ownership="none"
82980                      allow-none="1">
82981             <doc xml:whitespace="preserve">the previous toplevel ancestor, or %NULL if the widget was previously unanchored</doc>
82982             <type name="Widget" c:type="GtkWidget"/>
82983           </parameter>
82984         </parameters>
82985       </glib:signal>
82986       <glib:signal name="key-press-event">
82987         <doc xml:whitespace="preserve">The ::key-press-event signal is emitted when a key is pressed.
82988 To receive this signal, the #GdkWindow associated to the widget needs
82989 to enable the #GDK_KEY_PRESS_MASK mask.
82990 This signal will be sent to the grab widget if there is one.
82991 %FALSE to propagate the event further.</doc>
82992         <return-value transfer-ownership="full">
82993           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
82994           <type name="boolean" c:type="gboolean"/>
82995         </return-value>
82996         <parameters>
82997           <parameter name="event" transfer-ownership="none">
82998             <doc xml:whitespace="preserve">the #GdkEventKey which triggered this signal</doc>
82999             <type name="Gdk.Event" c:type="GdkEvent"/>
83000           </parameter>
83001         </parameters>
83002       </glib:signal>
83003       <glib:signal name="key-release-event">
83004         <doc xml:whitespace="preserve">The ::key-release-event signal is emitted when a key is pressed.
83005 To receive this signal, the #GdkWindow associated to the widget needs
83006 to enable the #GDK_KEY_RELEASE_MASK mask.
83007 This signal will be sent to the grab widget if there is one.
83008 %FALSE to propagate the event further.</doc>
83009         <return-value transfer-ownership="full">
83010           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
83011           <type name="boolean" c:type="gboolean"/>
83012         </return-value>
83013         <parameters>
83014           <parameter name="event" transfer-ownership="none">
83015             <doc xml:whitespace="preserve">the #GdkEventKey which triggered this signal</doc>
83016             <type name="Gdk.Event" c:type="GdkEvent"/>
83017           </parameter>
83018         </parameters>
83019       </glib:signal>
83020       <glib:signal name="keynav-failed" version="2.12">
83021         <doc xml:whitespace="preserve">Gets emitted if keyboard navigation fails. 
83022 See gtk_widget_keynav_failed() for details.
83023 if the emitting widget should try to handle the keyboard
83024 navigation attempt in its parent container(s).</doc>
83025         <return-value transfer-ownership="full">
83026           <doc xml:whitespace="preserve">%TRUE if stopping keyboard navigation is fine, %FALSE</doc>
83027           <type name="boolean" c:type="gboolean"/>
83028         </return-value>
83029         <parameters>
83030           <parameter name="direction" transfer-ownership="none">
83031             <doc xml:whitespace="preserve">the direction of movement</doc>
83032             <type name="DirectionType" c:type="GtkDirectionType"/>
83033           </parameter>
83034         </parameters>
83035       </glib:signal>
83036       <glib:signal name="leave-notify-event">
83037         <doc xml:whitespace="preserve">The ::leave-notify-event will be emitted when the pointer leaves
83038 the @widget's window.
83039 To receive this signal, the #GdkWindow associated to the widget needs
83040 to enable the #GDK_LEAVE_NOTIFY_MASK mask.
83041 This signal will be sent to the grab widget if there is one.
83042 %FALSE to propagate the event further.</doc>
83043         <return-value transfer-ownership="full">
83044           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
83045           <type name="boolean" c:type="gboolean"/>
83046         </return-value>
83047         <parameters>
83048           <parameter name="event" transfer-ownership="none">
83049             <doc xml:whitespace="preserve">the #GdkEventCrossing which triggered this signal</doc>
83050             <type name="Gdk.Event" c:type="GdkEvent"/>
83051           </parameter>
83052         </parameters>
83053       </glib:signal>
83054       <glib:signal name="map">
83055         <return-value transfer-ownership="full">
83056           <type name="none" c:type="void"/>
83057         </return-value>
83058       </glib:signal>
83059       <glib:signal name="map-event">
83060         <return-value transfer-ownership="full">
83061           <type name="boolean" c:type="gboolean"/>
83062         </return-value>
83063         <parameters>
83064           <parameter name="object" transfer-ownership="none">
83065             <type name="Gdk.Event" c:type="GdkEvent"/>
83066           </parameter>
83067         </parameters>
83068       </glib:signal>
83069       <glib:signal name="mnemonic-activate">
83070         <return-value transfer-ownership="full">
83071           <type name="boolean" c:type="gboolean"/>
83072         </return-value>
83073         <parameters>
83074           <parameter name="object" transfer-ownership="none">
83075             <type name="boolean" c:type="gboolean"/>
83076           </parameter>
83077         </parameters>
83078       </glib:signal>
83079       <glib:signal name="motion-notify-event">
83080         <doc xml:whitespace="preserve">The ::motion-notify-event signal is emitted when the pointer moves 
83081 over the widget's #GdkWindow.
83082 To receive this signal, the #GdkWindow associated to the widget 
83083 needs to enable the #GDK_POINTER_MOTION_MASK mask.
83084 This signal will be sent to the grab widget if there is one.
83085 %FALSE to propagate the event further.</doc>
83086         <return-value transfer-ownership="full">
83087           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
83088           <type name="boolean" c:type="gboolean"/>
83089         </return-value>
83090         <parameters>
83091           <parameter name="event" transfer-ownership="none">
83092             <doc xml:whitespace="preserve">the #GdkEventMotion which triggered this signal</doc>
83093             <type name="Gdk.Event" c:type="GdkEvent"/>
83094           </parameter>
83095         </parameters>
83096       </glib:signal>
83097       <glib:signal name="move-focus">
83098         <return-value transfer-ownership="full">
83099           <type name="none" c:type="void"/>
83100         </return-value>
83101         <parameters>
83102           <parameter name="object" transfer-ownership="none">
83103             <type name="DirectionType" c:type="GtkDirectionType"/>
83104           </parameter>
83105         </parameters>
83106       </glib:signal>
83107       <glib:signal name="no-expose-event">
83108         <doc xml:whitespace="preserve">The ::no-expose-event will be emitted when the @widget's window is 
83109 drawn as a copy of another #GdkDrawable (with gdk_draw_drawable() or
83110 gdk_window_copy_area()) which was completely unobscured. If the source
83111 window was partially obscured #GdkEventExpose events will be generated
83112 for those areas.
83113 %FALSE to propagate the event further.</doc>
83114         <return-value transfer-ownership="full">
83115           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
83116           <type name="boolean" c:type="gboolean"/>
83117         </return-value>
83118         <parameters>
83119           <parameter name="event" transfer-ownership="none">
83120             <doc xml:whitespace="preserve">the #GdkEventNoExpose which triggered this signal</doc>
83121             <type name="Gdk.Event" c:type="GdkEvent"/>
83122           </parameter>
83123         </parameters>
83124       </glib:signal>
83125       <glib:signal name="parent-set">
83126         <doc xml:whitespace="preserve">The ::parent-set signal is emitted when a new parent 
83127 has been set on a widget.</doc>
83128         <return-value transfer-ownership="full">
83129           <type name="none" c:type="void"/>
83130         </return-value>
83131         <parameters>
83132           <parameter name="old_parent"
83133                      transfer-ownership="none"
83134                      allow-none="1">
83135             <doc xml:whitespace="preserve">the previous parent, or %NULL if the widget just got its initial parent.</doc>
83136             <type name="Widget" c:type="GtkWidget"/>
83137           </parameter>
83138         </parameters>
83139       </glib:signal>
83140       <glib:signal name="popup-menu">
83141         <return-value transfer-ownership="full">
83142           <type name="boolean" c:type="gboolean"/>
83143         </return-value>
83144       </glib:signal>
83145       <glib:signal name="property-notify-event">
83146         <return-value transfer-ownership="full">
83147           <type name="boolean" c:type="gboolean"/>
83148         </return-value>
83149         <parameters>
83150           <parameter name="object" transfer-ownership="none">
83151             <type name="Gdk.Event" c:type="GdkEvent"/>
83152           </parameter>
83153         </parameters>
83154       </glib:signal>
83155       <glib:signal name="proximity-in-event">
83156         <return-value transfer-ownership="full">
83157           <type name="boolean" c:type="gboolean"/>
83158         </return-value>
83159         <parameters>
83160           <parameter name="object" transfer-ownership="none">
83161             <type name="Gdk.Event" c:type="GdkEvent"/>
83162           </parameter>
83163         </parameters>
83164       </glib:signal>
83165       <glib:signal name="proximity-out-event">
83166         <return-value transfer-ownership="full">
83167           <type name="boolean" c:type="gboolean"/>
83168         </return-value>
83169         <parameters>
83170           <parameter name="object" transfer-ownership="none">
83171             <type name="Gdk.Event" c:type="GdkEvent"/>
83172           </parameter>
83173         </parameters>
83174       </glib:signal>
83175       <glib:signal name="query-tooltip" version="2.12">
83176         <doc xml:whitespace="preserve">Emitted when #GtkWidget:has-tooltip is %TRUE and the #GtkSettings:gtk-tooltip-timeout 
83177 has expired with the cursor hovering "above" @widget; or emitted when @widget got 
83178 focus in keyboard mode.
83179 Using the given coordinates, the signal handler should determine
83180 whether a tooltip should be shown for @widget. If this is the case
83181 %TRUE should be returned, %FALSE otherwise.  Note that if
83182 should not be used.
83183 The signal handler is free to manipulate @tooltip with the therefore
83184 destined function calls.</doc>
83185         <return-value transfer-ownership="full">
83186           <doc xml:whitespace="preserve">%TRUE if @tooltip should be shown right now, %FALSE otherwise.</doc>
83187           <type name="boolean" c:type="gboolean"/>
83188         </return-value>
83189         <parameters>
83190           <parameter name="x" transfer-ownership="none">
83191             <doc xml:whitespace="preserve">the x coordinate of the cursor position where the request has been emitted, relative to @widget-&gt;window</doc>
83192             <type name="int" c:type="gint"/>
83193           </parameter>
83194           <parameter name="y" transfer-ownership="none">
83195             <doc xml:whitespace="preserve">the y coordinate of the cursor position where the request has been emitted, relative to @widget-&gt;window</doc>
83196             <type name="int" c:type="gint"/>
83197           </parameter>
83198           <parameter name="keyboard_mode" transfer-ownership="none">
83199             <doc xml:whitespace="preserve">%TRUE if the tooltip was trigged using the keyboard</doc>
83200             <type name="boolean" c:type="gboolean"/>
83201           </parameter>
83202           <parameter name="tooltip" transfer-ownership="none">
83203             <doc xml:whitespace="preserve">a #GtkTooltip</doc>
83204             <type name="Tooltip" c:type="GtkTooltip"/>
83205           </parameter>
83206         </parameters>
83207       </glib:signal>
83208       <glib:signal name="realize">
83209         <return-value transfer-ownership="full">
83210           <type name="none" c:type="void"/>
83211         </return-value>
83212       </glib:signal>
83213       <glib:signal name="screen-changed">
83214         <doc xml:whitespace="preserve">The ::screen-changed signal gets emitted when the
83215 screen of a widget has changed.</doc>
83216         <return-value transfer-ownership="full">
83217           <type name="none" c:type="void"/>
83218         </return-value>
83219         <parameters>
83220           <parameter name="previous_screen"
83221                      transfer-ownership="none"
83222                      allow-none="1">
83223             <doc xml:whitespace="preserve">the previous screen, or %NULL if the widget was not associated with a screen before</doc>
83224             <type name="Gdk.Screen" c:type="GdkScreen"/>
83225           </parameter>
83226         </parameters>
83227       </glib:signal>
83228       <glib:signal name="scroll-event">
83229         <doc xml:whitespace="preserve">The ::scroll-event signal is emitted when a button in the 4 to 7
83230 range is pressed. Wheel mice are usually configured to generate 
83231 button press events for buttons 4 and 5 when the wheel is turned.
83232 To receive this signal, the #GdkWindow associated to the widget needs
83233 to enable the #GDK_BUTTON_PRESS_MASK mask.
83234 This signal will be sent to the grab widget if there is one.
83235 %FALSE to propagate the event further.</doc>
83236         <return-value transfer-ownership="full">
83237           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
83238           <type name="boolean" c:type="gboolean"/>
83239         </return-value>
83240         <parameters>
83241           <parameter name="event" transfer-ownership="none">
83242             <doc xml:whitespace="preserve">the #GdkEventScroll which triggered this signal</doc>
83243             <type name="Gdk.Event" c:type="GdkEvent"/>
83244           </parameter>
83245         </parameters>
83246       </glib:signal>
83247       <glib:signal name="selection-clear-event">
83248         <return-value transfer-ownership="full">
83249           <type name="boolean" c:type="gboolean"/>
83250         </return-value>
83251         <parameters>
83252           <parameter name="object" transfer-ownership="none">
83253             <type name="Gdk.Event" c:type="GdkEvent"/>
83254           </parameter>
83255         </parameters>
83256       </glib:signal>
83257       <glib:signal name="selection-get">
83258         <return-value transfer-ownership="full">
83259           <type name="none" c:type="void"/>
83260         </return-value>
83261         <parameters>
83262           <parameter name="object" transfer-ownership="none">
83263             <type name="SelectionData" c:type="GtkSelectionData"/>
83264           </parameter>
83265           <parameter name="p0" transfer-ownership="none">
83266             <type name="uint" c:type="guint"/>
83267           </parameter>
83268           <parameter name="p1" transfer-ownership="none">
83269             <type name="uint" c:type="guint"/>
83270           </parameter>
83271         </parameters>
83272       </glib:signal>
83273       <glib:signal name="selection-notify-event">
83274         <return-value transfer-ownership="full">
83275           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.</doc>
83276           <type name="boolean" c:type="gboolean"/>
83277         </return-value>
83278         <parameters>
83279           <parameter name="returns" transfer-ownership="none">
83280             <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.</doc>
83281             <type name="Gdk.Event" c:type="GdkEvent"/>
83282           </parameter>
83283         </parameters>
83284       </glib:signal>
83285       <glib:signal name="selection-received">
83286         <return-value transfer-ownership="full">
83287           <type name="none" c:type="void"/>
83288         </return-value>
83289         <parameters>
83290           <parameter name="object" transfer-ownership="none">
83291             <type name="SelectionData" c:type="GtkSelectionData"/>
83292           </parameter>
83293           <parameter name="p0" transfer-ownership="none">
83294             <type name="uint" c:type="guint"/>
83295           </parameter>
83296         </parameters>
83297       </glib:signal>
83298       <glib:signal name="selection-request-event">
83299         <return-value transfer-ownership="full">
83300           <type name="boolean" c:type="gboolean"/>
83301         </return-value>
83302         <parameters>
83303           <parameter name="object" transfer-ownership="none">
83304             <type name="Gdk.Event" c:type="GdkEvent"/>
83305           </parameter>
83306         </parameters>
83307       </glib:signal>
83308       <glib:signal name="show">
83309         <return-value transfer-ownership="full">
83310           <type name="none" c:type="void"/>
83311         </return-value>
83312       </glib:signal>
83313       <glib:signal name="show-help">
83314         <return-value transfer-ownership="full">
83315           <type name="boolean" c:type="gboolean"/>
83316         </return-value>
83317         <parameters>
83318           <parameter name="object" transfer-ownership="none">
83319             <type name="WidgetHelpType" c:type="GtkWidgetHelpType"/>
83320           </parameter>
83321         </parameters>
83322       </glib:signal>
83323       <glib:signal name="size-allocate">
83324         <return-value transfer-ownership="full">
83325           <type name="none" c:type="void"/>
83326         </return-value>
83327         <parameters>
83328           <parameter name="object" transfer-ownership="none">
83329             <type name="Gdk.Rectangle" c:type="GdkRectangle"/>
83330           </parameter>
83331         </parameters>
83332       </glib:signal>
83333       <glib:signal name="size-request">
83334         <return-value transfer-ownership="full">
83335           <type name="none" c:type="void"/>
83336         </return-value>
83337         <parameters>
83338           <parameter name="object" transfer-ownership="none">
83339             <type name="Requisition" c:type="GtkRequisition"/>
83340           </parameter>
83341         </parameters>
83342       </glib:signal>
83343       <glib:signal name="state-changed">
83344         <doc xml:whitespace="preserve">The ::state-changed signal is emitted when the widget state changes.
83345 See gtk_widget_get_state().</doc>
83346         <return-value transfer-ownership="full">
83347           <type name="none" c:type="void"/>
83348         </return-value>
83349         <parameters>
83350           <parameter name="state" transfer-ownership="none">
83351             <doc xml:whitespace="preserve">the previous state</doc>
83352             <type name="StateType" c:type="GtkStateType"/>
83353           </parameter>
83354         </parameters>
83355       </glib:signal>
83356       <glib:signal name="style-set">
83357         <doc xml:whitespace="preserve">The ::style-set signal is emitted when a new style has been set 
83358 on a widget. Note that style-modifying functions like 
83359 gtk_widget_modify_base() also cause this signal to be emitted.</doc>
83360         <return-value transfer-ownership="full">
83361           <type name="none" c:type="void"/>
83362         </return-value>
83363         <parameters>
83364           <parameter name="previous_style"
83365                      transfer-ownership="none"
83366                      allow-none="1">
83367             <doc xml:whitespace="preserve">the previous style, or %NULL if the widget just got its initial style</doc>
83368             <type name="Style" c:type="GtkStyle"/>
83369           </parameter>
83370         </parameters>
83371       </glib:signal>
83372       <glib:signal name="unmap">
83373         <return-value transfer-ownership="full">
83374           <type name="none" c:type="void"/>
83375         </return-value>
83376       </glib:signal>
83377       <glib:signal name="unmap-event">
83378         <return-value transfer-ownership="full">
83379           <type name="boolean" c:type="gboolean"/>
83380         </return-value>
83381         <parameters>
83382           <parameter name="object" transfer-ownership="none">
83383             <type name="Gdk.Event" c:type="GdkEvent"/>
83384           </parameter>
83385         </parameters>
83386       </glib:signal>
83387       <glib:signal name="unrealize">
83388         <return-value transfer-ownership="full">
83389           <type name="none" c:type="void"/>
83390         </return-value>
83391       </glib:signal>
83392       <glib:signal name="visibility-notify-event">
83393         <doc xml:whitespace="preserve">The ::visibility-notify-event will be emitted when the @widget's window
83394 is obscured or unobscured.
83395 To receive this signal the #GdkWindow associated to the widget needs
83396 to enable the #GDK_VISIBILITY_NOTIFY_MASK mask.
83397 %FALSE to propagate the event further.</doc>
83398         <return-value transfer-ownership="full">
83399           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the event.</doc>
83400           <type name="boolean" c:type="gboolean"/>
83401         </return-value>
83402         <parameters>
83403           <parameter name="event" transfer-ownership="none">
83404             <doc xml:whitespace="preserve">the #GdkEventVisibility which triggered this signal</doc>
83405             <type name="Gdk.Event" c:type="GdkEvent"/>
83406           </parameter>
83407         </parameters>
83408       </glib:signal>
83409       <glib:signal name="window-state-event">
83410         <doc xml:whitespace="preserve">The ::window-state-event will be emitted when the state of the 
83411 toplevel window associated to the @widget changes.
83412 To receive this signal the #GdkWindow associated to the widget 
83413 needs to enable the #GDK_STRUCTURE_MASK mask. GDK will enable 
83414 this mask automatically for all new windows.
83415 event. %FALSE to propagate the event further.</doc>
83416         <return-value transfer-ownership="full">
83417           <doc xml:whitespace="preserve">%TRUE to stop other handlers from being invoked for the</doc>
83418           <type name="boolean" c:type="gboolean"/>
83419         </return-value>
83420         <parameters>
83421           <parameter name="event" transfer-ownership="none">
83422             <doc xml:whitespace="preserve">the #GdkEventWindowState which triggered this signal</doc>
83423             <type name="Gdk.Event" c:type="GdkEvent"/>
83424           </parameter>
83425         </parameters>
83426       </glib:signal>
83427     </class>
83428     <record name="WidgetAuxInfo" c:type="GtkWidgetAuxInfo">
83429       <field name="x" writable="1">
83430         <type name="int" c:type="gint"/>
83431       </field>
83432       <field name="y" writable="1">
83433         <type name="int" c:type="gint"/>
83434       </field>
83435       <field name="width" writable="1">
83436         <type name="int" c:type="gint"/>
83437       </field>
83438       <field name="height" writable="1">
83439         <type name="int" c:type="gint"/>
83440       </field>
83441       <field name="x_set" writable="1" bits="1">
83442         <type name="uint" c:type="guint"/>
83443       </field>
83444       <field name="y_set" writable="1" bits="1">
83445         <type name="uint" c:type="guint"/>
83446       </field>
83447     </record>
83448     <record name="WidgetClass"
83449             c:type="GtkWidgetClass"
83450             glib:is-gtype-struct-for="Widget">
83451       <doc xml:whitespace="preserve">&lt;structfield&gt;activate_signal&lt;/structfield&gt;
83452 The signal to emit when a widget of this class is activated,
83453 gtk_widget_activate() handles the emission. Implementation of this
83454 signal is optional.
83455 &lt;structfield&gt;set_scroll_adjustment_signal&lt;/structfield&gt;
83456 This signal is emitted  when a widget of this class is added
83457 to a scrolling aware parent, gtk_widget_set_scroll_adjustments()
83458 handles the emission.
83459 Implementation of this signal is optional.</doc>
83460       <field name="parent_class">
83461         <type name="ObjectClass" c:type="GtkObjectClass"/>
83462       </field>
83463       <field name="activate_signal">
83464         <type name="uint" c:type="guint"/>
83465       </field>
83466       <field name="set_scroll_adjustments_signal">
83467         <type name="uint" c:type="guint"/>
83468       </field>
83469       <field name="dispatch_child_properties_changed">
83470         <callback name="dispatch_child_properties_changed"
83471                   c:type="dispatch_child_properties_changed">
83472           <return-value transfer-ownership="none">
83473             <type name="none" c:type="void"/>
83474           </return-value>
83475           <parameters>
83476             <parameter name="widget" transfer-ownership="none">
83477               <type name="Widget" c:type="GtkWidget*"/>
83478             </parameter>
83479             <parameter name="n_pspecs" transfer-ownership="none">
83480               <type name="uint" c:type="guint"/>
83481             </parameter>
83482             <parameter name="pspecs" transfer-ownership="none">
83483               <type name="GObject.ParamSpec" c:type="GParamSpec**"/>
83484             </parameter>
83485           </parameters>
83486         </callback>
83487       </field>
83488       <field name="show">
83489         <callback name="show" c:type="show">
83490           <return-value transfer-ownership="none">
83491             <type name="none" c:type="void"/>
83492           </return-value>
83493           <parameters>
83494             <parameter name="widget" transfer-ownership="none">
83495               <type name="Widget" c:type="GtkWidget*"/>
83496             </parameter>
83497           </parameters>
83498         </callback>
83499       </field>
83500       <field name="show_all">
83501         <callback name="show_all" c:type="show_all">
83502           <return-value transfer-ownership="none">
83503             <type name="none" c:type="void"/>
83504           </return-value>
83505           <parameters>
83506             <parameter name="widget" transfer-ownership="none">
83507               <type name="Widget" c:type="GtkWidget*"/>
83508             </parameter>
83509           </parameters>
83510         </callback>
83511       </field>
83512       <field name="hide">
83513         <callback name="hide" c:type="hide">
83514           <return-value transfer-ownership="none">
83515             <type name="none" c:type="void"/>
83516           </return-value>
83517           <parameters>
83518             <parameter name="widget" transfer-ownership="none">
83519               <type name="Widget" c:type="GtkWidget*"/>
83520             </parameter>
83521           </parameters>
83522         </callback>
83523       </field>
83524       <field name="hide_all">
83525         <callback name="hide_all" c:type="hide_all">
83526           <return-value transfer-ownership="none">
83527             <type name="none" c:type="void"/>
83528           </return-value>
83529           <parameters>
83530             <parameter name="widget" transfer-ownership="none">
83531               <type name="Widget" c:type="GtkWidget*"/>
83532             </parameter>
83533           </parameters>
83534         </callback>
83535       </field>
83536       <field name="map">
83537         <callback name="map" c:type="map">
83538           <return-value transfer-ownership="none">
83539             <type name="none" c:type="void"/>
83540           </return-value>
83541           <parameters>
83542             <parameter name="widget" transfer-ownership="none">
83543               <type name="Widget" c:type="GtkWidget*"/>
83544             </parameter>
83545           </parameters>
83546         </callback>
83547       </field>
83548       <field name="unmap">
83549         <callback name="unmap" c:type="unmap">
83550           <return-value transfer-ownership="none">
83551             <type name="none" c:type="void"/>
83552           </return-value>
83553           <parameters>
83554             <parameter name="widget" transfer-ownership="none">
83555               <type name="Widget" c:type="GtkWidget*"/>
83556             </parameter>
83557           </parameters>
83558         </callback>
83559       </field>
83560       <field name="realize">
83561         <callback name="realize" c:type="realize">
83562           <return-value transfer-ownership="none">
83563             <type name="none" c:type="void"/>
83564           </return-value>
83565           <parameters>
83566             <parameter name="widget" transfer-ownership="none">
83567               <type name="Widget" c:type="GtkWidget*"/>
83568             </parameter>
83569           </parameters>
83570         </callback>
83571       </field>
83572       <field name="unrealize">
83573         <callback name="unrealize" c:type="unrealize">
83574           <return-value transfer-ownership="none">
83575             <type name="none" c:type="void"/>
83576           </return-value>
83577           <parameters>
83578             <parameter name="widget" transfer-ownership="none">
83579               <type name="Widget" c:type="GtkWidget*"/>
83580             </parameter>
83581           </parameters>
83582         </callback>
83583       </field>
83584       <field name="size_request">
83585         <callback name="size_request" c:type="size_request">
83586           <return-value transfer-ownership="none">
83587             <type name="none" c:type="void"/>
83588           </return-value>
83589           <parameters>
83590             <parameter name="widget" transfer-ownership="none">
83591               <type name="Widget" c:type="GtkWidget*"/>
83592             </parameter>
83593             <parameter name="requisition" transfer-ownership="none">
83594               <type name="Requisition" c:type="GtkRequisition*"/>
83595             </parameter>
83596           </parameters>
83597         </callback>
83598       </field>
83599       <field name="size_allocate">
83600         <callback name="size_allocate" c:type="size_allocate">
83601           <return-value transfer-ownership="none">
83602             <type name="none" c:type="void"/>
83603           </return-value>
83604           <parameters>
83605             <parameter name="widget" transfer-ownership="none">
83606               <type name="Widget" c:type="GtkWidget*"/>
83607             </parameter>
83608             <parameter name="allocation" transfer-ownership="none">
83609               <type name="Allocation" c:type="GtkAllocation*"/>
83610             </parameter>
83611           </parameters>
83612         </callback>
83613       </field>
83614       <field name="state_changed">
83615         <callback name="state_changed" c:type="state_changed">
83616           <return-value transfer-ownership="none">
83617             <type name="none" c:type="void"/>
83618           </return-value>
83619           <parameters>
83620             <parameter name="widget" transfer-ownership="none">
83621               <type name="Widget" c:type="GtkWidget*"/>
83622             </parameter>
83623             <parameter name="previous_state" transfer-ownership="none">
83624               <type name="StateType" c:type="GtkStateType"/>
83625             </parameter>
83626           </parameters>
83627         </callback>
83628       </field>
83629       <field name="parent_set">
83630         <callback name="parent_set" c:type="parent_set">
83631           <return-value transfer-ownership="none">
83632             <type name="none" c:type="void"/>
83633           </return-value>
83634           <parameters>
83635             <parameter name="widget" transfer-ownership="none">
83636               <type name="Widget" c:type="GtkWidget*"/>
83637             </parameter>
83638             <parameter name="previous_parent" transfer-ownership="none">
83639               <type name="Widget" c:type="GtkWidget*"/>
83640             </parameter>
83641           </parameters>
83642         </callback>
83643       </field>
83644       <field name="hierarchy_changed">
83645         <callback name="hierarchy_changed" c:type="hierarchy_changed">
83646           <return-value transfer-ownership="none">
83647             <type name="none" c:type="void"/>
83648           </return-value>
83649           <parameters>
83650             <parameter name="widget" transfer-ownership="none">
83651               <type name="Widget" c:type="GtkWidget*"/>
83652             </parameter>
83653             <parameter name="previous_toplevel" transfer-ownership="none">
83654               <type name="Widget" c:type="GtkWidget*"/>
83655             </parameter>
83656           </parameters>
83657         </callback>
83658       </field>
83659       <field name="style_set">
83660         <callback name="style_set" c:type="style_set">
83661           <return-value transfer-ownership="none">
83662             <type name="none" c:type="void"/>
83663           </return-value>
83664           <parameters>
83665             <parameter name="widget" transfer-ownership="none">
83666               <type name="Widget" c:type="GtkWidget*"/>
83667             </parameter>
83668             <parameter name="previous_style" transfer-ownership="none">
83669               <type name="Style" c:type="GtkStyle*"/>
83670             </parameter>
83671           </parameters>
83672         </callback>
83673       </field>
83674       <field name="direction_changed">
83675         <callback name="direction_changed" c:type="direction_changed">
83676           <return-value transfer-ownership="none">
83677             <type name="none" c:type="void"/>
83678           </return-value>
83679           <parameters>
83680             <parameter name="widget" transfer-ownership="none">
83681               <type name="Widget" c:type="GtkWidget*"/>
83682             </parameter>
83683             <parameter name="previous_direction" transfer-ownership="none">
83684               <type name="TextDirection" c:type="GtkTextDirection"/>
83685             </parameter>
83686           </parameters>
83687         </callback>
83688       </field>
83689       <field name="grab_notify">
83690         <callback name="grab_notify" c:type="grab_notify">
83691           <return-value transfer-ownership="none">
83692             <type name="none" c:type="void"/>
83693           </return-value>
83694           <parameters>
83695             <parameter name="widget" transfer-ownership="none">
83696               <type name="Widget" c:type="GtkWidget*"/>
83697             </parameter>
83698             <parameter name="was_grabbed" transfer-ownership="none">
83699               <type name="boolean" c:type="gboolean"/>
83700             </parameter>
83701           </parameters>
83702         </callback>
83703       </field>
83704       <field name="child_notify">
83705         <callback name="child_notify" c:type="child_notify">
83706           <return-value transfer-ownership="none">
83707             <type name="none" c:type="void"/>
83708           </return-value>
83709           <parameters>
83710             <parameter name="widget" transfer-ownership="none">
83711               <type name="Widget" c:type="GtkWidget*"/>
83712             </parameter>
83713             <parameter name="pspec" transfer-ownership="none">
83714               <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
83715             </parameter>
83716           </parameters>
83717         </callback>
83718       </field>
83719       <field name="mnemonic_activate">
83720         <callback name="mnemonic_activate" c:type="mnemonic_activate">
83721           <return-value transfer-ownership="none">
83722             <type name="boolean" c:type="gboolean"/>
83723           </return-value>
83724           <parameters>
83725             <parameter name="widget" transfer-ownership="none">
83726               <type name="Widget" c:type="GtkWidget*"/>
83727             </parameter>
83728             <parameter name="group_cycling" transfer-ownership="none">
83729               <type name="boolean" c:type="gboolean"/>
83730             </parameter>
83731           </parameters>
83732         </callback>
83733       </field>
83734       <field name="grab_focus">
83735         <callback name="grab_focus" c:type="grab_focus">
83736           <return-value transfer-ownership="none">
83737             <type name="none" c:type="void"/>
83738           </return-value>
83739           <parameters>
83740             <parameter name="widget" transfer-ownership="none">
83741               <type name="Widget" c:type="GtkWidget*"/>
83742             </parameter>
83743           </parameters>
83744         </callback>
83745       </field>
83746       <field name="focus">
83747         <callback name="focus" c:type="focus">
83748           <return-value transfer-ownership="none">
83749             <type name="boolean" c:type="gboolean"/>
83750           </return-value>
83751           <parameters>
83752             <parameter name="widget" transfer-ownership="none">
83753               <type name="Widget" c:type="GtkWidget*"/>
83754             </parameter>
83755             <parameter name="direction" transfer-ownership="none">
83756               <type name="DirectionType" c:type="GtkDirectionType"/>
83757             </parameter>
83758           </parameters>
83759         </callback>
83760       </field>
83761       <field name="event">
83762         <callback name="event" c:type="event">
83763           <return-value transfer-ownership="none">
83764             <type name="boolean" c:type="gboolean"/>
83765           </return-value>
83766           <parameters>
83767             <parameter name="widget" transfer-ownership="none">
83768               <type name="Widget" c:type="GtkWidget*"/>
83769             </parameter>
83770             <parameter name="event" transfer-ownership="none">
83771               <type name="Gdk.Event" c:type="GdkEvent*"/>
83772             </parameter>
83773           </parameters>
83774         </callback>
83775       </field>
83776       <field name="button_press_event">
83777         <callback name="button_press_event" c:type="button_press_event">
83778           <return-value transfer-ownership="none">
83779             <type name="boolean" c:type="gboolean"/>
83780           </return-value>
83781           <parameters>
83782             <parameter name="widget" transfer-ownership="none">
83783               <type name="Widget" c:type="GtkWidget*"/>
83784             </parameter>
83785             <parameter name="event" transfer-ownership="none">
83786               <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
83787             </parameter>
83788           </parameters>
83789         </callback>
83790       </field>
83791       <field name="button_release_event">
83792         <callback name="button_release_event" c:type="button_release_event">
83793           <return-value transfer-ownership="none">
83794             <type name="boolean" c:type="gboolean"/>
83795           </return-value>
83796           <parameters>
83797             <parameter name="widget" transfer-ownership="none">
83798               <type name="Widget" c:type="GtkWidget*"/>
83799             </parameter>
83800             <parameter name="event" transfer-ownership="none">
83801               <type name="Gdk.EventButton" c:type="GdkEventButton*"/>
83802             </parameter>
83803           </parameters>
83804         </callback>
83805       </field>
83806       <field name="scroll_event">
83807         <callback name="scroll_event" c:type="scroll_event">
83808           <return-value transfer-ownership="none">
83809             <type name="boolean" c:type="gboolean"/>
83810           </return-value>
83811           <parameters>
83812             <parameter name="widget" transfer-ownership="none">
83813               <type name="Widget" c:type="GtkWidget*"/>
83814             </parameter>
83815             <parameter name="event" transfer-ownership="none">
83816               <type name="Gdk.EventScroll" c:type="GdkEventScroll*"/>
83817             </parameter>
83818           </parameters>
83819         </callback>
83820       </field>
83821       <field name="motion_notify_event">
83822         <callback name="motion_notify_event" c:type="motion_notify_event">
83823           <return-value transfer-ownership="none">
83824             <type name="boolean" c:type="gboolean"/>
83825           </return-value>
83826           <parameters>
83827             <parameter name="widget" transfer-ownership="none">
83828               <type name="Widget" c:type="GtkWidget*"/>
83829             </parameter>
83830             <parameter name="event" transfer-ownership="none">
83831               <type name="Gdk.EventMotion" c:type="GdkEventMotion*"/>
83832             </parameter>
83833           </parameters>
83834         </callback>
83835       </field>
83836       <field name="delete_event">
83837         <callback name="delete_event" c:type="delete_event">
83838           <return-value transfer-ownership="none">
83839             <type name="boolean" c:type="gboolean"/>
83840           </return-value>
83841           <parameters>
83842             <parameter name="widget" transfer-ownership="none">
83843               <type name="Widget" c:type="GtkWidget*"/>
83844             </parameter>
83845             <parameter name="event" transfer-ownership="none">
83846               <type name="Gdk.EventAny" c:type="GdkEventAny*"/>
83847             </parameter>
83848           </parameters>
83849         </callback>
83850       </field>
83851       <field name="destroy_event">
83852         <callback name="destroy_event" c:type="destroy_event">
83853           <return-value transfer-ownership="none">
83854             <type name="boolean" c:type="gboolean"/>
83855           </return-value>
83856           <parameters>
83857             <parameter name="widget" transfer-ownership="none">
83858               <type name="Widget" c:type="GtkWidget*"/>
83859             </parameter>
83860             <parameter name="event" transfer-ownership="none">
83861               <type name="Gdk.EventAny" c:type="GdkEventAny*"/>
83862             </parameter>
83863           </parameters>
83864         </callback>
83865       </field>
83866       <field name="expose_event">
83867         <callback name="expose_event" c:type="expose_event">
83868           <return-value transfer-ownership="none">
83869             <type name="boolean" c:type="gboolean"/>
83870           </return-value>
83871           <parameters>
83872             <parameter name="widget" transfer-ownership="none">
83873               <type name="Widget" c:type="GtkWidget*"/>
83874             </parameter>
83875             <parameter name="event" transfer-ownership="none">
83876               <type name="Gdk.EventExpose" c:type="GdkEventExpose*"/>
83877             </parameter>
83878           </parameters>
83879         </callback>
83880       </field>
83881       <field name="key_press_event">
83882         <callback name="key_press_event" c:type="key_press_event">
83883           <return-value transfer-ownership="none">
83884             <type name="boolean" c:type="gboolean"/>
83885           </return-value>
83886           <parameters>
83887             <parameter name="widget" transfer-ownership="none">
83888               <type name="Widget" c:type="GtkWidget*"/>
83889             </parameter>
83890             <parameter name="event" transfer-ownership="none">
83891               <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
83892             </parameter>
83893           </parameters>
83894         </callback>
83895       </field>
83896       <field name="key_release_event">
83897         <callback name="key_release_event" c:type="key_release_event">
83898           <return-value transfer-ownership="none">
83899             <type name="boolean" c:type="gboolean"/>
83900           </return-value>
83901           <parameters>
83902             <parameter name="widget" transfer-ownership="none">
83903               <type name="Widget" c:type="GtkWidget*"/>
83904             </parameter>
83905             <parameter name="event" transfer-ownership="none">
83906               <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
83907             </parameter>
83908           </parameters>
83909         </callback>
83910       </field>
83911       <field name="enter_notify_event">
83912         <callback name="enter_notify_event" c:type="enter_notify_event">
83913           <return-value transfer-ownership="none">
83914             <type name="boolean" c:type="gboolean"/>
83915           </return-value>
83916           <parameters>
83917             <parameter name="widget" transfer-ownership="none">
83918               <type name="Widget" c:type="GtkWidget*"/>
83919             </parameter>
83920             <parameter name="event" transfer-ownership="none">
83921               <type name="Gdk.EventCrossing" c:type="GdkEventCrossing*"/>
83922             </parameter>
83923           </parameters>
83924         </callback>
83925       </field>
83926       <field name="leave_notify_event">
83927         <callback name="leave_notify_event" c:type="leave_notify_event">
83928           <return-value transfer-ownership="none">
83929             <type name="boolean" c:type="gboolean"/>
83930           </return-value>
83931           <parameters>
83932             <parameter name="widget" transfer-ownership="none">
83933               <type name="Widget" c:type="GtkWidget*"/>
83934             </parameter>
83935             <parameter name="event" transfer-ownership="none">
83936               <type name="Gdk.EventCrossing" c:type="GdkEventCrossing*"/>
83937             </parameter>
83938           </parameters>
83939         </callback>
83940       </field>
83941       <field name="configure_event">
83942         <callback name="configure_event" c:type="configure_event">
83943           <return-value transfer-ownership="none">
83944             <type name="boolean" c:type="gboolean"/>
83945           </return-value>
83946           <parameters>
83947             <parameter name="widget" transfer-ownership="none">
83948               <type name="Widget" c:type="GtkWidget*"/>
83949             </parameter>
83950             <parameter name="event" transfer-ownership="none">
83951               <type name="Gdk.EventConfigure" c:type="GdkEventConfigure*"/>
83952             </parameter>
83953           </parameters>
83954         </callback>
83955       </field>
83956       <field name="focus_in_event">
83957         <callback name="focus_in_event" c:type="focus_in_event">
83958           <return-value transfer-ownership="none">
83959             <type name="boolean" c:type="gboolean"/>
83960           </return-value>
83961           <parameters>
83962             <parameter name="widget" transfer-ownership="none">
83963               <type name="Widget" c:type="GtkWidget*"/>
83964             </parameter>
83965             <parameter name="event" transfer-ownership="none">
83966               <type name="Gdk.EventFocus" c:type="GdkEventFocus*"/>
83967             </parameter>
83968           </parameters>
83969         </callback>
83970       </field>
83971       <field name="focus_out_event">
83972         <callback name="focus_out_event" c:type="focus_out_event">
83973           <return-value transfer-ownership="none">
83974             <type name="boolean" c:type="gboolean"/>
83975           </return-value>
83976           <parameters>
83977             <parameter name="widget" transfer-ownership="none">
83978               <type name="Widget" c:type="GtkWidget*"/>
83979             </parameter>
83980             <parameter name="event" transfer-ownership="none">
83981               <type name="Gdk.EventFocus" c:type="GdkEventFocus*"/>
83982             </parameter>
83983           </parameters>
83984         </callback>
83985       </field>
83986       <field name="map_event">
83987         <callback name="map_event" c:type="map_event">
83988           <return-value transfer-ownership="none">
83989             <type name="boolean" c:type="gboolean"/>
83990           </return-value>
83991           <parameters>
83992             <parameter name="widget" transfer-ownership="none">
83993               <type name="Widget" c:type="GtkWidget*"/>
83994             </parameter>
83995             <parameter name="event" transfer-ownership="none">
83996               <type name="Gdk.EventAny" c:type="GdkEventAny*"/>
83997             </parameter>
83998           </parameters>
83999         </callback>
84000       </field>
84001       <field name="unmap_event">
84002         <callback name="unmap_event" c:type="unmap_event">
84003           <return-value transfer-ownership="none">
84004             <type name="boolean" c:type="gboolean"/>
84005           </return-value>
84006           <parameters>
84007             <parameter name="widget" transfer-ownership="none">
84008               <type name="Widget" c:type="GtkWidget*"/>
84009             </parameter>
84010             <parameter name="event" transfer-ownership="none">
84011               <type name="Gdk.EventAny" c:type="GdkEventAny*"/>
84012             </parameter>
84013           </parameters>
84014         </callback>
84015       </field>
84016       <field name="property_notify_event">
84017         <callback name="property_notify_event" c:type="property_notify_event">
84018           <return-value transfer-ownership="none">
84019             <type name="boolean" c:type="gboolean"/>
84020           </return-value>
84021           <parameters>
84022             <parameter name="widget" transfer-ownership="none">
84023               <type name="Widget" c:type="GtkWidget*"/>
84024             </parameter>
84025             <parameter name="event" transfer-ownership="none">
84026               <type name="Gdk.EventProperty" c:type="GdkEventProperty*"/>
84027             </parameter>
84028           </parameters>
84029         </callback>
84030       </field>
84031       <field name="selection_clear_event">
84032         <callback name="selection_clear_event" c:type="selection_clear_event">
84033           <return-value transfer-ownership="none">
84034             <type name="boolean" c:type="gboolean"/>
84035           </return-value>
84036           <parameters>
84037             <parameter name="widget" transfer-ownership="none">
84038               <type name="Widget" c:type="GtkWidget*"/>
84039             </parameter>
84040             <parameter name="event" transfer-ownership="none">
84041               <type name="Gdk.EventSelection" c:type="GdkEventSelection*"/>
84042             </parameter>
84043           </parameters>
84044         </callback>
84045       </field>
84046       <field name="selection_request_event">
84047         <callback name="selection_request_event"
84048                   c:type="selection_request_event">
84049           <return-value transfer-ownership="none">
84050             <type name="boolean" c:type="gboolean"/>
84051           </return-value>
84052           <parameters>
84053             <parameter name="widget" transfer-ownership="none">
84054               <type name="Widget" c:type="GtkWidget*"/>
84055             </parameter>
84056             <parameter name="event" transfer-ownership="none">
84057               <type name="Gdk.EventSelection" c:type="GdkEventSelection*"/>
84058             </parameter>
84059           </parameters>
84060         </callback>
84061       </field>
84062       <field name="selection_notify_event">
84063         <callback name="selection_notify_event"
84064                   c:type="selection_notify_event">
84065           <return-value transfer-ownership="none">
84066             <type name="boolean" c:type="gboolean"/>
84067           </return-value>
84068           <parameters>
84069             <parameter name="widget" transfer-ownership="none">
84070               <type name="Widget" c:type="GtkWidget*"/>
84071             </parameter>
84072             <parameter name="event" transfer-ownership="none">
84073               <type name="Gdk.EventSelection" c:type="GdkEventSelection*"/>
84074             </parameter>
84075           </parameters>
84076         </callback>
84077       </field>
84078       <field name="proximity_in_event">
84079         <callback name="proximity_in_event" c:type="proximity_in_event">
84080           <return-value transfer-ownership="none">
84081             <type name="boolean" c:type="gboolean"/>
84082           </return-value>
84083           <parameters>
84084             <parameter name="widget" transfer-ownership="none">
84085               <type name="Widget" c:type="GtkWidget*"/>
84086             </parameter>
84087             <parameter name="event" transfer-ownership="none">
84088               <type name="Gdk.EventProximity" c:type="GdkEventProximity*"/>
84089             </parameter>
84090           </parameters>
84091         </callback>
84092       </field>
84093       <field name="proximity_out_event">
84094         <callback name="proximity_out_event" c:type="proximity_out_event">
84095           <return-value transfer-ownership="none">
84096             <type name="boolean" c:type="gboolean"/>
84097           </return-value>
84098           <parameters>
84099             <parameter name="widget" transfer-ownership="none">
84100               <type name="Widget" c:type="GtkWidget*"/>
84101             </parameter>
84102             <parameter name="event" transfer-ownership="none">
84103               <type name="Gdk.EventProximity" c:type="GdkEventProximity*"/>
84104             </parameter>
84105           </parameters>
84106         </callback>
84107       </field>
84108       <field name="visibility_notify_event">
84109         <callback name="visibility_notify_event"
84110                   c:type="visibility_notify_event">
84111           <return-value transfer-ownership="none">
84112             <type name="boolean" c:type="gboolean"/>
84113           </return-value>
84114           <parameters>
84115             <parameter name="widget" transfer-ownership="none">
84116               <type name="Widget" c:type="GtkWidget*"/>
84117             </parameter>
84118             <parameter name="event" transfer-ownership="none">
84119               <type name="Gdk.EventVisibility" c:type="GdkEventVisibility*"/>
84120             </parameter>
84121           </parameters>
84122         </callback>
84123       </field>
84124       <field name="client_event">
84125         <callback name="client_event" c:type="client_event">
84126           <return-value transfer-ownership="none">
84127             <type name="boolean" c:type="gboolean"/>
84128           </return-value>
84129           <parameters>
84130             <parameter name="widget" transfer-ownership="none">
84131               <type name="Widget" c:type="GtkWidget*"/>
84132             </parameter>
84133             <parameter name="event" transfer-ownership="none">
84134               <type name="Gdk.EventClient" c:type="GdkEventClient*"/>
84135             </parameter>
84136           </parameters>
84137         </callback>
84138       </field>
84139       <field name="no_expose_event">
84140         <callback name="no_expose_event" c:type="no_expose_event">
84141           <return-value transfer-ownership="none">
84142             <type name="boolean" c:type="gboolean"/>
84143           </return-value>
84144           <parameters>
84145             <parameter name="widget" transfer-ownership="none">
84146               <type name="Widget" c:type="GtkWidget*"/>
84147             </parameter>
84148             <parameter name="event" transfer-ownership="none">
84149               <type name="Gdk.EventAny" c:type="GdkEventAny*"/>
84150             </parameter>
84151           </parameters>
84152         </callback>
84153       </field>
84154       <field name="window_state_event">
84155         <callback name="window_state_event" c:type="window_state_event">
84156           <return-value transfer-ownership="none">
84157             <type name="boolean" c:type="gboolean"/>
84158           </return-value>
84159           <parameters>
84160             <parameter name="widget" transfer-ownership="none">
84161               <type name="Widget" c:type="GtkWidget*"/>
84162             </parameter>
84163             <parameter name="event" transfer-ownership="none">
84164               <type name="Gdk.EventWindowState" c:type="GdkEventWindowState*"/>
84165             </parameter>
84166           </parameters>
84167         </callback>
84168       </field>
84169       <field name="selection_get">
84170         <callback name="selection_get" c:type="selection_get">
84171           <return-value transfer-ownership="none">
84172             <type name="none" c:type="void"/>
84173           </return-value>
84174           <parameters>
84175             <parameter name="widget" transfer-ownership="none">
84176               <type name="Widget" c:type="GtkWidget*"/>
84177             </parameter>
84178             <parameter name="selection_data" transfer-ownership="none">
84179               <type name="SelectionData" c:type="GtkSelectionData*"/>
84180             </parameter>
84181             <parameter name="info" transfer-ownership="none">
84182               <type name="uint" c:type="guint"/>
84183             </parameter>
84184             <parameter name="time_" transfer-ownership="none">
84185               <type name="uint" c:type="guint"/>
84186             </parameter>
84187           </parameters>
84188         </callback>
84189       </field>
84190       <field name="selection_received">
84191         <callback name="selection_received" c:type="selection_received">
84192           <return-value transfer-ownership="none">
84193             <type name="none" c:type="void"/>
84194           </return-value>
84195           <parameters>
84196             <parameter name="widget" transfer-ownership="none">
84197               <type name="Widget" c:type="GtkWidget*"/>
84198             </parameter>
84199             <parameter name="selection_data" transfer-ownership="none">
84200               <type name="SelectionData" c:type="GtkSelectionData*"/>
84201             </parameter>
84202             <parameter name="time_" transfer-ownership="none">
84203               <type name="uint" c:type="guint"/>
84204             </parameter>
84205           </parameters>
84206         </callback>
84207       </field>
84208       <field name="drag_begin">
84209         <callback name="drag_begin" c:type="drag_begin">
84210           <return-value transfer-ownership="none">
84211             <type name="none" c:type="void"/>
84212           </return-value>
84213           <parameters>
84214             <parameter name="widget" transfer-ownership="none">
84215               <type name="Widget" c:type="GtkWidget*"/>
84216             </parameter>
84217             <parameter name="context" transfer-ownership="none">
84218               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
84219             </parameter>
84220           </parameters>
84221         </callback>
84222       </field>
84223       <field name="drag_end">
84224         <callback name="drag_end" c:type="drag_end">
84225           <return-value transfer-ownership="none">
84226             <type name="none" c:type="void"/>
84227           </return-value>
84228           <parameters>
84229             <parameter name="widget" transfer-ownership="none">
84230               <type name="Widget" c:type="GtkWidget*"/>
84231             </parameter>
84232             <parameter name="context" transfer-ownership="none">
84233               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
84234             </parameter>
84235           </parameters>
84236         </callback>
84237       </field>
84238       <field name="drag_data_get">
84239         <callback name="drag_data_get" c:type="drag_data_get">
84240           <return-value transfer-ownership="none">
84241             <type name="none" c:type="void"/>
84242           </return-value>
84243           <parameters>
84244             <parameter name="widget" transfer-ownership="none">
84245               <type name="Widget" c:type="GtkWidget*"/>
84246             </parameter>
84247             <parameter name="context" transfer-ownership="none">
84248               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
84249             </parameter>
84250             <parameter name="selection_data" transfer-ownership="none">
84251               <type name="SelectionData" c:type="GtkSelectionData*"/>
84252             </parameter>
84253             <parameter name="info" transfer-ownership="none">
84254               <type name="uint" c:type="guint"/>
84255             </parameter>
84256             <parameter name="time_" transfer-ownership="none">
84257               <type name="uint" c:type="guint"/>
84258             </parameter>
84259           </parameters>
84260         </callback>
84261       </field>
84262       <field name="drag_data_delete">
84263         <callback name="drag_data_delete" c:type="drag_data_delete">
84264           <return-value transfer-ownership="none">
84265             <type name="none" c:type="void"/>
84266           </return-value>
84267           <parameters>
84268             <parameter name="widget" transfer-ownership="none">
84269               <type name="Widget" c:type="GtkWidget*"/>
84270             </parameter>
84271             <parameter name="context" transfer-ownership="none">
84272               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
84273             </parameter>
84274           </parameters>
84275         </callback>
84276       </field>
84277       <field name="drag_leave">
84278         <callback name="drag_leave" c:type="drag_leave">
84279           <return-value transfer-ownership="none">
84280             <type name="none" c:type="void"/>
84281           </return-value>
84282           <parameters>
84283             <parameter name="widget" transfer-ownership="none">
84284               <type name="Widget" c:type="GtkWidget*"/>
84285             </parameter>
84286             <parameter name="context" transfer-ownership="none">
84287               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
84288             </parameter>
84289             <parameter name="time_" transfer-ownership="none">
84290               <type name="uint" c:type="guint"/>
84291             </parameter>
84292           </parameters>
84293         </callback>
84294       </field>
84295       <field name="drag_motion">
84296         <callback name="drag_motion" c:type="drag_motion">
84297           <return-value transfer-ownership="none">
84298             <type name="boolean" c:type="gboolean"/>
84299           </return-value>
84300           <parameters>
84301             <parameter name="widget" transfer-ownership="none">
84302               <type name="Widget" c:type="GtkWidget*"/>
84303             </parameter>
84304             <parameter name="context" transfer-ownership="none">
84305               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
84306             </parameter>
84307             <parameter name="x" transfer-ownership="none">
84308               <type name="int" c:type="gint"/>
84309             </parameter>
84310             <parameter name="y" transfer-ownership="none">
84311               <type name="int" c:type="gint"/>
84312             </parameter>
84313             <parameter name="time_" transfer-ownership="none">
84314               <type name="uint" c:type="guint"/>
84315             </parameter>
84316           </parameters>
84317         </callback>
84318       </field>
84319       <field name="drag_drop">
84320         <callback name="drag_drop" c:type="drag_drop">
84321           <return-value transfer-ownership="none">
84322             <type name="boolean" c:type="gboolean"/>
84323           </return-value>
84324           <parameters>
84325             <parameter name="widget" transfer-ownership="none">
84326               <type name="Widget" c:type="GtkWidget*"/>
84327             </parameter>
84328             <parameter name="context" transfer-ownership="none">
84329               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
84330             </parameter>
84331             <parameter name="x" transfer-ownership="none">
84332               <type name="int" c:type="gint"/>
84333             </parameter>
84334             <parameter name="y" transfer-ownership="none">
84335               <type name="int" c:type="gint"/>
84336             </parameter>
84337             <parameter name="time_" transfer-ownership="none">
84338               <type name="uint" c:type="guint"/>
84339             </parameter>
84340           </parameters>
84341         </callback>
84342       </field>
84343       <field name="drag_data_received">
84344         <callback name="drag_data_received" c:type="drag_data_received">
84345           <return-value transfer-ownership="none">
84346             <type name="none" c:type="void"/>
84347           </return-value>
84348           <parameters>
84349             <parameter name="widget" transfer-ownership="none">
84350               <type name="Widget" c:type="GtkWidget*"/>
84351             </parameter>
84352             <parameter name="context" transfer-ownership="none">
84353               <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
84354             </parameter>
84355             <parameter name="x" transfer-ownership="none">
84356               <type name="int" c:type="gint"/>
84357             </parameter>
84358             <parameter name="y" transfer-ownership="none">
84359               <type name="int" c:type="gint"/>
84360             </parameter>
84361             <parameter name="selection_data" transfer-ownership="none">
84362               <type name="SelectionData" c:type="GtkSelectionData*"/>
84363             </parameter>
84364             <parameter name="info" transfer-ownership="none">
84365               <type name="uint" c:type="guint"/>
84366             </parameter>
84367             <parameter name="time_" transfer-ownership="none">
84368               <type name="uint" c:type="guint"/>
84369             </parameter>
84370           </parameters>
84371         </callback>
84372       </field>
84373       <field name="popup_menu">
84374         <callback name="popup_menu" c:type="popup_menu">
84375           <return-value transfer-ownership="none">
84376             <type name="boolean" c:type="gboolean"/>
84377           </return-value>
84378           <parameters>
84379             <parameter name="widget" transfer-ownership="none">
84380               <type name="Widget" c:type="GtkWidget*"/>
84381             </parameter>
84382           </parameters>
84383         </callback>
84384       </field>
84385       <field name="show_help">
84386         <callback name="show_help" c:type="show_help">
84387           <return-value transfer-ownership="none">
84388             <type name="boolean" c:type="gboolean"/>
84389           </return-value>
84390           <parameters>
84391             <parameter name="widget" transfer-ownership="none">
84392               <type name="Widget" c:type="GtkWidget*"/>
84393             </parameter>
84394             <parameter name="help_type" transfer-ownership="none">
84395               <type name="WidgetHelpType" c:type="GtkWidgetHelpType"/>
84396             </parameter>
84397           </parameters>
84398         </callback>
84399       </field>
84400       <field name="get_accessible">
84401         <callback name="get_accessible" c:type="get_accessible">
84402           <return-value transfer-ownership="none">
84403             <doc xml:whitespace="preserve">the #AtkObject associated with @widget</doc>
84404             <type name="Atk.Object" c:type="AtkObject*"/>
84405           </return-value>
84406           <parameters>
84407             <parameter name="widget" transfer-ownership="none">
84408               <type name="Widget" c:type="GtkWidget*"/>
84409             </parameter>
84410           </parameters>
84411         </callback>
84412       </field>
84413       <field name="screen_changed">
84414         <callback name="screen_changed" c:type="screen_changed">
84415           <return-value transfer-ownership="none">
84416             <type name="none" c:type="void"/>
84417           </return-value>
84418           <parameters>
84419             <parameter name="widget" transfer-ownership="none">
84420               <type name="Widget" c:type="GtkWidget*"/>
84421             </parameter>
84422             <parameter name="previous_screen" transfer-ownership="none">
84423               <type name="Gdk.Screen" c:type="GdkScreen*"/>
84424             </parameter>
84425           </parameters>
84426         </callback>
84427       </field>
84428       <field name="can_activate_accel">
84429         <callback name="can_activate_accel" c:type="can_activate_accel">
84430           <return-value transfer-ownership="none">
84431             <type name="boolean" c:type="gboolean"/>
84432           </return-value>
84433           <parameters>
84434             <parameter name="widget" transfer-ownership="none">
84435               <type name="Widget" c:type="GtkWidget*"/>
84436             </parameter>
84437             <parameter name="signal_id" transfer-ownership="none">
84438               <type name="uint" c:type="guint"/>
84439             </parameter>
84440           </parameters>
84441         </callback>
84442       </field>
84443       <field name="grab_broken_event">
84444         <callback name="grab_broken_event" c:type="grab_broken_event">
84445           <return-value transfer-ownership="none">
84446             <type name="boolean" c:type="gboolean"/>
84447           </return-value>
84448           <parameters>
84449             <parameter name="widget" transfer-ownership="none">
84450               <type name="Widget" c:type="GtkWidget*"/>
84451             </parameter>
84452             <parameter name="event" transfer-ownership="none">
84453               <type name="Gdk.EventGrabBroken" c:type="GdkEventGrabBroken*"/>
84454             </parameter>
84455           </parameters>
84456         </callback>
84457       </field>
84458       <field name="composited_changed">
84459         <callback name="composited_changed" c:type="composited_changed">
84460           <return-value transfer-ownership="none">
84461             <type name="none" c:type="void"/>
84462           </return-value>
84463           <parameters>
84464             <parameter name="widget" transfer-ownership="none">
84465               <type name="Widget" c:type="GtkWidget*"/>
84466             </parameter>
84467           </parameters>
84468         </callback>
84469       </field>
84470       <field name="query_tooltip">
84471         <callback name="query_tooltip" c:type="query_tooltip">
84472           <return-value transfer-ownership="none">
84473             <type name="boolean" c:type="gboolean"/>
84474           </return-value>
84475           <parameters>
84476             <parameter name="widget" transfer-ownership="none">
84477               <type name="Widget" c:type="GtkWidget*"/>
84478             </parameter>
84479             <parameter name="x" transfer-ownership="none">
84480               <type name="int" c:type="gint"/>
84481             </parameter>
84482             <parameter name="y" transfer-ownership="none">
84483               <type name="int" c:type="gint"/>
84484             </parameter>
84485             <parameter name="keyboard_tooltip" transfer-ownership="none">
84486               <type name="boolean" c:type="gboolean"/>
84487             </parameter>
84488             <parameter name="tooltip" transfer-ownership="none">
84489               <type name="Tooltip" c:type="GtkTooltip*"/>
84490             </parameter>
84491           </parameters>
84492         </callback>
84493       </field>
84494       <field name="gtk_reserved5">
84495         <callback name="gtk_reserved5" c:type="_gtk_reserved5">
84496           <return-value transfer-ownership="none">
84497             <type name="none" c:type="void"/>
84498           </return-value>
84499         </callback>
84500       </field>
84501       <field name="gtk_reserved6">
84502         <callback name="gtk_reserved6" c:type="_gtk_reserved6">
84503           <return-value transfer-ownership="none">
84504             <type name="none" c:type="void"/>
84505           </return-value>
84506         </callback>
84507       </field>
84508       <field name="gtk_reserved7">
84509         <callback name="gtk_reserved7" c:type="_gtk_reserved7">
84510           <return-value transfer-ownership="none">
84511             <type name="none" c:type="void"/>
84512           </return-value>
84513         </callback>
84514       </field>
84515       <method name="install_style_property"
84516               c:identifier="gtk_widget_class_install_style_property">
84517         <doc xml:whitespace="preserve">Installs a style property on a widget class. The parser for the
84518 style property is determined by the value type of @pspec.</doc>
84519         <return-value transfer-ownership="none">
84520           <type name="none" c:type="void"/>
84521         </return-value>
84522         <parameters>
84523           <parameter name="pspec" transfer-ownership="none">
84524             <doc xml:whitespace="preserve">the #GParamSpec for the property</doc>
84525             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
84526           </parameter>
84527         </parameters>
84528       </method>
84529       <method name="install_style_property_parser"
84530               c:identifier="gtk_widget_class_install_style_property_parser">
84531         <doc xml:whitespace="preserve">Installs a style property on a widget class.</doc>
84532         <return-value transfer-ownership="none">
84533           <type name="none" c:type="void"/>
84534         </return-value>
84535         <parameters>
84536           <parameter name="pspec" transfer-ownership="none">
84537             <doc xml:whitespace="preserve">the #GParamSpec for the style property</doc>
84538             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
84539           </parameter>
84540           <parameter name="parser" transfer-ownership="none" scope="call">
84541             <doc xml:whitespace="preserve">the parser for the style property</doc>
84542             <type name="RcPropertyParser" c:type="GtkRcPropertyParser"/>
84543           </parameter>
84544         </parameters>
84545       </method>
84546       <method name="find_style_property"
84547               c:identifier="gtk_widget_class_find_style_property"
84548               version="2.2">
84549         <doc xml:whitespace="preserve">Finds a style property of a widget class by name.</doc>
84550         <return-value transfer-ownership="full">
84551           <doc xml:whitespace="preserve">the #GParamSpec of the style property or %NULL if @class has no style property with that name.</doc>
84552           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
84553         </return-value>
84554         <parameters>
84555           <parameter name="property_name" transfer-ownership="none">
84556             <doc xml:whitespace="preserve">the name of the style property to find</doc>
84557             <type name="utf8" c:type="gchar*"/>
84558           </parameter>
84559         </parameters>
84560       </method>
84561       <method name="list_style_properties"
84562               c:identifier="gtk_widget_class_list_style_properties"
84563               version="2.2">
84564         <doc xml:whitespace="preserve">Returns all style properties of a widget class.</doc>
84565         <return-value transfer-ownership="full">
84566           <doc xml:whitespace="preserve">an newly allocated array of #GParamSpec*. The array must be freed with g_free().</doc>
84567           <type name="GObject.ParamSpec" c:type="GParamSpec**"/>
84568         </return-value>
84569         <parameters>
84570           <parameter name="n_properties"
84571                      direction="out"
84572                      caller-allocates="0"
84573                      transfer-ownership="full">
84574             <doc xml:whitespace="preserve">location to return the number of style properties found</doc>
84575             <type name="uint" c:type="guint*"/>
84576           </parameter>
84577         </parameters>
84578       </method>
84579     </record>
84580     <bitfield name="WidgetFlags"
84581               glib:type-name="GtkWidgetFlags"
84582               glib:get-type="gtk_widget_flags_get_type"
84583               c:type="GtkWidgetFlags">
84584       <doc xml:whitespace="preserve">Tells about certain properties of the widget.</doc>
84585       <member name="toplevel"
84586               value="16"
84587               c:identifier="GTK_TOPLEVEL"
84588               glib:nick="toplevel"/>
84589       <member name="no_window"
84590               value="32"
84591               c:identifier="GTK_NO_WINDOW"
84592               glib:nick="no-window"/>
84593       <member name="realized"
84594               value="64"
84595               c:identifier="GTK_REALIZED"
84596               glib:nick="realized"/>
84597       <member name="mapped"
84598               value="128"
84599               c:identifier="GTK_MAPPED"
84600               glib:nick="mapped"/>
84601       <member name="visible"
84602               value="256"
84603               c:identifier="GTK_VISIBLE"
84604               glib:nick="visible"/>
84605       <member name="sensitive"
84606               value="512"
84607               c:identifier="GTK_SENSITIVE"
84608               glib:nick="sensitive"/>
84609       <member name="parent_sensitive"
84610               value="1024"
84611               c:identifier="GTK_PARENT_SENSITIVE"
84612               glib:nick="parent-sensitive"/>
84613       <member name="can_focus"
84614               value="2048"
84615               c:identifier="GTK_CAN_FOCUS"
84616               glib:nick="can-focus"/>
84617       <member name="has_focus"
84618               value="4096"
84619               c:identifier="GTK_HAS_FOCUS"
84620               glib:nick="has-focus"/>
84621       <member name="can_default"
84622               value="8192"
84623               c:identifier="GTK_CAN_DEFAULT"
84624               glib:nick="can-default"/>
84625       <member name="has_default"
84626               value="16384"
84627               c:identifier="GTK_HAS_DEFAULT"
84628               glib:nick="has-default"/>
84629       <member name="has_grab"
84630               value="32768"
84631               c:identifier="GTK_HAS_GRAB"
84632               glib:nick="has-grab"/>
84633       <member name="rc_style"
84634               value="65536"
84635               c:identifier="GTK_RC_STYLE"
84636               glib:nick="rc-style"/>
84637       <member name="composite_child"
84638               value="131072"
84639               c:identifier="GTK_COMPOSITE_CHILD"
84640               glib:nick="composite-child"/>
84641       <member name="no_reparent"
84642               value="262144"
84643               c:identifier="GTK_NO_REPARENT"
84644               glib:nick="no-reparent"/>
84645       <member name="app_paintable"
84646               value="524288"
84647               c:identifier="GTK_APP_PAINTABLE"
84648               glib:nick="app-paintable"/>
84649       <member name="receives_default"
84650               value="1048576"
84651               c:identifier="GTK_RECEIVES_DEFAULT"
84652               glib:nick="receives-default"/>
84653       <member name="double_buffered"
84654               value="2097152"
84655               c:identifier="GTK_DOUBLE_BUFFERED"
84656               glib:nick="double-buffered"/>
84657       <member name="no_show_all"
84658               value="4194304"
84659               c:identifier="GTK_NO_SHOW_ALL"
84660               glib:nick="no-show-all"/>
84661     </bitfield>
84662     <enumeration name="WidgetHelpType"
84663                  glib:type-name="GtkWidgetHelpType"
84664                  glib:get-type="gtk_widget_help_type_get_type"
84665                  c:type="GtkWidgetHelpType">
84666       <member name="tooltip"
84667               value="0"
84668               c:identifier="GTK_WIDGET_HELP_TOOLTIP"
84669               glib:nick="tooltip"/>
84670       <member name="whats_this"
84671               value="1"
84672               c:identifier="GTK_WIDGET_HELP_WHATS_THIS"
84673               glib:nick="whats-this"/>
84674     </enumeration>
84675     <record name="WidgetShapeInfo" c:type="GtkWidgetShapeInfo">
84676       <field name="offset_x" writable="1">
84677         <type name="int16" c:type="gint16"/>
84678       </field>
84679       <field name="offset_y" writable="1">
84680         <type name="int16" c:type="gint16"/>
84681       </field>
84682       <field name="shape_mask" writable="1">
84683         <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
84684       </field>
84685     </record>
84686     <class name="Window"
84687            c:type="GtkWindow"
84688            parent="Bin"
84689            glib:type-name="GtkWindow"
84690            glib:get-type="gtk_window_get_type"
84691            glib:type-struct="WindowClass">
84692       <implements name="Atk.ImplementorIface"/>
84693       <implements name="Buildable"/>
84694       <constructor name="new" c:identifier="gtk_window_new">
84695         <doc xml:whitespace="preserve">Creates a new #GtkWindow, which is a toplevel window that can
84696 contain other widgets. Nearly always, the type of the window should
84697 be #GTK_WINDOW_TOPLEVEL. If you're implementing something like a
84698 popup menu from scratch (which is a bad idea, just use #GtkMenu),
84699 you might use #GTK_WINDOW_POPUP. #GTK_WINDOW_POPUP is not for
84700 dialogs, though in some other toolkits dialogs are called "popups".
84701 In GTK+, #GTK_WINDOW_POPUP means a pop-up menu or pop-up tooltip.
84702 On X11, popup windows are not controlled by the &lt;link
84703 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;.
84704 If you simply want an undecorated window (no window borders), use
84705 gtk_window_set_decorated(), don't use #GTK_WINDOW_POPUP.</doc>
84706         <return-value transfer-ownership="full">
84707           <doc xml:whitespace="preserve">a new #GtkWindow.</doc>
84708           <type name="Window" c:type="GtkWidget*"/>
84709         </return-value>
84710         <parameters>
84711           <parameter name="type" transfer-ownership="none">
84712             <doc xml:whitespace="preserve">type of window</doc>
84713             <type name="WindowType" c:type="GtkWindowType"/>
84714           </parameter>
84715         </parameters>
84716       </constructor>
84717       <function name="set_default_icon_list"
84718                 c:identifier="gtk_window_set_default_icon_list"
84719                 introspectable="0">
84720         <doc xml:whitespace="preserve">Sets an icon list to be used as fallback for windows that haven't
84721 had gtk_window_set_icon_list() called on them to set up a
84722 window-specific icon list. This function allows you to set up the
84723 icon for all windows in your app at once.
84724 See gtk_window_set_icon_list() for more details.</doc>
84725         <return-value transfer-ownership="none">
84726           <type name="none" c:type="void"/>
84727         </return-value>
84728         <parameters>
84729           <parameter name="list" transfer-ownership="none">
84730             <doc xml:whitespace="preserve">a list of #GdkPixbuf</doc>
84731             <type name="GLib.List" c:type="GList*">
84732               <type name="any" c:type="gpointer"/>
84733             </type>
84734           </parameter>
84735         </parameters>
84736       </function>
84737       <function name="get_default_icon_list"
84738                 c:identifier="gtk_window_get_default_icon_list"
84739                 introspectable="0">
84740         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_default_icon_list().
84741 The list is a copy and should be freed with g_list_free(),
84742 but the pixbufs in the list have not had their reference count
84743 incremented.</doc>
84744         <return-value transfer-ownership="full">
84745           <doc xml:whitespace="preserve">copy of default icon list</doc>
84746           <type name="GLib.List" c:type="GList*">
84747             <type name="any" c:type="gpointer"/>
84748           </type>
84749         </return-value>
84750       </function>
84751       <function name="set_default_icon"
84752                 c:identifier="gtk_window_set_default_icon"
84753                 version="2.4">
84754         <doc xml:whitespace="preserve">Sets an icon to be used as fallback for windows that haven't
84755 had gtk_window_set_icon() called on them from a pixbuf.</doc>
84756         <return-value transfer-ownership="none">
84757           <type name="none" c:type="void"/>
84758         </return-value>
84759         <parameters>
84760           <parameter name="icon" transfer-ownership="none">
84761             <doc xml:whitespace="preserve">the icon</doc>
84762             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
84763           </parameter>
84764         </parameters>
84765       </function>
84766       <function name="set_default_icon_name"
84767                 c:identifier="gtk_window_set_default_icon_name"
84768                 version="2.6">
84769         <doc xml:whitespace="preserve">Sets an icon to be used as fallback for windows that haven't
84770 had gtk_window_set_icon_list() called on them from a named
84771 themed icon, see gtk_window_set_icon_name().</doc>
84772         <return-value transfer-ownership="none">
84773           <type name="none" c:type="void"/>
84774         </return-value>
84775         <parameters>
84776           <parameter name="name" transfer-ownership="none">
84777             <doc xml:whitespace="preserve">the name of the themed icon</doc>
84778             <type name="utf8" c:type="gchar*"/>
84779           </parameter>
84780         </parameters>
84781       </function>
84782       <function name="get_default_icon_name"
84783                 c:identifier="gtk_window_get_default_icon_name"
84784                 version="2.16">
84785         <doc xml:whitespace="preserve">Returns the fallback icon name for windows that has been set
84786 with gtk_window_set_default_icon_name(). The returned
84787 string is owned by GTK+ and should not be modified. It
84788 is only valid until the next call to
84789 gtk_window_set_default_icon_name().</doc>
84790         <return-value transfer-ownership="none">
84791           <doc xml:whitespace="preserve">the fallback icon name for windows</doc>
84792           <type name="utf8" c:type="gchar*"/>
84793         </return-value>
84794       </function>
84795       <function name="set_default_icon_from_file"
84796                 c:identifier="gtk_window_set_default_icon_from_file"
84797                 version="2.2"
84798                 throws="1">
84799         <doc xml:whitespace="preserve">Sets an icon to be used as fallback for windows that haven't
84800 had gtk_window_set_icon_list() called on them from a file
84801 on disk. Warns on failure if @err is %NULL.</doc>
84802         <return-value transfer-ownership="none">
84803           <doc xml:whitespace="preserve">%TRUE if setting the icon succeeded.</doc>
84804           <type name="boolean" c:type="gboolean"/>
84805         </return-value>
84806         <parameters>
84807           <parameter name="filename" transfer-ownership="none">
84808             <doc xml:whitespace="preserve">location of icon file</doc>
84809             <type name="utf8" c:type="gchar*"/>
84810           </parameter>
84811         </parameters>
84812       </function>
84813       <function name="set_auto_startup_notification"
84814                 c:identifier="gtk_window_set_auto_startup_notification"
84815                 version="2.2">
84816         <doc xml:whitespace="preserve">By default, after showing the first #GtkWindow, GTK+ calls 
84817 gdk_notify_startup_complete().  Call this function to disable 
84818 the automatic startup notification. You might do this if your 
84819 first window is a splash screen, and you want to delay notification 
84820 until after your real main window has been shown, for example.
84821 In that example, you would disable startup notification
84822 temporarily, show your splash screen, then re-enable it so that
84823 showing the main window would automatically result in notification.</doc>
84824         <return-value transfer-ownership="none">
84825           <type name="none" c:type="void"/>
84826         </return-value>
84827         <parameters>
84828           <parameter name="setting" transfer-ownership="none">
84829             <doc xml:whitespace="preserve">%TRUE to automatically do startup notification</doc>
84830             <type name="boolean" c:type="gboolean"/>
84831           </parameter>
84832         </parameters>
84833       </function>
84834       <function name="list_toplevels" c:identifier="gtk_window_list_toplevels">
84835         <doc xml:whitespace="preserve">Returns a list of all existing toplevel windows. The widgets
84836 in the list are not individually referenced. If you want
84837 to iterate through the list and perform actions involving
84838 callbacks that might destroy the widgets, you &lt;emphasis&gt;must&lt;/emphasis&gt; call
84839 &lt;literal&gt;g_list_foreach (result, (GFunc)g_object_ref, NULL)&lt;/literal&gt; first, and
84840 then unref all the widgets afterwards.</doc>
84841         <return-value transfer-ownership="container">
84842           <doc xml:whitespace="preserve">list of toplevel widgets</doc>
84843           <type name="GLib.List" c:type="GList*">
84844             <type name="Widget"/>
84845           </type>
84846         </return-value>
84847       </function>
84848       <virtual-method name="move_focus">
84849         <return-value transfer-ownership="none">
84850           <type name="none" c:type="void"/>
84851         </return-value>
84852         <parameters>
84853           <parameter name="direction" transfer-ownership="none">
84854             <type name="DirectionType" c:type="GtkDirectionType"/>
84855           </parameter>
84856         </parameters>
84857       </virtual-method>
84858       <method name="set_title" c:identifier="gtk_window_set_title">
84859         <doc xml:whitespace="preserve">Sets the title of the #GtkWindow. The title of a window will be
84860 displayed in its title bar; on the X Window System, the title bar
84861 is rendered by the &lt;link linkend="gtk-X11-arch"&gt;window
84862 manager&lt;/link&gt;, so exactly how the title appears to users may vary
84863 according to a user's exact configuration. The title should help a
84864 user distinguish this window from other windows they may have
84865 open. A good title might include the application name and current
84866 document filename, for example.</doc>
84867         <return-value transfer-ownership="none">
84868           <type name="none" c:type="void"/>
84869         </return-value>
84870         <parameters>
84871           <parameter name="title" transfer-ownership="none">
84872             <doc xml:whitespace="preserve">title of the window</doc>
84873             <type name="utf8" c:type="gchar*"/>
84874           </parameter>
84875         </parameters>
84876       </method>
84877       <method name="get_title" c:identifier="gtk_window_get_title">
84878         <doc xml:whitespace="preserve">Retrieves the title of the window. See gtk_window_set_title().
84879 been set explicitely. The returned string is owned by the widget
84880 and must not be modified or freed.</doc>
84881         <return-value transfer-ownership="none">
84882           <doc xml:whitespace="preserve">the title of the window, or %NULL if none has</doc>
84883           <type name="utf8" c:type="gchar*"/>
84884         </return-value>
84885       </method>
84886       <method name="set_wmclass" c:identifier="gtk_window_set_wmclass">
84887         <doc xml:whitespace="preserve">Don't use this function. It sets the X Window System "class" and
84888 "name" hints for a window.  According to the ICCCM, you should
84889 always set these to the same value for all windows in an
84890 application, and GTK+ sets them to that value by default, so calling
84891 this function is sort of pointless. However, you may want to call
84892 gtk_window_set_role() on each window in your application, for the
84893 benefit of the session manager. Setting the role allows the window
84894 manager to restore window positions when loading a saved session.</doc>
84895         <return-value transfer-ownership="none">
84896           <type name="none" c:type="void"/>
84897         </return-value>
84898         <parameters>
84899           <parameter name="wmclass_name" transfer-ownership="none">
84900             <doc xml:whitespace="preserve">window name hint</doc>
84901             <type name="utf8" c:type="gchar*"/>
84902           </parameter>
84903           <parameter name="wmclass_class" transfer-ownership="none">
84904             <doc xml:whitespace="preserve">window class hint</doc>
84905             <type name="utf8" c:type="gchar*"/>
84906           </parameter>
84907         </parameters>
84908       </method>
84909       <method name="set_role" c:identifier="gtk_window_set_role">
84910         <doc xml:whitespace="preserve">This function is only useful on X11, not with other GTK+ targets.
84911 In combination with the window title, the window role allows a
84912 &lt;link linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt; to identify "the
84913 same" window when an application is restarted. So for example you
84914 might set the "toolbox" role on your app's toolbox window, so that
84915 when the user restarts their session, the window manager can put
84916 the toolbox back in the same place.
84917 If a window already has a unique title, you don't need to set the
84918 role, since the WM can use the title to identify the window when
84919 restoring the session.</doc>
84920         <return-value transfer-ownership="none">
84921           <type name="none" c:type="void"/>
84922         </return-value>
84923         <parameters>
84924           <parameter name="role" transfer-ownership="none">
84925             <doc xml:whitespace="preserve">unique identifier for the window to be used when restoring a session</doc>
84926             <type name="utf8" c:type="gchar*"/>
84927           </parameter>
84928         </parameters>
84929       </method>
84930       <method name="set_startup_id"
84931               c:identifier="gtk_window_set_startup_id"
84932               version="2.12">
84933         <doc xml:whitespace="preserve">Startup notification identifiers are used by desktop environment to 
84934 track application startup, to provide user feedback and other 
84935 features. This function changes the corresponding property on the
84936 underlying GdkWindow. Normally, startup identifier is managed 
84937 automatically and you should only use this function in special cases
84938 like transferring focus from other processes. You should use this
84939 function before calling gtk_window_present() or any equivalent
84940 function generating a window map event.
84941 This function is only useful on X11, not with other GTK+ targets.</doc>
84942         <return-value transfer-ownership="none">
84943           <type name="none" c:type="void"/>
84944         </return-value>
84945         <parameters>
84946           <parameter name="startup_id" transfer-ownership="none">
84947             <doc xml:whitespace="preserve">a string with startup-notification identifier</doc>
84948             <type name="utf8" c:type="gchar*"/>
84949           </parameter>
84950         </parameters>
84951       </method>
84952       <method name="get_role" c:identifier="gtk_window_get_role">
84953         <doc xml:whitespace="preserve">Returns the role of the window. See gtk_window_set_role() for
84954 further explanation.
84955 returned is owned by the widget and must not be modified
84956 or freed.</doc>
84957         <return-value transfer-ownership="none">
84958           <doc xml:whitespace="preserve">the role of the window if set, or %NULL. The</doc>
84959           <type name="utf8" c:type="gchar*"/>
84960         </return-value>
84961       </method>
84962       <method name="add_accel_group" c:identifier="gtk_window_add_accel_group">
84963         <doc xml:whitespace="preserve">Associate @accel_group with @window, such that calling
84964 gtk_accel_groups_activate() on @window will activate accelerators
84965 in @accel_group.</doc>
84966         <return-value transfer-ownership="none">
84967           <type name="none" c:type="void"/>
84968         </return-value>
84969         <parameters>
84970           <parameter name="accel_group" transfer-ownership="none">
84971             <doc xml:whitespace="preserve">a #GtkAccelGroup</doc>
84972             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
84973           </parameter>
84974         </parameters>
84975       </method>
84976       <method name="remove_accel_group"
84977               c:identifier="gtk_window_remove_accel_group">
84978         <doc xml:whitespace="preserve">Reverses the effects of gtk_window_add_accel_group().</doc>
84979         <return-value transfer-ownership="none">
84980           <type name="none" c:type="void"/>
84981         </return-value>
84982         <parameters>
84983           <parameter name="accel_group" transfer-ownership="none">
84984             <doc xml:whitespace="preserve">a #GtkAccelGroup</doc>
84985             <type name="AccelGroup" c:type="GtkAccelGroup*"/>
84986           </parameter>
84987         </parameters>
84988       </method>
84989       <method name="set_position" c:identifier="gtk_window_set_position">
84990         <doc xml:whitespace="preserve">Sets a position constraint for this window. If the old or new
84991 constraint is %GTK_WIN_POS_CENTER_ALWAYS, this will also cause
84992 the window to be repositioned to satisfy the new constraint.</doc>
84993         <return-value transfer-ownership="none">
84994           <type name="none" c:type="void"/>
84995         </return-value>
84996         <parameters>
84997           <parameter name="position" transfer-ownership="none">
84998             <doc xml:whitespace="preserve">a position constraint.</doc>
84999             <type name="WindowPosition" c:type="GtkWindowPosition"/>
85000           </parameter>
85001         </parameters>
85002       </method>
85003       <method name="activate_focus" c:identifier="gtk_window_activate_focus">
85004         <doc xml:whitespace="preserve">Activates the current focused widget within the window.</doc>
85005         <return-value transfer-ownership="none">
85006           <doc xml:whitespace="preserve">%TRUE if a widget got activated.</doc>
85007           <type name="boolean" c:type="gboolean"/>
85008         </return-value>
85009       </method>
85010       <method name="set_focus" c:identifier="gtk_window_set_focus">
85011         <doc xml:whitespace="preserve">If @focus is not the current focus widget, and is focusable, sets
85012 it as the focus widget for the window. If @focus is %NULL, unsets
85013 the focus widget for this window. To set the focus to a particular
85014 widget in the toplevel, it is usually more convenient to use
85015 gtk_widget_grab_focus() instead of this function.</doc>
85016         <return-value transfer-ownership="none">
85017           <type name="none" c:type="void"/>
85018         </return-value>
85019         <parameters>
85020           <parameter name="focus" transfer-ownership="none" allow-none="1">
85021             <doc xml:whitespace="preserve">widget to be the new focus widget, or %NULL to unset any focus widget for the toplevel window.</doc>
85022             <type name="Widget" c:type="GtkWidget*"/>
85023           </parameter>
85024         </parameters>
85025       </method>
85026       <method name="get_focus" c:identifier="gtk_window_get_focus">
85027         <doc xml:whitespace="preserve">Retrieves the current focused widget within the window.
85028 Note that this is the widget that would have the focus
85029 if the toplevel window focused; if the toplevel window
85030 is not focused then  &lt;literal&gt;gtk_widget_has_focus (widget)&lt;/literal&gt; will
85031 not be %TRUE for the widget.</doc>
85032         <return-value transfer-ownership="none">
85033           <doc xml:whitespace="preserve">the currently focused widget, or %NULL if there is none.</doc>
85034           <type name="Widget" c:type="GtkWidget*"/>
85035         </return-value>
85036       </method>
85037       <method name="set_default" c:identifier="gtk_window_set_default">
85038         <doc xml:whitespace="preserve">The default widget is the widget that's activated when the user
85039 presses Enter in a dialog (for example). This function sets or
85040 unsets the default widget for a #GtkWindow about. When setting
85041 (rather than unsetting) the default widget it's generally easier to
85042 call gtk_widget_grab_focus() on the widget. Before making a widget
85043 the default widget, you must set the #GTK_CAN_DEFAULT flag on the
85044 widget you'd like to make the default using GTK_WIDGET_SET_FLAGS().</doc>
85045         <return-value transfer-ownership="none">
85046           <type name="none" c:type="void"/>
85047         </return-value>
85048         <parameters>
85049           <parameter name="default_widget"
85050                      transfer-ownership="none"
85051                      allow-none="1">
85052             <doc xml:whitespace="preserve">widget to be the default, or %NULL to unset the default widget for the toplevel.</doc>
85053             <type name="Widget" c:type="GtkWidget*"/>
85054           </parameter>
85055         </parameters>
85056       </method>
85057       <method name="get_default_widget"
85058               c:identifier="gtk_window_get_default_widget"
85059               version="2.14">
85060         <doc xml:whitespace="preserve">Returns the default widget for @window. See gtk_window_set_default()
85061 for more details.</doc>
85062         <return-value transfer-ownership="full">
85063           <doc xml:whitespace="preserve">the default widget, or %NULL if there is none.</doc>
85064           <type name="Widget" c:type="GtkWidget*"/>
85065         </return-value>
85066       </method>
85067       <method name="activate_default"
85068               c:identifier="gtk_window_activate_default">
85069         <doc xml:whitespace="preserve">Activates the default widget for the window, unless the current 
85070 focused widget has been configured to receive the default action 
85071 (see gtk_widget_set_receives_default()), in which case the
85072 focused widget is activated.</doc>
85073         <return-value transfer-ownership="none">
85074           <doc xml:whitespace="preserve">%TRUE if a widget got activated.</doc>
85075           <type name="boolean" c:type="gboolean"/>
85076         </return-value>
85077       </method>
85078       <method name="set_transient_for"
85079               c:identifier="gtk_window_set_transient_for">
85080         <doc xml:whitespace="preserve">Dialog windows should be set transient for the main application
85081 window they were spawned from. This allows &lt;link
85082 linkend="gtk-X11-arch"&gt;window managers&lt;/link&gt; to e.g. keep the
85083 dialog on top of the main window, or center the dialog over the
85084 main window. gtk_dialog_new_with_buttons() and other convenience
85085 functions in GTK+ will sometimes call
85086 gtk_window_set_transient_for() on your behalf.
85087 Passing %NULL for @parent unsets the current transient window.
85088 On Windows, this function puts the child window on top of the parent,
85089 much as the window manager would have done on X.</doc>
85090         <return-value transfer-ownership="none">
85091           <type name="none" c:type="void"/>
85092         </return-value>
85093         <parameters>
85094           <parameter name="parent" transfer-ownership="none" allow-none="1">
85095             <doc xml:whitespace="preserve">parent window, or %NULL</doc>
85096             <type name="Window" c:type="GtkWindow*"/>
85097           </parameter>
85098         </parameters>
85099       </method>
85100       <method name="get_transient_for"
85101               c:identifier="gtk_window_get_transient_for">
85102         <doc xml:whitespace="preserve">Fetches the transient parent for this window. See
85103 gtk_window_set_transient_for().
85104 if no transient parent has been set.</doc>
85105         <return-value transfer-ownership="none">
85106           <doc xml:whitespace="preserve">the transient parent for this window, or %NULL</doc>
85107           <type name="Window" c:type="GtkWindow*"/>
85108         </return-value>
85109       </method>
85110       <method name="set_opacity"
85111               c:identifier="gtk_window_set_opacity"
85112               version="2.12">
85113         <doc xml:whitespace="preserve">Request the windowing system to make @window partially transparent,
85114 with opacity 0 being fully transparent and 1 fully opaque. (Values
85115 of the opacity parameter are clamped to the [0,1] range.) On X11
85116 this has any effect only on X screens with a compositing manager
85117 running. See gtk_widget_is_composited(). On Windows it should work
85118 always.
85119 Note that setting a window's opacity after the window has been
85120 shown causes it to flicker once on Windows.</doc>
85121         <return-value transfer-ownership="none">
85122           <type name="none" c:type="void"/>
85123         </return-value>
85124         <parameters>
85125           <parameter name="opacity" transfer-ownership="none">
85126             <doc xml:whitespace="preserve">desired opacity, between 0 and 1</doc>
85127             <type name="double" c:type="gdouble"/>
85128           </parameter>
85129         </parameters>
85130       </method>
85131       <method name="get_opacity"
85132               c:identifier="gtk_window_get_opacity"
85133               version="2.12">
85134         <doc xml:whitespace="preserve">Fetches the requested opacity for this window. See
85135 gtk_window_set_opacity().</doc>
85136         <return-value transfer-ownership="none">
85137           <doc xml:whitespace="preserve">the requested opacity for this window.</doc>
85138           <type name="double" c:type="gdouble"/>
85139         </return-value>
85140       </method>
85141       <method name="set_type_hint" c:identifier="gtk_window_set_type_hint">
85142         <doc xml:whitespace="preserve">By setting the type hint for the window, you allow the window
85143 manager to decorate and handle the window in a way which is
85144 suitable to the function of the window in your application.
85145 This function should be called before the window becomes visible.
85146 gtk_dialog_new_with_buttons() and other convenience functions in GTK+
85147 will sometimes call gtk_window_set_type_hint() on your behalf.</doc>
85148         <return-value transfer-ownership="none">
85149           <type name="none" c:type="void"/>
85150         </return-value>
85151         <parameters>
85152           <parameter name="hint" transfer-ownership="none">
85153             <doc xml:whitespace="preserve">the window type</doc>
85154             <type name="Gdk.WindowTypeHint" c:type="GdkWindowTypeHint"/>
85155           </parameter>
85156         </parameters>
85157       </method>
85158       <method name="get_type_hint" c:identifier="gtk_window_get_type_hint">
85159         <doc xml:whitespace="preserve">Gets the type hint for this window. See gtk_window_set_type_hint().</doc>
85160         <return-value transfer-ownership="full">
85161           <doc xml:whitespace="preserve">the type hint for @window.</doc>
85162           <type name="Gdk.WindowTypeHint" c:type="GdkWindowTypeHint"/>
85163         </return-value>
85164       </method>
85165       <method name="set_skip_taskbar_hint"
85166               c:identifier="gtk_window_set_skip_taskbar_hint"
85167               version="2.2">
85168         <doc xml:whitespace="preserve">Windows may set a hint asking the desktop environment not to display
85169 the window in the task bar. This function sets this hint.</doc>
85170         <return-value transfer-ownership="none">
85171           <type name="none" c:type="void"/>
85172         </return-value>
85173         <parameters>
85174           <parameter name="setting" transfer-ownership="none">
85175             <doc xml:whitespace="preserve">%TRUE to keep this window from appearing in the task bar</doc>
85176             <type name="boolean" c:type="gboolean"/>
85177           </parameter>
85178         </parameters>
85179       </method>
85180       <method name="get_skip_taskbar_hint"
85181               c:identifier="gtk_window_get_skip_taskbar_hint"
85182               version="2.2">
85183         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_skip_taskbar_hint()</doc>
85184         <return-value transfer-ownership="none">
85185           <doc xml:whitespace="preserve">%TRUE if window shouldn't be in taskbar</doc>
85186           <type name="boolean" c:type="gboolean"/>
85187         </return-value>
85188       </method>
85189       <method name="set_skip_pager_hint"
85190               c:identifier="gtk_window_set_skip_pager_hint"
85191               version="2.2">
85192         <doc xml:whitespace="preserve">Windows may set a hint asking the desktop environment not to display
85193 the window in the pager. This function sets this hint.
85194 (A "pager" is any desktop navigation tool such as a workspace
85195 switcher that displays a thumbnail representation of the windows
85196 on the screen.)</doc>
85197         <return-value transfer-ownership="none">
85198           <type name="none" c:type="void"/>
85199         </return-value>
85200         <parameters>
85201           <parameter name="setting" transfer-ownership="none">
85202             <doc xml:whitespace="preserve">%TRUE to keep this window from appearing in the pager</doc>
85203             <type name="boolean" c:type="gboolean"/>
85204           </parameter>
85205         </parameters>
85206       </method>
85207       <method name="get_skip_pager_hint"
85208               c:identifier="gtk_window_get_skip_pager_hint"
85209               version="2.2">
85210         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_skip_pager_hint().</doc>
85211         <return-value transfer-ownership="none">
85212           <doc xml:whitespace="preserve">%TRUE if window shouldn't be in pager</doc>
85213           <type name="boolean" c:type="gboolean"/>
85214         </return-value>
85215       </method>
85216       <method name="set_urgency_hint"
85217               c:identifier="gtk_window_set_urgency_hint"
85218               version="2.8">
85219         <doc xml:whitespace="preserve">Windows may set a hint asking the desktop environment to draw
85220 the users attention to the window. This function sets this hint.</doc>
85221         <return-value transfer-ownership="none">
85222           <type name="none" c:type="void"/>
85223         </return-value>
85224         <parameters>
85225           <parameter name="setting" transfer-ownership="none">
85226             <doc xml:whitespace="preserve">%TRUE to mark this window as urgent</doc>
85227             <type name="boolean" c:type="gboolean"/>
85228           </parameter>
85229         </parameters>
85230       </method>
85231       <method name="get_urgency_hint"
85232               c:identifier="gtk_window_get_urgency_hint"
85233               version="2.8">
85234         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_urgency_hint()</doc>
85235         <return-value transfer-ownership="none">
85236           <doc xml:whitespace="preserve">%TRUE if window is urgent</doc>
85237           <type name="boolean" c:type="gboolean"/>
85238         </return-value>
85239       </method>
85240       <method name="set_accept_focus"
85241               c:identifier="gtk_window_set_accept_focus"
85242               version="2.4">
85243         <doc xml:whitespace="preserve">Windows may set a hint asking the desktop environment not to receive
85244 the input focus. This function sets this hint.</doc>
85245         <return-value transfer-ownership="none">
85246           <type name="none" c:type="void"/>
85247         </return-value>
85248         <parameters>
85249           <parameter name="setting" transfer-ownership="none">
85250             <doc xml:whitespace="preserve">%TRUE to let this window receive input focus</doc>
85251             <type name="boolean" c:type="gboolean"/>
85252           </parameter>
85253         </parameters>
85254       </method>
85255       <method name="get_accept_focus"
85256               c:identifier="gtk_window_get_accept_focus"
85257               version="2.4">
85258         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_accept_focus().</doc>
85259         <return-value transfer-ownership="none">
85260           <doc xml:whitespace="preserve">%TRUE if window should receive the input focus</doc>
85261           <type name="boolean" c:type="gboolean"/>
85262         </return-value>
85263       </method>
85264       <method name="set_focus_on_map"
85265               c:identifier="gtk_window_set_focus_on_map"
85266               version="2.6">
85267         <doc xml:whitespace="preserve">Windows may set a hint asking the desktop environment not to receive
85268 the input focus when the window is mapped.  This function sets this
85269 hint.</doc>
85270         <return-value transfer-ownership="none">
85271           <type name="none" c:type="void"/>
85272         </return-value>
85273         <parameters>
85274           <parameter name="setting" transfer-ownership="none">
85275             <doc xml:whitespace="preserve">%TRUE to let this window receive input focus on map</doc>
85276             <type name="boolean" c:type="gboolean"/>
85277           </parameter>
85278         </parameters>
85279       </method>
85280       <method name="get_focus_on_map"
85281               c:identifier="gtk_window_get_focus_on_map"
85282               version="2.6">
85283         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_focus_on_map().
85284 mapped.</doc>
85285         <return-value transfer-ownership="none">
85286           <doc xml:whitespace="preserve">%TRUE if window should receive the input focus when</doc>
85287           <type name="boolean" c:type="gboolean"/>
85288         </return-value>
85289       </method>
85290       <method name="set_destroy_with_parent"
85291               c:identifier="gtk_window_set_destroy_with_parent">
85292         <doc xml:whitespace="preserve">If @setting is %TRUE, then destroying the transient parent of @window
85293 will also destroy @window itself. This is useful for dialogs that
85294 shouldn't persist beyond the lifetime of the main window they're
85295 associated with, for example.</doc>
85296         <return-value transfer-ownership="none">
85297           <type name="none" c:type="void"/>
85298         </return-value>
85299         <parameters>
85300           <parameter name="setting" transfer-ownership="none">
85301             <doc xml:whitespace="preserve">whether to destroy @window with its transient parent</doc>
85302             <type name="boolean" c:type="gboolean"/>
85303           </parameter>
85304         </parameters>
85305       </method>
85306       <method name="get_destroy_with_parent"
85307               c:identifier="gtk_window_get_destroy_with_parent">
85308         <doc xml:whitespace="preserve">Returns whether the window will be destroyed with its transient parent. See
85309 gtk_window_set_destroy_with_parent ().</doc>
85310         <return-value transfer-ownership="none">
85311           <doc xml:whitespace="preserve">%TRUE if the window will be destroyed with its transient parent.</doc>
85312           <type name="boolean" c:type="gboolean"/>
85313         </return-value>
85314       </method>
85315       <method name="set_mnemonics_visible"
85316               c:identifier="gtk_window_set_mnemonics_visible"
85317               version="2.20">
85318         <doc xml:whitespace="preserve">Sets the #GtkWindow:mnemonics-visible property.</doc>
85319         <return-value transfer-ownership="none">
85320           <type name="none" c:type="void"/>
85321         </return-value>
85322         <parameters>
85323           <parameter name="setting" transfer-ownership="none">
85324             <doc xml:whitespace="preserve">the new value</doc>
85325             <type name="boolean" c:type="gboolean"/>
85326           </parameter>
85327         </parameters>
85328       </method>
85329       <method name="get_mnemonics_visible"
85330               c:identifier="gtk_window_get_mnemonics_visible">
85331         <return-value transfer-ownership="none">
85332           <type name="boolean" c:type="gboolean"/>
85333         </return-value>
85334       </method>
85335       <method name="set_resizable" c:identifier="gtk_window_set_resizable">
85336         <doc xml:whitespace="preserve">Sets whether the user can resize a window. Windows are user resizable
85337 by default.</doc>
85338         <return-value transfer-ownership="none">
85339           <type name="none" c:type="void"/>
85340         </return-value>
85341         <parameters>
85342           <parameter name="resizable" transfer-ownership="none">
85343             <doc xml:whitespace="preserve">%TRUE if the user can resize this window</doc>
85344             <type name="boolean" c:type="gboolean"/>
85345           </parameter>
85346         </parameters>
85347       </method>
85348       <method name="get_resizable" c:identifier="gtk_window_get_resizable">
85349         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_resizable().</doc>
85350         <return-value transfer-ownership="none">
85351           <doc xml:whitespace="preserve">%TRUE if the user can resize the window</doc>
85352           <type name="boolean" c:type="gboolean"/>
85353         </return-value>
85354       </method>
85355       <method name="set_gravity" c:identifier="gtk_window_set_gravity">
85356         <doc xml:whitespace="preserve">Window gravity defines the meaning of coordinates passed to
85357 gtk_window_move(). See gtk_window_move() and #GdkGravity for
85358 more details.
85359 The default window gravity is #GDK_GRAVITY_NORTH_WEST which will
85360 typically "do what you mean."</doc>
85361         <return-value transfer-ownership="none">
85362           <type name="none" c:type="void"/>
85363         </return-value>
85364         <parameters>
85365           <parameter name="gravity" transfer-ownership="none">
85366             <doc xml:whitespace="preserve">window gravity</doc>
85367             <type name="Gdk.Gravity" c:type="GdkGravity"/>
85368           </parameter>
85369         </parameters>
85370       </method>
85371       <method name="get_gravity" c:identifier="gtk_window_get_gravity">
85372         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_gravity().</doc>
85373         <return-value transfer-ownership="none">
85374           <doc xml:whitespace="preserve">window gravity</doc>
85375           <type name="Gdk.Gravity" c:type="GdkGravity"/>
85376         </return-value>
85377       </method>
85378       <method name="set_geometry_hints"
85379               c:identifier="gtk_window_set_geometry_hints">
85380         <doc xml:whitespace="preserve">This function sets up hints about how a window can be resized by
85381 the user.  You can set a minimum and maximum size; allowed resize
85382 increments (e.g. for xterm, you can only resize by the size of a
85383 character); aspect ratios; and more. See the #GdkGeometry struct.</doc>
85384         <return-value transfer-ownership="none">
85385           <type name="none" c:type="void"/>
85386         </return-value>
85387         <parameters>
85388           <parameter name="geometry_widget" transfer-ownership="none">
85389             <doc xml:whitespace="preserve">widget the geometry hints will be applied to</doc>
85390             <type name="Widget" c:type="GtkWidget*"/>
85391           </parameter>
85392           <parameter name="geometry" transfer-ownership="none">
85393             <doc xml:whitespace="preserve">struct containing geometry information</doc>
85394             <type name="Gdk.Geometry" c:type="GdkGeometry*"/>
85395           </parameter>
85396           <parameter name="geom_mask" transfer-ownership="none">
85397             <doc xml:whitespace="preserve">mask indicating which struct fields should be paid attention to</doc>
85398             <type name="Gdk.WindowHints" c:type="GdkWindowHints"/>
85399           </parameter>
85400         </parameters>
85401       </method>
85402       <method name="set_screen" c:identifier="gtk_window_set_screen">
85403         <return-value transfer-ownership="none">
85404           <type name="none" c:type="void"/>
85405         </return-value>
85406         <parameters>
85407           <parameter name="screen" transfer-ownership="none">
85408             <type name="Gdk.Screen" c:type="GdkScreen*"/>
85409           </parameter>
85410         </parameters>
85411       </method>
85412       <method name="get_screen" c:identifier="gtk_window_get_screen">
85413         <return-value transfer-ownership="full">
85414           <type name="Gdk.Screen" c:type="GdkScreen*"/>
85415         </return-value>
85416       </method>
85417       <method name="is_active"
85418               c:identifier="gtk_window_is_active"
85419               version="2.4">
85420         <doc xml:whitespace="preserve">Returns whether the window is part of the current active toplevel.
85421 (That is, the toplevel window receiving keystrokes.)
85422 The return value is %TRUE if the window is active toplevel
85423 itself, but also if it is, say, a #GtkPlug embedded in the active toplevel.
85424 You might use this function if you wanted to draw a widget
85425 differently in an active window from a widget in an inactive window.
85426 See gtk_window_has_toplevel_focus()</doc>
85427         <return-value transfer-ownership="none">
85428           <doc xml:whitespace="preserve">%TRUE if the window part of the current active window.</doc>
85429           <type name="boolean" c:type="gboolean"/>
85430         </return-value>
85431       </method>
85432       <method name="has_toplevel_focus"
85433               c:identifier="gtk_window_has_toplevel_focus"
85434               version="2.4">
85435         <doc xml:whitespace="preserve">Returns whether the input focus is within this GtkWindow.
85436 For real toplevel windows, this is identical to gtk_window_is_active(),
85437 but for embedded windows, like #GtkPlug, the results will differ.</doc>
85438         <return-value transfer-ownership="none">
85439           <doc xml:whitespace="preserve">%TRUE if the input focus is within this GtkWindow</doc>
85440           <type name="boolean" c:type="gboolean"/>
85441         </return-value>
85442       </method>
85443       <method name="set_has_frame" c:identifier="gtk_window_set_has_frame">
85444         <doc xml:whitespace="preserve">(Note: this is a special-purpose function for the framebuffer port,
85445 that causes GTK+ to draw its own window border. For most applications,
85446 you want gtk_window_set_decorated() instead, which tells the window
85447 manager whether to draw the window border.)
85448 If this function is called on a window with setting of %TRUE, before
85449 it is realized or showed, it will have a "frame" window around
85450 frame_event you can receive all events targeted at the frame.
85451 This function is used by the linux-fb port to implement managed
85452 windows, but it could conceivably be used by X-programs that
85453 want to do their own window decorations.</doc>
85454         <return-value transfer-ownership="none">
85455           <type name="none" c:type="void"/>
85456         </return-value>
85457         <parameters>
85458           <parameter name="setting" transfer-ownership="none">
85459             <doc xml:whitespace="preserve">a boolean</doc>
85460             <type name="boolean" c:type="gboolean"/>
85461           </parameter>
85462         </parameters>
85463       </method>
85464       <method name="get_has_frame" c:identifier="gtk_window_get_has_frame">
85465         <doc xml:whitespace="preserve">Accessor for whether the window has a frame window exterior to
85466 via gtk_window_set_has_frame().</doc>
85467         <return-value transfer-ownership="none">
85468           <doc xml:whitespace="preserve">%TRUE if a frame has been added to the window</doc>
85469           <type name="boolean" c:type="gboolean"/>
85470         </return-value>
85471       </method>
85472       <method name="set_frame_dimensions"
85473               c:identifier="gtk_window_set_frame_dimensions">
85474         <doc xml:whitespace="preserve">(Note: this is a special-purpose function intended for the framebuffer
85475 port; see gtk_window_set_has_frame(). It will have no effect on the
85476 window border drawn by the window manager, which is the normal
85477 case when using the X Window system.)
85478 For windows with frames (see gtk_window_set_has_frame()) this function
85479 can be used to change the size of the frame border.</doc>
85480         <return-value transfer-ownership="none">
85481           <type name="none" c:type="void"/>
85482         </return-value>
85483         <parameters>
85484           <parameter name="left" transfer-ownership="none">
85485             <doc xml:whitespace="preserve">The width of the left border</doc>
85486             <type name="int" c:type="gint"/>
85487           </parameter>
85488           <parameter name="top" transfer-ownership="none">
85489             <doc xml:whitespace="preserve">The height of the top border</doc>
85490             <type name="int" c:type="gint"/>
85491           </parameter>
85492           <parameter name="right" transfer-ownership="none">
85493             <doc xml:whitespace="preserve">The width of the right border</doc>
85494             <type name="int" c:type="gint"/>
85495           </parameter>
85496           <parameter name="bottom" transfer-ownership="none">
85497             <doc xml:whitespace="preserve">The height of the bottom border</doc>
85498             <type name="int" c:type="gint"/>
85499           </parameter>
85500         </parameters>
85501       </method>
85502       <method name="get_frame_dimensions"
85503               c:identifier="gtk_window_get_frame_dimensions">
85504         <doc xml:whitespace="preserve">(Note: this is a special-purpose function intended for the
85505 framebuffer port; see gtk_window_set_has_frame(). It will not
85506 return the size of the window border drawn by the &lt;link
85507 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;, which is the normal
85508 case when using a windowing system.  See
85509 gdk_window_get_frame_extents() to get the standard window border
85510 extents.)
85511 Retrieves the dimensions of the frame window for this toplevel.
85512 See gtk_window_set_has_frame(), gtk_window_set_frame_dimensions().</doc>
85513         <return-value transfer-ownership="none">
85514           <type name="none" c:type="void"/>
85515         </return-value>
85516         <parameters>
85517           <parameter name="left"
85518                      direction="out"
85519                      caller-allocates="0"
85520                      transfer-ownership="full"
85521                      allow-none="1">
85522             <doc xml:whitespace="preserve">location to store the width of the frame at the left, or %NULL</doc>
85523             <type name="int" c:type="gint*"/>
85524           </parameter>
85525           <parameter name="top"
85526                      direction="out"
85527                      caller-allocates="0"
85528                      transfer-ownership="full"
85529                      allow-none="1">
85530             <doc xml:whitespace="preserve">location to store the height of the frame at the top, or %NULL</doc>
85531             <type name="int" c:type="gint*"/>
85532           </parameter>
85533           <parameter name="right"
85534                      direction="out"
85535                      caller-allocates="0"
85536                      transfer-ownership="full"
85537                      allow-none="1">
85538             <doc xml:whitespace="preserve">location to store the width of the frame at the returns, or %NULL</doc>
85539             <type name="int" c:type="gint*"/>
85540           </parameter>
85541           <parameter name="bottom"
85542                      direction="out"
85543                      caller-allocates="0"
85544                      transfer-ownership="full"
85545                      allow-none="1">
85546             <doc xml:whitespace="preserve">location to store the height of the frame at the bottom, or %NULL</doc>
85547             <type name="int" c:type="gint*"/>
85548           </parameter>
85549         </parameters>
85550       </method>
85551       <method name="set_decorated" c:identifier="gtk_window_set_decorated">
85552         <doc xml:whitespace="preserve">By default, windows are decorated with a title bar, resize
85553 controls, etc.  Some &lt;link linkend="gtk-X11-arch"&gt;window
85554 managers&lt;/link&gt; allow GTK+ to disable these decorations, creating a
85555 borderless window. If you set the decorated property to %FALSE
85556 using this function, GTK+ will do its best to convince the window
85557 manager not to decorate the window. Depending on the system, this
85558 function may not have any effect when called on a window that is
85559 already visible, so you should call it before calling gtk_window_show().
85560 On Windows, this function always works, since there's no window manager
85561 policy involved.</doc>
85562         <return-value transfer-ownership="none">
85563           <type name="none" c:type="void"/>
85564         </return-value>
85565         <parameters>
85566           <parameter name="setting" transfer-ownership="none">
85567             <doc xml:whitespace="preserve">%TRUE to decorate the window</doc>
85568             <type name="boolean" c:type="gboolean"/>
85569           </parameter>
85570         </parameters>
85571       </method>
85572       <method name="get_decorated" c:identifier="gtk_window_get_decorated">
85573         <doc xml:whitespace="preserve">Returns whether the window has been set to have decorations
85574 such as a title bar via gtk_window_set_decorated().</doc>
85575         <return-value transfer-ownership="none">
85576           <doc xml:whitespace="preserve">%TRUE if the window has been set to have decorations</doc>
85577           <type name="boolean" c:type="gboolean"/>
85578         </return-value>
85579       </method>
85580       <method name="set_deletable"
85581               c:identifier="gtk_window_set_deletable"
85582               version="2.10">
85583         <doc xml:whitespace="preserve">By default, windows have a close button in the window frame. Some 
85584 &lt;link linkend="gtk-X11-arch"&gt;window managers&lt;/link&gt; allow GTK+ to 
85585 disable this button. If you set the deletable property to %FALSE
85586 using this function, GTK+ will do its best to convince the window
85587 manager not to show a close button. Depending on the system, this
85588 function may not have any effect when called on a window that is
85589 already visible, so you should call it before calling gtk_window_show().
85590 On Windows, this function always works, since there's no window manager
85591 policy involved.</doc>
85592         <return-value transfer-ownership="none">
85593           <type name="none" c:type="void"/>
85594         </return-value>
85595         <parameters>
85596           <parameter name="setting" transfer-ownership="none">
85597             <doc xml:whitespace="preserve">%TRUE to decorate the window as deletable</doc>
85598             <type name="boolean" c:type="gboolean"/>
85599           </parameter>
85600         </parameters>
85601       </method>
85602       <method name="get_deletable"
85603               c:identifier="gtk_window_get_deletable"
85604               version="2.10">
85605         <doc xml:whitespace="preserve">Returns whether the window has been set to have a close button
85606 via gtk_window_set_deletable().</doc>
85607         <return-value transfer-ownership="none">
85608           <doc xml:whitespace="preserve">%TRUE if the window has been set to have a close button</doc>
85609           <type name="boolean" c:type="gboolean"/>
85610         </return-value>
85611       </method>
85612       <method name="set_icon_list"
85613               c:identifier="gtk_window_set_icon_list"
85614               introspectable="0">
85615         <doc xml:whitespace="preserve">Sets up the icon representing a #GtkWindow. The icon is used when
85616 the window is minimized (also known as iconified).  Some window
85617 managers or desktop environments may also place it in the window
85618 frame, or display it in other contexts.
85619 gtk_window_set_icon_list() allows you to pass in the same icon in
85620 several hand-drawn sizes. The list should contain the natural sizes
85621 your icon is available in; that is, don't scale the image before
85622 passing it to GTK+. Scaling is postponed until the last minute,
85623 when the desired final size is known, to allow best quality.
85624 By passing several sizes, you may improve the final image quality
85625 of the icon, by reducing or eliminating automatic image scaling.
85626 larger images (64x64, 128x128) if you have them.
85627 See also gtk_window_set_default_icon_list() to set the icon
85628 for all windows in your application in one go.
85629 Note that transient windows (those who have been set transient for another
85630 window using gtk_window_set_transient_for()) will inherit their
85631 icon from their transient parent. So there's no need to explicitly
85632 set the icon on transient windows.</doc>
85633         <return-value transfer-ownership="none">
85634           <type name="none" c:type="void"/>
85635         </return-value>
85636         <parameters>
85637           <parameter name="list" transfer-ownership="none">
85638             <doc xml:whitespace="preserve">list of #GdkPixbuf</doc>
85639             <type name="GLib.List" c:type="GList*">
85640               <type name="any" c:type="gpointer"/>
85641             </type>
85642           </parameter>
85643         </parameters>
85644       </method>
85645       <method name="get_icon_list" c:identifier="gtk_window_get_icon_list">
85646         <doc xml:whitespace="preserve">Retrieves the list of icons set by gtk_window_set_icon_list().
85647 The list is copied, but the reference count on each
85648 member won't be incremented.</doc>
85649         <return-value transfer-ownership="container">
85650           <doc xml:whitespace="preserve">copy of window's icon list</doc>
85651           <type name="GLib.List" c:type="GList*">
85652             <type name="GdkPixbuf.Pixbuf"/>
85653           </type>
85654         </return-value>
85655       </method>
85656       <method name="set_icon" c:identifier="gtk_window_set_icon">
85657         <doc xml:whitespace="preserve">Sets up the icon representing a #GtkWindow. This icon is used when
85658 the window is minimized (also known as iconified).  Some window
85659 managers or desktop environments may also place it in the window
85660 frame, or display it in other contexts.
85661 The icon should be provided in whatever size it was naturally
85662 drawn; that is, don't scale the image before passing it to
85663 GTK+. Scaling is postponed until the last minute, when the desired
85664 final size is known, to allow best quality.
85665 If you have your icon hand-drawn in multiple sizes, use
85666 gtk_window_set_icon_list(). Then the best size will be used.
85667 This function is equivalent to calling gtk_window_set_icon_list()
85668 with a 1-element list.
85669 See also gtk_window_set_default_icon_list() to set the icon
85670 for all windows in your application in one go.</doc>
85671         <return-value transfer-ownership="none">
85672           <type name="none" c:type="void"/>
85673         </return-value>
85674         <parameters>
85675           <parameter name="icon" transfer-ownership="none" allow-none="1">
85676             <doc xml:whitespace="preserve">icon image, or %NULL</doc>
85677             <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
85678           </parameter>
85679         </parameters>
85680       </method>
85681       <method name="set_icon_name"
85682               c:identifier="gtk_window_set_icon_name"
85683               version="2.6">
85684         <doc xml:whitespace="preserve">Sets the icon for the window from a named themed icon. See
85685 the docs for #GtkIconTheme for more details.
85686 Note that this has nothing to do with the WM_ICON_NAME 
85687 property which is mentioned in the ICCCM.</doc>
85688         <return-value transfer-ownership="none">
85689           <type name="none" c:type="void"/>
85690         </return-value>
85691         <parameters>
85692           <parameter name="name" transfer-ownership="none" allow-none="1">
85693             <doc xml:whitespace="preserve">the name of the themed icon</doc>
85694             <type name="utf8" c:type="gchar*"/>
85695           </parameter>
85696         </parameters>
85697       </method>
85698       <method name="set_icon_from_file"
85699               c:identifier="gtk_window_set_icon_from_file"
85700               version="2.2"
85701               throws="1">
85702         <doc xml:whitespace="preserve">Sets the icon for @window.  
85703 Warns on failure if @err is %NULL.
85704 This function is equivalent to calling gtk_window_set_icon()
85705 with a pixbuf created by loading the image from @filename.</doc>
85706         <return-value transfer-ownership="none">
85707           <doc xml:whitespace="preserve">%TRUE if setting the icon succeeded.</doc>
85708           <type name="boolean" c:type="gboolean"/>
85709         </return-value>
85710         <parameters>
85711           <parameter name="filename" transfer-ownership="none">
85712             <doc xml:whitespace="preserve">location of icon file</doc>
85713             <type name="utf8" c:type="gchar*"/>
85714           </parameter>
85715         </parameters>
85716       </method>
85717       <method name="get_icon" c:identifier="gtk_window_get_icon">
85718         <doc xml:whitespace="preserve">Gets the value set by gtk_window_set_icon() (or if you've
85719 called gtk_window_set_icon_list(), gets the first icon in
85720 the icon list).</doc>
85721         <return-value transfer-ownership="none">
85722           <doc xml:whitespace="preserve">icon for window</doc>
85723           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
85724         </return-value>
85725       </method>
85726       <method name="get_icon_name"
85727               c:identifier="gtk_window_get_icon_name"
85728               version="2.6">
85729         <doc xml:whitespace="preserve">Returns the name of the themed icon for the window,
85730 see gtk_window_set_icon_name().
85731 no themed icon</doc>
85732         <return-value transfer-ownership="none">
85733           <doc xml:whitespace="preserve">the icon name or %NULL if the window has</doc>
85734           <type name="utf8" c:type="gchar*"/>
85735         </return-value>
85736       </method>
85737       <method name="set_modal" c:identifier="gtk_window_set_modal">
85738         <doc xml:whitespace="preserve">Sets a window modal or non-modal. Modal windows prevent interaction
85739 with other windows in the same application. To keep modal dialogs
85740 on top of main application windows, use
85741 gtk_window_set_transient_for() to make the dialog transient for the
85742 parent; most &lt;link linkend="gtk-X11-arch"&gt;window managers&lt;/link&gt;
85743 will then disallow lowering the dialog below the parent.</doc>
85744         <return-value transfer-ownership="none">
85745           <type name="none" c:type="void"/>
85746         </return-value>
85747         <parameters>
85748           <parameter name="modal" transfer-ownership="none">
85749             <doc xml:whitespace="preserve">whether the window is modal</doc>
85750             <type name="boolean" c:type="gboolean"/>
85751           </parameter>
85752         </parameters>
85753       </method>
85754       <method name="get_modal" c:identifier="gtk_window_get_modal">
85755         <doc xml:whitespace="preserve">Returns whether the window is modal. See gtk_window_set_modal().
85756 establishes a grab when shown</doc>
85757         <return-value transfer-ownership="none">
85758           <doc xml:whitespace="preserve">%TRUE if the window is set to be modal and</doc>
85759           <type name="boolean" c:type="gboolean"/>
85760         </return-value>
85761       </method>
85762       <method name="add_mnemonic" c:identifier="gtk_window_add_mnemonic">
85763         <doc xml:whitespace="preserve">Adds a mnemonic to this window.</doc>
85764         <return-value transfer-ownership="none">
85765           <type name="none" c:type="void"/>
85766         </return-value>
85767         <parameters>
85768           <parameter name="keyval" transfer-ownership="none">
85769             <doc xml:whitespace="preserve">the mnemonic</doc>
85770             <type name="uint" c:type="guint"/>
85771           </parameter>
85772           <parameter name="target" transfer-ownership="none">
85773             <doc xml:whitespace="preserve">the widget that gets activated by the mnemonic</doc>
85774             <type name="Widget" c:type="GtkWidget*"/>
85775           </parameter>
85776         </parameters>
85777       </method>
85778       <method name="remove_mnemonic" c:identifier="gtk_window_remove_mnemonic">
85779         <doc xml:whitespace="preserve">Removes a mnemonic from this window.</doc>
85780         <return-value transfer-ownership="none">
85781           <type name="none" c:type="void"/>
85782         </return-value>
85783         <parameters>
85784           <parameter name="keyval" transfer-ownership="none">
85785             <doc xml:whitespace="preserve">the mnemonic</doc>
85786             <type name="uint" c:type="guint"/>
85787           </parameter>
85788           <parameter name="target" transfer-ownership="none">
85789             <doc xml:whitespace="preserve">the widget that gets activated by the mnemonic</doc>
85790             <type name="Widget" c:type="GtkWidget*"/>
85791           </parameter>
85792         </parameters>
85793       </method>
85794       <method name="mnemonic_activate"
85795               c:identifier="gtk_window_mnemonic_activate">
85796         <doc xml:whitespace="preserve">Activates the targets associated with the mnemonic.</doc>
85797         <return-value transfer-ownership="none">
85798           <doc xml:whitespace="preserve">%TRUE if the activation is done.</doc>
85799           <type name="boolean" c:type="gboolean"/>
85800         </return-value>
85801         <parameters>
85802           <parameter name="keyval" transfer-ownership="none">
85803             <doc xml:whitespace="preserve">the mnemonic</doc>
85804             <type name="uint" c:type="guint"/>
85805           </parameter>
85806           <parameter name="modifier" transfer-ownership="none">
85807             <doc xml:whitespace="preserve">the modifiers</doc>
85808             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
85809           </parameter>
85810         </parameters>
85811       </method>
85812       <method name="set_mnemonic_modifier"
85813               c:identifier="gtk_window_set_mnemonic_modifier">
85814         <doc xml:whitespace="preserve">Sets the mnemonic modifier for this window.</doc>
85815         <return-value transfer-ownership="none">
85816           <type name="none" c:type="void"/>
85817         </return-value>
85818         <parameters>
85819           <parameter name="modifier" transfer-ownership="none">
85820             <doc xml:whitespace="preserve">the modifier mask used to activate mnemonics on this window.</doc>
85821             <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
85822           </parameter>
85823         </parameters>
85824       </method>
85825       <method name="get_mnemonic_modifier"
85826               c:identifier="gtk_window_get_mnemonic_modifier">
85827         <doc xml:whitespace="preserve">Returns the mnemonic modifier for this window. See
85828 gtk_window_set_mnemonic_modifier().
85829 mnemonics on this window.</doc>
85830         <return-value transfer-ownership="full">
85831           <doc xml:whitespace="preserve">the modifier mask used to activate</doc>
85832           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
85833         </return-value>
85834       </method>
85835       <method name="activate_key"
85836               c:identifier="gtk_window_activate_key"
85837               version="2.4">
85838         <doc xml:whitespace="preserve">Activates mnemonics and accelerators for this #GtkWindow. This is normally
85839 called by the default ::key_press_event handler for toplevel windows,
85840 however in some cases it may be useful to call this directly when
85841 overriding the standard key handling for a toplevel window.</doc>
85842         <return-value transfer-ownership="none">
85843           <doc xml:whitespace="preserve">%TRUE if a mnemonic or accelerator was found and activated.</doc>
85844           <type name="boolean" c:type="gboolean"/>
85845         </return-value>
85846         <parameters>
85847           <parameter name="event" transfer-ownership="none">
85848             <doc xml:whitespace="preserve">a #GdkEventKey</doc>
85849             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
85850           </parameter>
85851         </parameters>
85852       </method>
85853       <method name="propagate_key_event"
85854               c:identifier="gtk_window_propagate_key_event"
85855               version="2.4">
85856         <doc xml:whitespace="preserve">Propagate a key press or release event to the focus widget and
85857 up the focus container chain until a widget handles @event.
85858 This is normally called by the default ::key_press_event and
85859 ::key_release_event handlers for toplevel windows,
85860 however in some cases it may be useful to call this directly when
85861 overriding the standard key handling for a toplevel window.</doc>
85862         <return-value transfer-ownership="none">
85863           <doc xml:whitespace="preserve">%TRUE if a widget in the focus chain handled the event.</doc>
85864           <type name="boolean" c:type="gboolean"/>
85865         </return-value>
85866         <parameters>
85867           <parameter name="event" transfer-ownership="none">
85868             <doc xml:whitespace="preserve">a #GdkEventKey</doc>
85869             <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
85870           </parameter>
85871         </parameters>
85872       </method>
85873       <method name="present" c:identifier="gtk_window_present">
85874         <doc xml:whitespace="preserve">Presents a window to the user. This may mean raising the window
85875 in the stacking order, deiconifying it, moving it to the current
85876 desktop, and/or giving it the keyboard focus, possibly dependent
85877 on the user's platform, window manager, and preferences.
85878 If @window is hidden, this function calls gtk_widget_show()
85879 as well.
85880 This function should be used when the user tries to open a window
85881 that's already open. Say for example the preferences dialog is
85882 currently open, and the user chooses Preferences from the menu
85883 a second time; use gtk_window_present() to move the already-open dialog
85884 where the user can see it.
85885 If you are calling this function in response to a user interaction,
85886 it is preferable to use gtk_window_present_with_time().</doc>
85887         <return-value transfer-ownership="none">
85888           <type name="none" c:type="void"/>
85889         </return-value>
85890       </method>
85891       <method name="present_with_time"
85892               c:identifier="gtk_window_present_with_time"
85893               version="2.8">
85894         <doc xml:whitespace="preserve">Presents a window to the user in response to a user interaction.
85895 If you need to present a window without a timestamp, use 
85896 gtk_window_present(). See gtk_window_present() for details.</doc>
85897         <return-value transfer-ownership="none">
85898           <type name="none" c:type="void"/>
85899         </return-value>
85900         <parameters>
85901           <parameter name="timestamp" transfer-ownership="none">
85902             <doc xml:whitespace="preserve">the timestamp of the user interaction (typically a button or key press event) which triggered this call</doc>
85903             <type name="uint32" c:type="guint32"/>
85904           </parameter>
85905         </parameters>
85906       </method>
85907       <method name="iconify" c:identifier="gtk_window_iconify">
85908         <doc xml:whitespace="preserve">Asks to iconify (i.e. minimize) the specified @window. Note that
85909 you shouldn't assume the window is definitely iconified afterward,
85910 because other entities (e.g. the user or &lt;link
85911 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could deiconify it
85912 again, or there may not be a window manager in which case
85913 iconification isn't possible, etc. But normally the window will end
85914 up iconified. Just don't write code that crashes if not.
85915 It's permitted to call this function before showing a window,
85916 in which case the window will be iconified before it ever appears
85917 onscreen.
85918 You can track iconification via the "window-state-event" signal
85919 on #GtkWidget.</doc>
85920         <return-value transfer-ownership="none">
85921           <type name="none" c:type="void"/>
85922         </return-value>
85923       </method>
85924       <method name="deiconify" c:identifier="gtk_window_deiconify">
85925         <doc xml:whitespace="preserve">Asks to deiconify (i.e. unminimize) the specified @window. Note
85926 that you shouldn't assume the window is definitely deiconified
85927 afterward, because other entities (e.g. the user or &lt;link
85928 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could iconify it
85929 again before your code which assumes deiconification gets to run.
85930 You can track iconification via the "window-state-event" signal
85931 on #GtkWidget.</doc>
85932         <return-value transfer-ownership="none">
85933           <type name="none" c:type="void"/>
85934         </return-value>
85935       </method>
85936       <method name="stick" c:identifier="gtk_window_stick">
85937         <doc xml:whitespace="preserve">Asks to stick @window, which means that it will appear on all user
85938 desktops. Note that you shouldn't assume the window is definitely
85939 stuck afterward, because other entities (e.g. the user or &lt;link
85940 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could unstick it
85941 again, and some window managers do not support sticking
85942 windows. But normally the window will end up stuck. Just don't
85943 write code that crashes if not.
85944 It's permitted to call this function before showing a window.
85945 You can track stickiness via the "window-state-event" signal
85946 on #GtkWidget.</doc>
85947         <return-value transfer-ownership="none">
85948           <type name="none" c:type="void"/>
85949         </return-value>
85950       </method>
85951       <method name="unstick" c:identifier="gtk_window_unstick">
85952         <doc xml:whitespace="preserve">Asks to unstick @window, which means that it will appear on only
85953 one of the user's desktops. Note that you shouldn't assume the
85954 window is definitely unstuck afterward, because other entities
85955 (e.g. the user or &lt;link linkend="gtk-X11-arch"&gt;window
85956 manager&lt;/link&gt;) could stick it again. But normally the window will
85957 end up stuck. Just don't write code that crashes if not.
85958 You can track stickiness via the "window-state-event" signal
85959 on #GtkWidget.</doc>
85960         <return-value transfer-ownership="none">
85961           <type name="none" c:type="void"/>
85962         </return-value>
85963       </method>
85964       <method name="maximize" c:identifier="gtk_window_maximize">
85965         <doc xml:whitespace="preserve">Asks to maximize @window, so that it becomes full-screen. Note that
85966 you shouldn't assume the window is definitely maximized afterward,
85967 because other entities (e.g. the user or &lt;link
85968 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could unmaximize it
85969 again, and not all window managers support maximization. But
85970 normally the window will end up maximized. Just don't write code
85971 that crashes if not.
85972 It's permitted to call this function before showing a window,
85973 in which case the window will be maximized when it appears onscreen
85974 initially.
85975 You can track maximization via the "window-state-event" signal
85976 on #GtkWidget.</doc>
85977         <return-value transfer-ownership="none">
85978           <type name="none" c:type="void"/>
85979         </return-value>
85980       </method>
85981       <method name="unmaximize" c:identifier="gtk_window_unmaximize">
85982         <doc xml:whitespace="preserve">Asks to unmaximize @window. Note that you shouldn't assume the
85983 window is definitely unmaximized afterward, because other entities
85984 (e.g. the user or &lt;link linkend="gtk-X11-arch"&gt;window
85985 manager&lt;/link&gt;) could maximize it again, and not all window
85986 managers honor requests to unmaximize. But normally the window will
85987 end up unmaximized. Just don't write code that crashes if not.
85988 You can track maximization via the "window-state-event" signal
85989 on #GtkWidget.</doc>
85990         <return-value transfer-ownership="none">
85991           <type name="none" c:type="void"/>
85992         </return-value>
85993       </method>
85994       <method name="fullscreen"
85995               c:identifier="gtk_window_fullscreen"
85996               version="2.2">
85997         <doc xml:whitespace="preserve">Asks to place @window in the fullscreen state. Note that you
85998 shouldn't assume the window is definitely full screen afterward,
85999 because other entities (e.g. the user or &lt;link
86000 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could unfullscreen it
86001 again, and not all window managers honor requests to fullscreen
86002 windows. But normally the window will end up fullscreen. Just
86003 don't write code that crashes if not.
86004 You can track the fullscreen state via the "window-state-event" signal
86005 on #GtkWidget.</doc>
86006         <return-value transfer-ownership="none">
86007           <type name="none" c:type="void"/>
86008         </return-value>
86009       </method>
86010       <method name="unfullscreen"
86011               c:identifier="gtk_window_unfullscreen"
86012               version="2.2">
86013         <doc xml:whitespace="preserve">Asks to toggle off the fullscreen state for @window. Note that you
86014 shouldn't assume the window is definitely not full screen
86015 afterward, because other entities (e.g. the user or &lt;link
86016 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could fullscreen it
86017 again, and not all window managers honor requests to unfullscreen
86018 windows. But normally the window will end up restored to its normal
86019 state. Just don't write code that crashes if not.
86020 You can track the fullscreen state via the "window-state-event" signal
86021 on #GtkWidget.</doc>
86022         <return-value transfer-ownership="none">
86023           <type name="none" c:type="void"/>
86024         </return-value>
86025       </method>
86026       <method name="set_keep_above"
86027               c:identifier="gtk_window_set_keep_above"
86028               version="2.4">
86029         <doc xml:whitespace="preserve">Asks to keep @window above, so that it stays on top. Note that
86030 you shouldn't assume the window is definitely above afterward,
86031 because other entities (e.g. the user or &lt;link
86032 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could not keep it above,
86033 and not all window managers support keeping windows above. But
86034 normally the window will end kept above. Just don't write code
86035 that crashes if not.
86036 It's permitted to call this function before showing a window,
86037 in which case the window will be kept above when it appears onscreen
86038 initially.
86039 You can track the above state via the "window-state-event" signal
86040 on #GtkWidget.
86041 Note that, according to the &lt;ulink 
86042 url="http://www.freedesktop.org/Standards/wm-spec"&gt;Extended Window 
86043 Manager Hints&lt;/ulink&gt; specification, the above state is mainly meant 
86044 for user preferences and should not be used by applications e.g. for 
86045 drawing attention to their dialogs.</doc>
86046         <return-value transfer-ownership="none">
86047           <type name="none" c:type="void"/>
86048         </return-value>
86049         <parameters>
86050           <parameter name="setting" transfer-ownership="none">
86051             <doc xml:whitespace="preserve">whether to keep @window above other windows</doc>
86052             <type name="boolean" c:type="gboolean"/>
86053           </parameter>
86054         </parameters>
86055       </method>
86056       <method name="set_keep_below"
86057               c:identifier="gtk_window_set_keep_below"
86058               version="2.4">
86059         <doc xml:whitespace="preserve">Asks to keep @window below, so that it stays in bottom. Note that
86060 you shouldn't assume the window is definitely below afterward,
86061 because other entities (e.g. the user or &lt;link
86062 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt;) could not keep it below,
86063 and not all window managers support putting windows below. But
86064 normally the window will be kept below. Just don't write code
86065 that crashes if not.
86066 It's permitted to call this function before showing a window,
86067 in which case the window will be kept below when it appears onscreen
86068 initially.
86069 You can track the below state via the "window-state-event" signal
86070 on #GtkWidget.
86071 Note that, according to the &lt;ulink 
86072 url="http://www.freedesktop.org/Standards/wm-spec"&gt;Extended Window 
86073 Manager Hints&lt;/ulink&gt; specification, the above state is mainly meant 
86074 for user preferences and should not be used by applications e.g. for 
86075 drawing attention to their dialogs.</doc>
86076         <return-value transfer-ownership="none">
86077           <type name="none" c:type="void"/>
86078         </return-value>
86079         <parameters>
86080           <parameter name="setting" transfer-ownership="none">
86081             <doc xml:whitespace="preserve">whether to keep @window below other windows</doc>
86082             <type name="boolean" c:type="gboolean"/>
86083           </parameter>
86084         </parameters>
86085       </method>
86086       <method name="begin_resize_drag"
86087               c:identifier="gtk_window_begin_resize_drag">
86088         <doc xml:whitespace="preserve">Starts resizing a window. This function is used if an application
86089 has window resizing controls. When GDK can support it, the resize
86090 will be done using the standard mechanism for the &lt;link
86091 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt; or windowing
86092 system. Otherwise, GDK will try to emulate window resizing,
86093 potentially not all that well, depending on the windowing system.</doc>
86094         <return-value transfer-ownership="none">
86095           <type name="none" c:type="void"/>
86096         </return-value>
86097         <parameters>
86098           <parameter name="edge" transfer-ownership="none">
86099             <doc xml:whitespace="preserve">position of the resize control</doc>
86100             <type name="Gdk.WindowEdge" c:type="GdkWindowEdge"/>
86101           </parameter>
86102           <parameter name="button" transfer-ownership="none">
86103             <doc xml:whitespace="preserve">mouse button that initiated the drag</doc>
86104             <type name="int" c:type="gint"/>
86105           </parameter>
86106           <parameter name="root_x" transfer-ownership="none">
86107             <doc xml:whitespace="preserve">X position where the user clicked to initiate the drag, in root window coordinates</doc>
86108             <type name="int" c:type="gint"/>
86109           </parameter>
86110           <parameter name="root_y" transfer-ownership="none">
86111             <doc xml:whitespace="preserve">Y position where the user clicked to initiate the drag</doc>
86112             <type name="int" c:type="gint"/>
86113           </parameter>
86114           <parameter name="timestamp" transfer-ownership="none">
86115             <doc xml:whitespace="preserve">timestamp from the click event that initiated the drag</doc>
86116             <type name="uint32" c:type="guint32"/>
86117           </parameter>
86118         </parameters>
86119       </method>
86120       <method name="begin_move_drag" c:identifier="gtk_window_begin_move_drag">
86121         <doc xml:whitespace="preserve">Starts moving a window. This function is used if an application has
86122 window movement grips. When GDK can support it, the window movement
86123 will be done using the standard mechanism for the &lt;link
86124 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt; or windowing
86125 system. Otherwise, GDK will try to emulate window movement,
86126 potentially not all that well, depending on the windowing system.</doc>
86127         <return-value transfer-ownership="none">
86128           <type name="none" c:type="void"/>
86129         </return-value>
86130         <parameters>
86131           <parameter name="button" transfer-ownership="none">
86132             <doc xml:whitespace="preserve">mouse button that initiated the drag</doc>
86133             <type name="int" c:type="gint"/>
86134           </parameter>
86135           <parameter name="root_x" transfer-ownership="none">
86136             <doc xml:whitespace="preserve">X position where the user clicked to initiate the drag, in root window coordinates</doc>
86137             <type name="int" c:type="gint"/>
86138           </parameter>
86139           <parameter name="root_y" transfer-ownership="none">
86140             <doc xml:whitespace="preserve">Y position where the user clicked to initiate the drag</doc>
86141             <type name="int" c:type="gint"/>
86142           </parameter>
86143           <parameter name="timestamp" transfer-ownership="none">
86144             <doc xml:whitespace="preserve">timestamp from the click event that initiated the drag</doc>
86145             <type name="uint32" c:type="guint32"/>
86146           </parameter>
86147         </parameters>
86148       </method>
86149       <method name="set_policy" c:identifier="gtk_window_set_policy">
86150         <return-value transfer-ownership="none">
86151           <type name="none" c:type="void"/>
86152         </return-value>
86153         <parameters>
86154           <parameter name="allow_shrink" transfer-ownership="none">
86155             <type name="int" c:type="gint"/>
86156           </parameter>
86157           <parameter name="allow_grow" transfer-ownership="none">
86158             <type name="int" c:type="gint"/>
86159           </parameter>
86160           <parameter name="auto_shrink" transfer-ownership="none">
86161             <type name="int" c:type="gint"/>
86162           </parameter>
86163         </parameters>
86164       </method>
86165       <method name="set_default_size"
86166               c:identifier="gtk_window_set_default_size">
86167         <doc xml:whitespace="preserve">Sets the default size of a window. If the window's "natural" size
86168 (its size request) is larger than the default, the default will be
86169 ignored. More generally, if the default size does not obey the
86170 geometry hints for the window (gtk_window_set_geometry_hints() can
86171 be used to set these explicitly), the default size will be clamped
86172 to the nearest permitted size.
86173 Unlike gtk_widget_set_size_request(), which sets a size request for
86174 a widget and thus would keep users from shrinking the window, this
86175 function only sets the initial size, just as if the user had
86176 resized the window themselves. Users can still shrink the window
86177 again as they normally would. Setting a default size of -1 means to
86178 use the "natural" default size (the size request of the window).
86179 For more control over a window's initial size and how resizing works,
86180 investigate gtk_window_set_geometry_hints().
86181 For some uses, gtk_window_resize() is a more appropriate function.
86182 gtk_window_resize() changes the current size of the window, rather
86183 than the size to be used on initial display. gtk_window_resize() always
86184 affects the window itself, not the geometry widget.
86185 The default size of a window only affects the first time a window is
86186 shown; if a window is hidden and re-shown, it will remember the size
86187 it had prior to hiding, rather than using the default size.
86188 Windows can't actually be 0x0 in size, they must be at least 1x1, but
86189 passing 0 for @width and @height is OK, resulting in a 1x1 default size.</doc>
86190         <return-value transfer-ownership="none">
86191           <type name="none" c:type="void"/>
86192         </return-value>
86193         <parameters>
86194           <parameter name="width" transfer-ownership="none">
86195             <doc xml:whitespace="preserve">width in pixels, or -1 to unset the default width</doc>
86196             <type name="int" c:type="gint"/>
86197           </parameter>
86198           <parameter name="height" transfer-ownership="none">
86199             <doc xml:whitespace="preserve">height in pixels, or -1 to unset the default height</doc>
86200             <type name="int" c:type="gint"/>
86201           </parameter>
86202         </parameters>
86203       </method>
86204       <method name="get_default_size"
86205               c:identifier="gtk_window_get_default_size">
86206         <doc xml:whitespace="preserve">Gets the default size of the window. A value of -1 for the width or
86207 height indicates that a default size has not been explicitly set
86208 for that dimension, so the "natural" size of the window will be
86209 used.</doc>
86210         <return-value transfer-ownership="none">
86211           <type name="none" c:type="void"/>
86212         </return-value>
86213         <parameters>
86214           <parameter name="width"
86215                      direction="out"
86216                      caller-allocates="0"
86217                      transfer-ownership="full"
86218                      allow-none="1">
86219             <doc xml:whitespace="preserve">location to store the default width, or %NULL</doc>
86220             <type name="int" c:type="gint*"/>
86221           </parameter>
86222           <parameter name="height"
86223                      direction="out"
86224                      caller-allocates="0"
86225                      transfer-ownership="full"
86226                      allow-none="1">
86227             <doc xml:whitespace="preserve">location to store the default height, or %NULL</doc>
86228             <type name="int" c:type="gint*"/>
86229           </parameter>
86230         </parameters>
86231       </method>
86232       <method name="resize" c:identifier="gtk_window_resize">
86233         <doc xml:whitespace="preserve">Resizes the window as if the user had done so, obeying geometry
86234 constraints. The default geometry constraint is that windows may
86235 not be smaller than their size request; to override this
86236 constraint, call gtk_widget_set_size_request() to set the window's
86237 request to a smaller value.
86238 If gtk_window_resize() is called before showing a window for the
86239 first time, it overrides any default size set with
86240 gtk_window_set_default_size().
86241 Windows may not be resized smaller than 1 by 1 pixels.</doc>
86242         <return-value transfer-ownership="none">
86243           <type name="none" c:type="void"/>
86244         </return-value>
86245         <parameters>
86246           <parameter name="width" transfer-ownership="none">
86247             <doc xml:whitespace="preserve">width in pixels to resize the window to</doc>
86248             <type name="int" c:type="gint"/>
86249           </parameter>
86250           <parameter name="height" transfer-ownership="none">
86251             <doc xml:whitespace="preserve">height in pixels to resize the window to</doc>
86252             <type name="int" c:type="gint"/>
86253           </parameter>
86254         </parameters>
86255       </method>
86256       <method name="get_size" c:identifier="gtk_window_get_size">
86257         <doc xml:whitespace="preserve">Obtains the current size of @window. If @window is not onscreen,
86258 it returns the size GTK+ will suggest to the &lt;link
86259 linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt; for the initial window
86260 size (but this is not reliably the same as the size the window
86261 manager will actually select). The size obtained by
86262 gtk_window_get_size() is the last size received in a
86263 #GdkEventConfigure, that is, GTK+ uses its locally-stored size,
86264 rather than querying the X server for the size. As a result, if you
86265 call gtk_window_resize() then immediately call
86266 gtk_window_get_size(), the size won't have taken effect yet. After
86267 the window manager processes the resize request, GTK+ receives
86268 notification that the size has changed via a configure event, and
86269 the size of the window gets updated.
86270 because the size of the window may change between the time that you
86271 get the size and the time that you perform some action assuming
86272 that size is the current size. To avoid race conditions, connect to
86273 "configure-event" on the window and adjust your size-dependent
86274 state to match the size delivered in the #GdkEventConfigure.
86275 size of the window manager decorations (aka the window frame or
86276 border). Those are not drawn by GTK+ and GTK+ has no reliable
86277 method of determining their size.
86278 the window onscreen, there may be a better way. The preferred
86279 way is to simply set the window's semantic type with
86280 gtk_window_set_type_hint(), which allows the window manager to
86281 e.g. center dialogs. Also, if you set the transient parent of
86282 dialogs with gtk_window_set_transient_for() window managers
86283 will often center the dialog over its parent window. It's
86284 much preferred to let the window manager handle these
86285 things rather than doing it yourself, because all apps will
86286 behave consistently and according to user prefs if the window
86287 manager handles it. Also, the window manager can take the size
86288 of the window decorations/border into account, while your
86289 application cannot.
86290 In any case, if you insist on application-specified window
86291 positioning, there's &lt;emphasis&gt;still&lt;/emphasis&gt; a better way than
86292 doing it yourself - gtk_window_set_position() will frequently
86293 handle the details for you.</doc>
86294         <return-value transfer-ownership="none">
86295           <type name="none" c:type="void"/>
86296         </return-value>
86297         <parameters>
86298           <parameter name="width"
86299                      direction="out"
86300                      caller-allocates="0"
86301                      transfer-ownership="full"
86302                      allow-none="1">
86303             <doc xml:whitespace="preserve">return location for width, or %NULL</doc>
86304             <type name="int" c:type="gint*"/>
86305           </parameter>
86306           <parameter name="height"
86307                      direction="out"
86308                      caller-allocates="0"
86309                      transfer-ownership="full"
86310                      allow-none="1">
86311             <doc xml:whitespace="preserve">return location for height, or %NULL</doc>
86312             <type name="int" c:type="gint*"/>
86313           </parameter>
86314         </parameters>
86315       </method>
86316       <method name="move" c:identifier="gtk_window_move">
86317         <doc xml:whitespace="preserve">Asks the &lt;link linkend="gtk-X11-arch"&gt;window manager&lt;/link&gt; to move
86318 this; most window managers ignore requests for initial window
86319 positions (instead using a user-defined placement algorithm) and
86320 honor requests after the window has already been shown.
86321 reference point for the window. The gravity determines two things:
86322 first, the location of the reference point in root window
86323 coordinates; and second, which point on the window is positioned at
86324 the reference point.
86325 By default the gravity is #GDK_GRAVITY_NORTH_WEST, so the reference
86326 point is simply the @x, @y supplied to gtk_window_move(). The
86327 top-left corner of the window decorations (aka window frame or
86328 border) will be placed at @x, @y.  Therefore, to position a window
86329 at the top left of the screen, you want to use the default gravity
86330 (which is #GDK_GRAVITY_NORTH_WEST) and move the window to 0,0.
86331 To position a window at the bottom right corner of the screen, you
86332 would set #GDK_GRAVITY_SOUTH_EAST, which means that the reference
86333 point is at @x + the window width and @y + the window height, and
86334 the bottom-right corner of the window border will be placed at that
86335 reference point. So, to place a window in the bottom right corner
86336 you would first set gravity to south east, then write:
86337 &lt;literal&gt;gtk_window_move (window, gdk_screen_width () - window_width,
86338 gdk_screen_height () - window_height)&lt;/literal&gt; (note that this
86339 example does not take multi-head scenarios into account).
86340 The Extended Window Manager Hints specification at &lt;ulink 
86341 url="http://www.freedesktop.org/Standards/wm-spec"&gt;
86342 http://www.freedesktop.org/Standards/wm-spec&lt;/ulink&gt; has a 
86343 nice table of gravities in the "implementation notes" section.
86344 The gtk_window_get_position() documentation may also be relevant.</doc>
86345         <return-value transfer-ownership="none">
86346           <type name="none" c:type="void"/>
86347         </return-value>
86348         <parameters>
86349           <parameter name="x" transfer-ownership="none">
86350             <doc xml:whitespace="preserve">X coordinate to move window to</doc>
86351             <type name="int" c:type="gint"/>
86352           </parameter>
86353           <parameter name="y" transfer-ownership="none">
86354             <doc xml:whitespace="preserve">Y coordinate to move window to</doc>
86355             <type name="int" c:type="gint"/>
86356           </parameter>
86357         </parameters>
86358       </method>
86359       <method name="get_position" c:identifier="gtk_window_get_position">
86360         <doc xml:whitespace="preserve">This function returns the position you need to pass to
86361 gtk_window_move() to keep @window in its current position.  This
86362 means that the meaning of the returned value varies with window
86363 gravity. See gtk_window_move() for more details.
86364 If you haven't changed the window gravity, its gravity will be
86365 #GDK_GRAVITY_NORTH_WEST. This means that gtk_window_get_position()
86366 gets the position of the top-left corner of the window manager
86367 frame for the window. gtk_window_move() sets the position of this
86368 same top-left corner.
86369 gtk_window_get_position() is not 100% reliable because the X Window System
86370 does not specify a way to obtain the geometry of the
86371 decorations placed on a window by the window manager.
86372 Thus GTK+ is using a "best guess" that works with most
86373 window managers.
86374 Moreover, nearly all window managers are historically broken with
86375 respect to their handling of window gravity. So moving a window to
86376 its current position as returned by gtk_window_get_position() tends
86377 to result in moving the window slightly. Window managers are
86378 slowly getting better over time.
86379 If a window has gravity #GDK_GRAVITY_STATIC the window manager
86380 frame is not relevant, and thus gtk_window_get_position() will
86381 always produce accurate results. However you can't use static
86382 gravity to do things like place a window in a corner of the screen,
86383 because static gravity ignores the window manager decorations.
86384 If you are saving and restoring your application's window
86385 positions, you should know that it's impossible for applications to
86386 do this without getting it somewhat wrong because applications do
86387 not have sufficient knowledge of window manager state. The Correct
86388 Mechanism is to support the session management protocol (see the
86389 "GnomeClient" object in the GNOME libraries for example) and allow
86390 the window manager to save your window sizes and positions.</doc>
86391         <return-value transfer-ownership="none">
86392           <type name="none" c:type="void"/>
86393         </return-value>
86394         <parameters>
86395           <parameter name="root_x"
86396                      direction="out"
86397                      caller-allocates="0"
86398                      transfer-ownership="full">
86399             <doc xml:whitespace="preserve">return location for X coordinate of gravity-determined reference point</doc>
86400             <type name="int" c:type="gint*"/>
86401           </parameter>
86402           <parameter name="root_y"
86403                      direction="out"
86404                      caller-allocates="0"
86405                      transfer-ownership="full">
86406             <doc xml:whitespace="preserve">return location for Y coordinate of gravity-determined reference point</doc>
86407             <type name="int" c:type="gint*"/>
86408           </parameter>
86409         </parameters>
86410       </method>
86411       <method name="parse_geometry" c:identifier="gtk_window_parse_geometry">
86412         <doc xml:whitespace="preserve">Parses a standard X Window System geometry string - see the
86413 manual page for X (type 'man X') for details on this.
86414 gtk_window_parse_geometry() does work on all GTK+ ports
86415 including Win32 but is primarily intended for an X environment.
86416 If either a size or a position can be extracted from the
86417 geometry string, gtk_window_parse_geometry() returns %TRUE
86418 and calls gtk_window_set_default_size() and/or gtk_window_move()
86419 to resize/move the window.
86420 If gtk_window_parse_geometry() returns %TRUE, it will also
86421 set the #GDK_HINT_USER_POS and/or #GDK_HINT_USER_SIZE hints
86422 indicating to the window manager that the size/position of
86423 the window was user-specified. This causes most window
86424 managers to honor the geometry.
86425 Note that for gtk_window_parse_geometry() to work as expected, it has
86426 to be called when the window has its "final" size, i.e. after calling
86427 gtk_widget_show_all() on the contents and gtk_window_set_geometry_hints()
86428 on the window.
86429 |[
86430 #include &lt;gtk/gtk.h&gt;
86431 static void
86432 fill_with_content (GtkWidget *vbox)
86433 {
86434 /&amp;ast; fill with content... &amp;ast;/
86435 }
86436 int
86437 main (int argc, char *argv[])
86438 {
86439 GtkWidget *window, *vbox;
86440 GdkGeometry size_hints = {
86441 100, 50, 0, 0, 100, 50, 10, 10, 0.0, 0.0, GDK_GRAVITY_NORTH_WEST  
86442 };
86443 gtk_init (&amp;argc, &amp;argv);
86444 window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
86445 vbox = gtk_vbox_new (FALSE, 0);
86446 gtk_container_add (GTK_CONTAINER (window), vbox);
86447 fill_with_content (vbox);
86448 gtk_widget_show_all (vbox);
86449 gtk_window_set_geometry_hints (GTK_WINDOW (window),
86450 window,
86451 &amp;size_hints,
86452 GDK_HINT_MIN_SIZE | 
86453 GDK_HINT_BASE_SIZE | 
86454 GDK_HINT_RESIZE_INC);
86455 if (argc &amp;gt; 1)
86456 {
86457 if (!gtk_window_parse_geometry (GTK_WINDOW (window), argv[1]))
86458 fprintf (stderr, "Failed to parse '%s'\n", argv[1]);
86459 }
86460 gtk_widget_show_all (window);
86461 gtk_main ();
86462 return 0;
86463 }
86464 ]|</doc>
86465         <return-value transfer-ownership="none">
86466           <doc xml:whitespace="preserve">%TRUE if string was parsed successfully</doc>
86467           <type name="boolean" c:type="gboolean"/>
86468         </return-value>
86469         <parameters>
86470           <parameter name="geometry" transfer-ownership="none">
86471             <doc xml:whitespace="preserve">geometry string</doc>
86472             <type name="utf8" c:type="gchar*"/>
86473           </parameter>
86474         </parameters>
86475       </method>
86476       <method name="get_group"
86477               c:identifier="gtk_window_get_group"
86478               version="2.10">
86479         <doc xml:whitespace="preserve">Returns the group for @window or the default group, if
86480 window group.</doc>
86481         <return-value transfer-ownership="none">
86482           <doc xml:whitespace="preserve">the #GtkWindowGroup for a window or the default group</doc>
86483           <type name="WindowGroup" c:type="GtkWindowGroup*"/>
86484         </return-value>
86485       </method>
86486       <method name="reshow_with_initial_size"
86487               c:identifier="gtk_window_reshow_with_initial_size">
86488         <doc xml:whitespace="preserve">Hides @window, then reshows it, resetting the
86489 default size and position of the window. Used
86490 by GUI builders only.</doc>
86491         <return-value transfer-ownership="none">
86492           <type name="none" c:type="void"/>
86493         </return-value>
86494       </method>
86495       <method name="get_window_type"
86496               c:identifier="gtk_window_get_window_type"
86497               version="2.20">
86498         <doc xml:whitespace="preserve">Gets the type of the window. See #GtkWindowType.</doc>
86499         <return-value transfer-ownership="full">
86500           <doc xml:whitespace="preserve">the type of the window</doc>
86501           <type name="WindowType" c:type="GtkWindowType"/>
86502         </return-value>
86503       </method>
86504       <method name="remove_embedded_xid"
86505               c:identifier="gtk_window_remove_embedded_xid">
86506         <return-value transfer-ownership="none">
86507           <type name="none" c:type="void"/>
86508         </return-value>
86509         <parameters>
86510           <parameter name="xid" transfer-ownership="none">
86511             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
86512           </parameter>
86513         </parameters>
86514       </method>
86515       <method name="add_embedded_xid"
86516               c:identifier="gtk_window_add_embedded_xid">
86517         <return-value transfer-ownership="none">
86518           <type name="none" c:type="void"/>
86519         </return-value>
86520         <parameters>
86521           <parameter name="xid" transfer-ownership="none">
86522             <type name="Gdk.NativeWindow" c:type="GdkNativeWindow"/>
86523           </parameter>
86524         </parameters>
86525       </method>
86526       <property name="accept-focus"
86527                 version="2.4"
86528                 writable="1"
86529                 transfer-ownership="none">
86530         <doc xml:whitespace="preserve">Whether the window should receive the input focus.</doc>
86531         <type name="boolean" c:type="gboolean"/>
86532       </property>
86533       <property name="allow-grow" writable="1" transfer-ownership="none">
86534         <type name="boolean" c:type="gboolean"/>
86535       </property>
86536       <property name="allow-shrink" writable="1" transfer-ownership="none">
86537         <type name="boolean" c:type="gboolean"/>
86538       </property>
86539       <property name="decorated"
86540                 version="2.4"
86541                 writable="1"
86542                 transfer-ownership="none">
86543         <doc xml:whitespace="preserve">Whether the window should be decorated by the window manager.</doc>
86544         <type name="boolean" c:type="gboolean"/>
86545       </property>
86546       <property name="default-height" writable="1" transfer-ownership="none">
86547         <type name="int" c:type="gint"/>
86548       </property>
86549       <property name="default-width" writable="1" transfer-ownership="none">
86550         <type name="int" c:type="gint"/>
86551       </property>
86552       <property name="deletable"
86553                 version="2.10"
86554                 writable="1"
86555                 transfer-ownership="none">
86556         <doc xml:whitespace="preserve">Whether the window frame should have a close button.</doc>
86557         <type name="boolean" c:type="gboolean"/>
86558       </property>
86559       <property name="destroy-with-parent"
86560                 writable="1"
86561                 transfer-ownership="none">
86562         <type name="boolean" c:type="gboolean"/>
86563       </property>
86564       <property name="focus-on-map"
86565                 version="2.6"
86566                 writable="1"
86567                 transfer-ownership="none">
86568         <doc xml:whitespace="preserve">Whether the window should receive the input focus when mapped.</doc>
86569         <type name="boolean" c:type="gboolean"/>
86570       </property>
86571       <property name="gravity"
86572                 version="2.4"
86573                 writable="1"
86574                 transfer-ownership="none">
86575         <doc xml:whitespace="preserve">The window gravity of the window. See gtk_window_move() and #GdkGravity for
86576 more details about window gravity.</doc>
86577         <type name="Gdk.Gravity" c:type="GdkGravity"/>
86578       </property>
86579       <property name="has-toplevel-focus" transfer-ownership="none">
86580         <type name="boolean" c:type="gboolean"/>
86581       </property>
86582       <property name="icon" writable="1" transfer-ownership="none">
86583         <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf"/>
86584       </property>
86585       <property name="icon-name"
86586                 version="2.6"
86587                 writable="1"
86588                 transfer-ownership="none">
86589         <doc xml:whitespace="preserve">The :icon-name property specifies the name of the themed icon to
86590 use as the window icon. See #GtkIconTheme for more details.</doc>
86591         <type name="utf8" c:type="gchararray"/>
86592       </property>
86593       <property name="is-active" transfer-ownership="none">
86594         <type name="boolean" c:type="gboolean"/>
86595       </property>
86596       <property name="mnemonics-visible"
86597                 writable="1"
86598                 transfer-ownership="none">
86599         <type name="boolean" c:type="gboolean"/>
86600       </property>
86601       <property name="modal" writable="1" transfer-ownership="none">
86602         <type name="boolean" c:type="gboolean"/>
86603       </property>
86604       <property name="opacity"
86605                 version="2.12"
86606                 writable="1"
86607                 transfer-ownership="none">
86608         <doc xml:whitespace="preserve">The requested opacity of the window. See gtk_window_set_opacity() for
86609 more details about window opacity.</doc>
86610         <type name="double" c:type="gdouble"/>
86611       </property>
86612       <property name="resizable" writable="1" transfer-ownership="none">
86613         <type name="boolean" c:type="gboolean"/>
86614       </property>
86615       <property name="role" writable="1" transfer-ownership="none">
86616         <type name="utf8" c:type="gchararray"/>
86617       </property>
86618       <property name="screen" writable="1" transfer-ownership="none">
86619         <type name="Gdk.Screen" c:type="GdkScreen"/>
86620       </property>
86621       <property name="skip-pager-hint" writable="1" transfer-ownership="none">
86622         <type name="boolean" c:type="gboolean"/>
86623       </property>
86624       <property name="skip-taskbar-hint"
86625                 writable="1"
86626                 transfer-ownership="none">
86627         <type name="boolean" c:type="gboolean"/>
86628       </property>
86629       <property name="startup-id"
86630                 version="2.12"
86631                 readable="0"
86632                 writable="1"
86633                 transfer-ownership="none">
86634         <doc xml:whitespace="preserve">The :startup-id is a write-only property for setting window's
86635 startup notification identifier. See gtk_window_set_startup_id()
86636 for more details.</doc>
86637         <type name="utf8" c:type="gchararray"/>
86638       </property>
86639       <property name="title" writable="1" transfer-ownership="none">
86640         <type name="utf8" c:type="gchararray"/>
86641       </property>
86642       <property name="transient-for"
86643                 version="2.10"
86644                 writable="1"
86645                 construct="1"
86646                 transfer-ownership="none">
86647         <doc xml:whitespace="preserve">The transient parent of the window. See gtk_window_set_transient_for() for
86648 more details about transient windows.</doc>
86649         <type name="Window" c:type="GtkWindow"/>
86650       </property>
86651       <property name="type"
86652                 writable="1"
86653                 construct-only="1"
86654                 transfer-ownership="none">
86655         <type name="WindowType" c:type="GtkWindowType"/>
86656       </property>
86657       <property name="type-hint" writable="1" transfer-ownership="none">
86658         <type name="Gdk.WindowTypeHint" c:type="GdkWindowTypeHint"/>
86659       </property>
86660       <property name="urgency-hint" writable="1" transfer-ownership="none">
86661         <type name="boolean" c:type="gboolean"/>
86662       </property>
86663       <property name="window-position" writable="1" transfer-ownership="none">
86664         <type name="WindowPosition" c:type="GtkWindowPosition"/>
86665       </property>
86666       <field name="bin">
86667         <type name="Bin" c:type="GtkBin"/>
86668       </field>
86669       <field name="title">
86670         <type name="utf8" c:type="gchar*"/>
86671       </field>
86672       <field name="wmclass_name">
86673         <type name="utf8" c:type="gchar*"/>
86674       </field>
86675       <field name="wmclass_class">
86676         <type name="utf8" c:type="gchar*"/>
86677       </field>
86678       <field name="wm_role">
86679         <type name="utf8" c:type="gchar*"/>
86680       </field>
86681       <field name="focus_widget">
86682         <type name="Widget" c:type="GtkWidget*"/>
86683       </field>
86684       <field name="default_widget">
86685         <type name="Widget" c:type="GtkWidget*"/>
86686       </field>
86687       <field name="transient_parent">
86688         <type name="Window" c:type="GtkWindow*"/>
86689       </field>
86690       <field name="geometry_info">
86691         <type name="WindowGeometryInfo" c:type="GtkWindowGeometryInfo*"/>
86692       </field>
86693       <field name="frame">
86694         <type name="Gdk.Window" c:type="GdkWindow*"/>
86695       </field>
86696       <field name="group">
86697         <type name="WindowGroup" c:type="GtkWindowGroup*"/>
86698       </field>
86699       <field name="configure_request_count">
86700         <type name="uint16" c:type="guint16"/>
86701       </field>
86702       <field name="allow_shrink" bits="1">
86703         <type name="uint" c:type="guint"/>
86704       </field>
86705       <field name="allow_grow" bits="1">
86706         <type name="uint" c:type="guint"/>
86707       </field>
86708       <field name="configure_notify_received" bits="1">
86709         <type name="uint" c:type="guint"/>
86710       </field>
86711       <field name="need_default_position" bits="1">
86712         <type name="uint" c:type="guint"/>
86713       </field>
86714       <field name="need_default_size" bits="1">
86715         <type name="uint" c:type="guint"/>
86716       </field>
86717       <field name="position" bits="3">
86718         <type name="uint" c:type="guint"/>
86719       </field>
86720       <field name="type" bits="4">
86721         <type name="uint" c:type="guint"/>
86722       </field>
86723       <field name="has_user_ref_count" bits="1">
86724         <type name="uint" c:type="guint"/>
86725       </field>
86726       <field name="has_focus" bits="1">
86727         <type name="uint" c:type="guint"/>
86728       </field>
86729       <field name="modal" bits="1">
86730         <type name="uint" c:type="guint"/>
86731       </field>
86732       <field name="destroy_with_parent" bits="1">
86733         <type name="uint" c:type="guint"/>
86734       </field>
86735       <field name="has_frame" bits="1">
86736         <type name="uint" c:type="guint"/>
86737       </field>
86738       <field name="iconify_initially" bits="1">
86739         <type name="uint" c:type="guint"/>
86740       </field>
86741       <field name="stick_initially" bits="1">
86742         <type name="uint" c:type="guint"/>
86743       </field>
86744       <field name="maximize_initially" bits="1">
86745         <type name="uint" c:type="guint"/>
86746       </field>
86747       <field name="decorated" bits="1">
86748         <type name="uint" c:type="guint"/>
86749       </field>
86750       <field name="type_hint" bits="3">
86751         <type name="uint" c:type="guint"/>
86752       </field>
86753       <field name="gravity" bits="5">
86754         <type name="uint" c:type="guint"/>
86755       </field>
86756       <field name="is_active" bits="1">
86757         <type name="uint" c:type="guint"/>
86758       </field>
86759       <field name="has_toplevel_focus" bits="1">
86760         <type name="uint" c:type="guint"/>
86761       </field>
86762       <field name="frame_left">
86763         <type name="uint" c:type="guint"/>
86764       </field>
86765       <field name="frame_top">
86766         <type name="uint" c:type="guint"/>
86767       </field>
86768       <field name="frame_right">
86769         <type name="uint" c:type="guint"/>
86770       </field>
86771       <field name="frame_bottom">
86772         <type name="uint" c:type="guint"/>
86773       </field>
86774       <field name="keys_changed_handler">
86775         <type name="uint" c:type="guint"/>
86776       </field>
86777       <field name="mnemonic_modifier">
86778         <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
86779       </field>
86780       <field name="screen">
86781         <type name="Gdk.Screen" c:type="GdkScreen*"/>
86782       </field>
86783       <glib:signal name="activate-default">
86784         <doc xml:whitespace="preserve">The ::activate-default signal is a
86785 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
86786 which gets emitted when the user activates the default widget
86787 of @window.</doc>
86788         <return-value transfer-ownership="full">
86789           <type name="none" c:type="void"/>
86790         </return-value>
86791       </glib:signal>
86792       <glib:signal name="activate-focus">
86793         <doc xml:whitespace="preserve">The ::activate-default signal is a
86794 &lt;link linkend="keybinding-signals"&gt;keybinding signal&lt;/link&gt;
86795 which gets emitted when the user activates the currently
86796 focused widget of @window.</doc>
86797         <return-value transfer-ownership="full">
86798           <type name="none" c:type="void"/>
86799         </return-value>
86800       </glib:signal>
86801       <glib:signal name="frame-event">
86802         <return-value transfer-ownership="full">
86803           <type name="boolean" c:type="gboolean"/>
86804         </return-value>
86805         <parameters>
86806           <parameter name="object" transfer-ownership="none">
86807             <type name="Gdk.Event" c:type="GdkEvent"/>
86808           </parameter>
86809         </parameters>
86810       </glib:signal>
86811       <glib:signal name="keys-changed">
86812         <doc xml:whitespace="preserve">The ::keys-changed signal gets emitted when the set of accelerators
86813 or mnemonics that are associated with @window changes.</doc>
86814         <return-value transfer-ownership="full">
86815           <type name="none" c:type="void"/>
86816         </return-value>
86817       </glib:signal>
86818       <glib:signal name="set-focus">
86819         <return-value transfer-ownership="full">
86820           <type name="none" c:type="void"/>
86821         </return-value>
86822         <parameters>
86823           <parameter name="object" transfer-ownership="none">
86824             <type name="Widget" c:type="GtkWidget"/>
86825           </parameter>
86826         </parameters>
86827       </glib:signal>
86828     </class>
86829     <record name="WindowClass"
86830             c:type="GtkWindowClass"
86831             glib:is-gtype-struct-for="Window">
86832       <field name="parent_class">
86833         <type name="BinClass" c:type="GtkBinClass"/>
86834       </field>
86835       <field name="set_focus">
86836         <callback name="set_focus" c:type="set_focus">
86837           <return-value transfer-ownership="none">
86838             <type name="none" c:type="void"/>
86839           </return-value>
86840           <parameters>
86841             <parameter name="window" transfer-ownership="none">
86842               <type name="Window" c:type="GtkWindow*"/>
86843             </parameter>
86844             <parameter name="focus" transfer-ownership="none">
86845               <type name="Widget" c:type="GtkWidget*"/>
86846             </parameter>
86847           </parameters>
86848         </callback>
86849       </field>
86850       <field name="frame_event">
86851         <callback name="frame_event" c:type="frame_event">
86852           <return-value transfer-ownership="none">
86853             <type name="boolean" c:type="gboolean"/>
86854           </return-value>
86855           <parameters>
86856             <parameter name="window" transfer-ownership="none">
86857               <type name="Window" c:type="GtkWindow*"/>
86858             </parameter>
86859             <parameter name="event" transfer-ownership="none">
86860               <type name="Gdk.Event" c:type="GdkEvent*"/>
86861             </parameter>
86862           </parameters>
86863         </callback>
86864       </field>
86865       <field name="activate_focus">
86866         <callback name="activate_focus" c:type="activate_focus">
86867           <return-value transfer-ownership="none">
86868             <type name="none" c:type="void"/>
86869           </return-value>
86870           <parameters>
86871             <parameter name="window" transfer-ownership="none">
86872               <type name="Window" c:type="GtkWindow*"/>
86873             </parameter>
86874           </parameters>
86875         </callback>
86876       </field>
86877       <field name="activate_default">
86878         <callback name="activate_default" c:type="activate_default">
86879           <return-value transfer-ownership="none">
86880             <type name="none" c:type="void"/>
86881           </return-value>
86882           <parameters>
86883             <parameter name="window" transfer-ownership="none">
86884               <type name="Window" c:type="GtkWindow*"/>
86885             </parameter>
86886           </parameters>
86887         </callback>
86888       </field>
86889       <field name="move_focus">
86890         <callback name="move_focus" c:type="move_focus">
86891           <return-value transfer-ownership="none">
86892             <type name="none" c:type="void"/>
86893           </return-value>
86894           <parameters>
86895             <parameter name="window" transfer-ownership="none">
86896               <type name="Window" c:type="GtkWindow*"/>
86897             </parameter>
86898             <parameter name="direction" transfer-ownership="none">
86899               <type name="DirectionType" c:type="GtkDirectionType"/>
86900             </parameter>
86901           </parameters>
86902         </callback>
86903       </field>
86904       <field name="keys_changed">
86905         <callback name="keys_changed" c:type="keys_changed">
86906           <return-value transfer-ownership="none">
86907             <type name="none" c:type="void"/>
86908           </return-value>
86909           <parameters>
86910             <parameter name="window" transfer-ownership="none">
86911               <type name="Window" c:type="GtkWindow*"/>
86912             </parameter>
86913           </parameters>
86914         </callback>
86915       </field>
86916       <field name="gtk_reserved1">
86917         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
86918           <return-value transfer-ownership="none">
86919             <type name="none" c:type="void"/>
86920           </return-value>
86921         </callback>
86922       </field>
86923       <field name="gtk_reserved2">
86924         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
86925           <return-value transfer-ownership="none">
86926             <type name="none" c:type="void"/>
86927           </return-value>
86928         </callback>
86929       </field>
86930       <field name="gtk_reserved3">
86931         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
86932           <return-value transfer-ownership="none">
86933             <type name="none" c:type="void"/>
86934           </return-value>
86935         </callback>
86936       </field>
86937       <field name="gtk_reserved4">
86938         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
86939           <return-value transfer-ownership="none">
86940             <type name="none" c:type="void"/>
86941           </return-value>
86942         </callback>
86943       </field>
86944     </record>
86945     <record name="WindowGeometryInfo" c:type="GtkWindowGeometryInfo">
86946     </record>
86947     <class name="WindowGroup"
86948            c:type="GtkWindowGroup"
86949            parent="GObject.Object"
86950            glib:type-name="GtkWindowGroup"
86951            glib:get-type="gtk_window_group_get_type"
86952            glib:type-struct="WindowGroupClass">
86953       <constructor name="new" c:identifier="gtk_window_group_new">
86954         <doc xml:whitespace="preserve">Creates a new #GtkWindowGroup object. Grabs added with
86955 gtk_grab_add() only affect windows within the same #GtkWindowGroup.</doc>
86956         <return-value transfer-ownership="full">
86957           <doc xml:whitespace="preserve">a new #GtkWindowGroup.</doc>
86958           <type name="WindowGroup" c:type="GtkWindowGroup*"/>
86959         </return-value>
86960       </constructor>
86961       <method name="add_window" c:identifier="gtk_window_group_add_window">
86962         <doc xml:whitespace="preserve">Adds a window to a #GtkWindowGroup.</doc>
86963         <return-value transfer-ownership="none">
86964           <type name="none" c:type="void"/>
86965         </return-value>
86966         <parameters>
86967           <parameter name="window" transfer-ownership="none">
86968             <doc xml:whitespace="preserve">the #GtkWindow to add</doc>
86969             <type name="Window" c:type="GtkWindow*"/>
86970           </parameter>
86971         </parameters>
86972       </method>
86973       <method name="remove_window"
86974               c:identifier="gtk_window_group_remove_window">
86975         <doc xml:whitespace="preserve">Removes a window from a #GtkWindowGroup.</doc>
86976         <return-value transfer-ownership="none">
86977           <type name="none" c:type="void"/>
86978         </return-value>
86979         <parameters>
86980           <parameter name="window" transfer-ownership="none">
86981             <doc xml:whitespace="preserve">the #GtkWindow to remove</doc>
86982             <type name="Window" c:type="GtkWindow*"/>
86983           </parameter>
86984         </parameters>
86985       </method>
86986       <method name="list_windows"
86987               c:identifier="gtk_window_group_list_windows"
86988               version="2.14">
86989         <doc xml:whitespace="preserve">Returns a list of the #GtkWindows that belong to @window_group.
86990 windows inside the group.</doc>
86991         <return-value transfer-ownership="container">
86992           <doc xml:whitespace="preserve">A newly-allocated list of</doc>
86993           <type name="GLib.List" c:type="GList*">
86994             <type name="Widget"/>
86995           </type>
86996         </return-value>
86997       </method>
86998       <field name="parent_instance">
86999         <type name="GObject.Object" c:type="GObject"/>
87000       </field>
87001       <field name="grabs">
87002         <type name="GLib.SList" c:type="GSList*">
87003           <type name="any" c:type="gpointer"/>
87004         </type>
87005       </field>
87006     </class>
87007     <record name="WindowGroupClass"
87008             c:type="GtkWindowGroupClass"
87009             glib:is-gtype-struct-for="WindowGroup">
87010       <field name="parent_class">
87011         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
87012       </field>
87013       <field name="gtk_reserved1">
87014         <callback name="gtk_reserved1" c:type="_gtk_reserved1">
87015           <return-value transfer-ownership="none">
87016             <type name="none" c:type="void"/>
87017           </return-value>
87018         </callback>
87019       </field>
87020       <field name="gtk_reserved2">
87021         <callback name="gtk_reserved2" c:type="_gtk_reserved2">
87022           <return-value transfer-ownership="none">
87023             <type name="none" c:type="void"/>
87024           </return-value>
87025         </callback>
87026       </field>
87027       <field name="gtk_reserved3">
87028         <callback name="gtk_reserved3" c:type="_gtk_reserved3">
87029           <return-value transfer-ownership="none">
87030             <type name="none" c:type="void"/>
87031           </return-value>
87032         </callback>
87033       </field>
87034       <field name="gtk_reserved4">
87035         <callback name="gtk_reserved4" c:type="_gtk_reserved4">
87036           <return-value transfer-ownership="none">
87037             <type name="none" c:type="void"/>
87038           </return-value>
87039         </callback>
87040       </field>
87041     </record>
87042     <callback name="WindowKeysForeachFunc" c:type="GtkWindowKeysForeachFunc">
87043       <return-value transfer-ownership="none">
87044         <type name="none" c:type="void"/>
87045       </return-value>
87046       <parameters>
87047         <parameter name="window" transfer-ownership="none">
87048           <type name="Window" c:type="GtkWindow*"/>
87049         </parameter>
87050         <parameter name="keyval" transfer-ownership="none">
87051           <type name="uint" c:type="guint"/>
87052         </parameter>
87053         <parameter name="modifiers" transfer-ownership="none">
87054           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87055         </parameter>
87056         <parameter name="is_mnemonic" transfer-ownership="none">
87057           <type name="boolean" c:type="gboolean"/>
87058         </parameter>
87059         <parameter name="data" transfer-ownership="none">
87060           <type name="any" c:type="gpointer"/>
87061         </parameter>
87062       </parameters>
87063     </callback>
87064     <enumeration name="WindowPosition"
87065                  glib:type-name="GtkWindowPosition"
87066                  glib:get-type="gtk_window_position_get_type"
87067                  c:type="GtkWindowPosition">
87068       <member name="none"
87069               value="0"
87070               c:identifier="GTK_WIN_POS_NONE"
87071               glib:nick="none"/>
87072       <member name="center"
87073               value="1"
87074               c:identifier="GTK_WIN_POS_CENTER"
87075               glib:nick="center"/>
87076       <member name="mouse"
87077               value="2"
87078               c:identifier="GTK_WIN_POS_MOUSE"
87079               glib:nick="mouse"/>
87080       <member name="center_always"
87081               value="3"
87082               c:identifier="GTK_WIN_POS_CENTER_ALWAYS"
87083               glib:nick="center-always"/>
87084       <member name="center_on_parent"
87085               value="4"
87086               c:identifier="GTK_WIN_POS_CENTER_ON_PARENT"
87087               glib:nick="center-on-parent"/>
87088     </enumeration>
87089     <enumeration name="WindowType"
87090                  glib:type-name="GtkWindowType"
87091                  glib:get-type="gtk_window_type_get_type"
87092                  c:type="GtkWindowType">
87093       <member name="toplevel"
87094               value="0"
87095               c:identifier="GTK_WINDOW_TOPLEVEL"
87096               glib:nick="toplevel"/>
87097       <member name="popup"
87098               value="1"
87099               c:identifier="GTK_WINDOW_POPUP"
87100               glib:nick="popup"/>
87101     </enumeration>
87102     <enumeration name="WrapMode"
87103                  glib:type-name="GtkWrapMode"
87104                  glib:get-type="gtk_wrap_mode_get_type"
87105                  c:type="GtkWrapMode">
87106       <member name="none"
87107               value="0"
87108               c:identifier="GTK_WRAP_NONE"
87109               glib:nick="none"/>
87110       <member name="char"
87111               value="1"
87112               c:identifier="GTK_WRAP_CHAR"
87113               glib:nick="char"/>
87114       <member name="word"
87115               value="2"
87116               c:identifier="GTK_WRAP_WORD"
87117               glib:nick="word"/>
87118       <member name="word_char"
87119               value="3"
87120               c:identifier="GTK_WRAP_WORD_CHAR"
87121               glib:nick="word-char"/>
87122     </enumeration>
87123     <function name="accel_groups_activate"
87124               c:identifier="gtk_accel_groups_activate">
87125       <doc xml:whitespace="preserve">Finds the first accelerator in any #GtkAccelGroup attached
87126 to @object that matches @accel_key and @accel_mods, and
87127 activates that accelerator.</doc>
87128       <return-value transfer-ownership="none">
87129         <doc xml:whitespace="preserve">%TRUE if an accelerator was activated and handled this keypress</doc>
87130         <type name="boolean" c:type="gboolean"/>
87131       </return-value>
87132       <parameters>
87133         <parameter name="object" transfer-ownership="none">
87134           <doc xml:whitespace="preserve">the #GObject, usually a #GtkWindow, on which to activate the accelerator.</doc>
87135           <type name="GObject.Object" c:type="GObject*"/>
87136         </parameter>
87137         <parameter name="accel_key" transfer-ownership="none">
87138           <doc xml:whitespace="preserve">accelerator keyval from a key event</doc>
87139           <type name="uint" c:type="guint"/>
87140         </parameter>
87141         <parameter name="accel_mods" transfer-ownership="none">
87142           <doc xml:whitespace="preserve">keyboard state mask from a key event</doc>
87143           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87144         </parameter>
87145       </parameters>
87146     </function>
87147     <function name="accel_groups_from_object"
87148               c:identifier="gtk_accel_groups_from_object">
87149       <doc xml:whitespace="preserve">Gets a list of all accel groups which are attached to @object.</doc>
87150       <return-value transfer-ownership="none">
87151         <doc xml:whitespace="preserve">a list of all accel groups which are attached to @object</doc>
87152         <type name="GLib.SList" c:type="GSList*">
87153           <type name="AccelGroup"/>
87154         </type>
87155       </return-value>
87156       <parameters>
87157         <parameter name="object" transfer-ownership="none">
87158           <doc xml:whitespace="preserve">a #GObject, usually a #GtkWindow</doc>
87159           <type name="GObject.Object" c:type="GObject*"/>
87160         </parameter>
87161       </parameters>
87162     </function>
87163     <function name="accelerator_get_default_mod_mask"
87164               c:identifier="gtk_accelerator_get_default_mod_mask">
87165       <doc xml:whitespace="preserve">Gets the value set by gtk_accelerator_set_default_mod_mask().</doc>
87166       <return-value transfer-ownership="none">
87167         <doc xml:whitespace="preserve">the default accelerator modifier mask</doc>
87168         <type name="uint" c:type="guint"/>
87169       </return-value>
87170     </function>
87171     <function name="accelerator_get_label"
87172               c:identifier="gtk_accelerator_get_label"
87173               version="2.6">
87174       <doc xml:whitespace="preserve">Converts an accelerator keyval and modifier mask into a string 
87175 which can be used to represent the accelerator to the user.</doc>
87176       <return-value transfer-ownership="full">
87177         <doc xml:whitespace="preserve">a newly-allocated string representing the accelerator.</doc>
87178         <type name="utf8" c:type="gchar*"/>
87179       </return-value>
87180       <parameters>
87181         <parameter name="accelerator_key" transfer-ownership="none">
87182           <doc xml:whitespace="preserve">accelerator keyval</doc>
87183           <type name="uint" c:type="guint"/>
87184         </parameter>
87185         <parameter name="accelerator_mods" transfer-ownership="none">
87186           <doc xml:whitespace="preserve">accelerator modifier mask</doc>
87187           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87188         </parameter>
87189       </parameters>
87190     </function>
87191     <function name="accelerator_name" c:identifier="gtk_accelerator_name">
87192       <doc xml:whitespace="preserve">Converts an accelerator keyval and modifier mask
87193 into a string parseable by gtk_accelerator_parse().
87194 For example, if you pass in #GDK_q and #GDK_CONTROL_MASK,
87195 this function returns "&amp;lt;Control&amp;gt;q". 
87196 If you need to display accelerators in the user interface,
87197 see gtk_accelerator_get_label().</doc>
87198       <return-value transfer-ownership="full">
87199         <doc xml:whitespace="preserve">a newly-allocated accelerator name</doc>
87200         <type name="utf8" c:type="gchar*"/>
87201       </return-value>
87202       <parameters>
87203         <parameter name="accelerator_key" transfer-ownership="none">
87204           <doc xml:whitespace="preserve">accelerator keyval</doc>
87205           <type name="uint" c:type="guint"/>
87206         </parameter>
87207         <parameter name="accelerator_mods" transfer-ownership="none">
87208           <doc xml:whitespace="preserve">accelerator modifier mask</doc>
87209           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87210         </parameter>
87211       </parameters>
87212     </function>
87213     <function name="accelerator_parse" c:identifier="gtk_accelerator_parse">
87214       <doc xml:whitespace="preserve">Parses a string representing an accelerator. The
87215 format looks like "&amp;lt;Control&amp;gt;a" or "&amp;lt;Shift&amp;gt;&amp;lt;Alt&amp;gt;F1" or
87216 "&amp;lt;Release&amp;gt;z" (the last one is for key release).
87217 The parser is fairly liberal and allows lower or upper case,
87218 and also abbreviations such as "&amp;lt;Ctl&amp;gt;" and "&amp;lt;Ctrl&amp;gt;".
87219 Key names are parsed using gdk_keyval_from_name(). For character keys the
87220 name is not the symbol, but the lowercase name, e.g. one would use
87221 "&amp;lt;Ctrl&amp;gt;minus" instead of "&amp;lt;Ctrl&amp;gt;-".
87222 If the parse fails, @accelerator_key and @accelerator_mods will
87223 be set to 0 (zero).</doc>
87224       <return-value transfer-ownership="none">
87225         <type name="none" c:type="void"/>
87226       </return-value>
87227       <parameters>
87228         <parameter name="accelerator" transfer-ownership="none">
87229           <doc xml:whitespace="preserve">string representing an accelerator</doc>
87230           <type name="utf8" c:type="gchar*"/>
87231         </parameter>
87232         <parameter name="accelerator_key"
87233                    direction="out"
87234                    caller-allocates="0"
87235                    transfer-ownership="full">
87236           <doc xml:whitespace="preserve">return location for accelerator keyval</doc>
87237           <type name="uint" c:type="guint*"/>
87238         </parameter>
87239         <parameter name="accelerator_mods" transfer-ownership="none">
87240           <doc xml:whitespace="preserve">return location for accelerator modifier mask</doc>
87241           <type name="Gdk.ModifierType" c:type="GdkModifierType*"/>
87242         </parameter>
87243       </parameters>
87244     </function>
87245     <function name="accelerator_set_default_mod_mask"
87246               c:identifier="gtk_accelerator_set_default_mod_mask">
87247       <doc xml:whitespace="preserve">Sets the modifiers that will be considered significant for keyboard
87248 accelerators. The default mod mask is #GDK_CONTROL_MASK |
87249 #GDK_SHIFT_MASK | #GDK_MOD1_MASK | #GDK_SUPER_MASK | 
87250 #GDK_HYPER_MASK | #GDK_META_MASK, that is, Control, Shift, Alt, 
87251 Super, Hyper and Meta. Other modifiers will by default be ignored 
87252 by #GtkAccelGroup.
87253 You must include at least the three modifiers Control, Shift
87254 and Alt in any value you pass to this function.
87255 The default mod mask should be changed on application startup,
87256 before using any accelerator groups.</doc>
87257       <return-value transfer-ownership="none">
87258         <type name="none" c:type="void"/>
87259       </return-value>
87260       <parameters>
87261         <parameter name="default_mod_mask" transfer-ownership="none">
87262           <doc xml:whitespace="preserve">accelerator modifier mask</doc>
87263           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87264         </parameter>
87265       </parameters>
87266     </function>
87267     <function name="accelerator_valid" c:identifier="gtk_accelerator_valid">
87268       <doc xml:whitespace="preserve">Determines whether a given keyval and modifier mask constitute
87269 a valid keyboard accelerator. For example, the #GDK_a keyval
87270 plus #GDK_CONTROL_MASK is valid - this is a "Ctrl+a" accelerator.
87271 But, you can't, for instance, use the #GDK_Control_L keyval
87272 as an accelerator.</doc>
87273       <return-value transfer-ownership="none">
87274         <doc xml:whitespace="preserve">%TRUE if the accelerator is valid</doc>
87275         <type name="boolean" c:type="gboolean"/>
87276       </return-value>
87277       <parameters>
87278         <parameter name="keyval" transfer-ownership="none">
87279           <doc xml:whitespace="preserve">a GDK keyval</doc>
87280           <type name="uint" c:type="guint"/>
87281         </parameter>
87282         <parameter name="modifiers" transfer-ownership="none">
87283           <doc xml:whitespace="preserve">modifier mask</doc>
87284           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87285         </parameter>
87286       </parameters>
87287     </function>
87288     <function name="alternative_dialog_button_order"
87289               c:identifier="gtk_alternative_dialog_button_order"
87290               version="2.6">
87291       <doc xml:whitespace="preserve">Returns %TRUE if dialogs are expected to use an alternative
87292 button order on the screen @screen. See
87293 gtk_dialog_set_alternative_button_order() for more details
87294 about alternative button order. 
87295 If you need to use this function, you should probably connect
87296 to the ::notify:gtk-alternative-button-order signal on the
87297 #GtkSettings object associated to @screen, in order to be 
87298 notified if the button order setting changes.</doc>
87299       <return-value transfer-ownership="none">
87300         <doc xml:whitespace="preserve">Whether the alternative button order should be used</doc>
87301         <type name="boolean" c:type="gboolean"/>
87302       </return-value>
87303       <parameters>
87304         <parameter name="screen" transfer-ownership="none" allow-none="1">
87305           <doc xml:whitespace="preserve">a #GdkScreen, or %NULL to use the default screen</doc>
87306           <type name="Gdk.Screen" c:type="GdkScreen*"/>
87307         </parameter>
87308       </parameters>
87309     </function>
87310     <function name="binding_entry_add_signal"
87311               c:identifier="gtk_binding_entry_add_signal"
87312               introspectable="0">
87313       <doc xml:whitespace="preserve">Override or install a new key binding for @keyval with @modifiers on
87314 emitted on the target widget, with @n_args @Varargs used as
87315 arguments.</doc>
87316       <return-value transfer-ownership="none">
87317         <type name="none" c:type="void"/>
87318       </return-value>
87319       <parameters>
87320         <parameter name="binding_set" transfer-ownership="none">
87321           <doc xml:whitespace="preserve">a #GtkBindingSet to install an entry for</doc>
87322           <type name="BindingSet" c:type="GtkBindingSet*"/>
87323         </parameter>
87324         <parameter name="keyval" transfer-ownership="none">
87325           <doc xml:whitespace="preserve">key value of binding to install</doc>
87326           <type name="uint" c:type="guint"/>
87327         </parameter>
87328         <parameter name="modifiers" transfer-ownership="none">
87329           <doc xml:whitespace="preserve">key modifier of binding to install</doc>
87330           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87331         </parameter>
87332         <parameter name="signal_name" transfer-ownership="none">
87333           <doc xml:whitespace="preserve">signal to execute upon activation</doc>
87334           <type name="utf8" c:type="gchar*"/>
87335         </parameter>
87336         <parameter name="n_args" transfer-ownership="none">
87337           <doc xml:whitespace="preserve">number of arguments to @signal_name</doc>
87338           <type name="uint" c:type="guint"/>
87339         </parameter>
87340         <parameter transfer-ownership="none">
87341           <varargs>
87342           </varargs>
87343         </parameter>
87344       </parameters>
87345     </function>
87346     <function name="binding_entry_add_signall"
87347               c:identifier="gtk_binding_entry_add_signall">
87348       <doc xml:whitespace="preserve">Override or install a new key binding for @keyval with @modifiers on</doc>
87349       <return-value transfer-ownership="none">
87350         <type name="none" c:type="void"/>
87351       </return-value>
87352       <parameters>
87353         <parameter name="binding_set" transfer-ownership="none">
87354           <doc xml:whitespace="preserve">a #GtkBindingSet to add a signal to</doc>
87355           <type name="BindingSet" c:type="GtkBindingSet*"/>
87356         </parameter>
87357         <parameter name="keyval" transfer-ownership="none">
87358           <doc xml:whitespace="preserve">key value</doc>
87359           <type name="uint" c:type="guint"/>
87360         </parameter>
87361         <parameter name="modifiers" transfer-ownership="none">
87362           <doc xml:whitespace="preserve">key modifier</doc>
87363           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87364         </parameter>
87365         <parameter name="signal_name" transfer-ownership="none">
87366           <doc xml:whitespace="preserve">signal name to be bound</doc>
87367           <type name="utf8" c:type="gchar*"/>
87368         </parameter>
87369         <parameter name="binding_args" transfer-ownership="none">
87370           <doc xml:whitespace="preserve">list of #GtkBindingArg signal arguments</doc>
87371           <type name="GLib.SList" c:type="GSList*">
87372             <type name="any" c:type="gpointer"/>
87373           </type>
87374         </parameter>
87375       </parameters>
87376     </function>
87377     <function name="binding_entry_clear"
87378               c:identifier="gtk_binding_entry_clear"
87379               deprecated="Use gtk_binding_entry_remove() instead."
87380               deprecated-version="2.12">
87381       <doc xml:whitespace="preserve">Clears a binding entry.</doc>
87382       <return-value transfer-ownership="none">
87383         <type name="none" c:type="void"/>
87384       </return-value>
87385       <parameters>
87386         <parameter name="binding_set" transfer-ownership="none">
87387           <doc xml:whitespace="preserve">binding set to clear an entry of</doc>
87388           <type name="BindingSet" c:type="GtkBindingSet*"/>
87389         </parameter>
87390         <parameter name="keyval" transfer-ownership="none">
87391           <doc xml:whitespace="preserve">key value of binding to clear</doc>
87392           <type name="uint" c:type="guint"/>
87393         </parameter>
87394         <parameter name="modifiers" transfer-ownership="none">
87395           <doc xml:whitespace="preserve">key modifier of binding to clear</doc>
87396           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87397         </parameter>
87398       </parameters>
87399     </function>
87400     <function name="binding_entry_remove"
87401               c:identifier="gtk_binding_entry_remove">
87402       <doc xml:whitespace="preserve">Remove a binding previously installed via
87403 gtk_binding_entry_add_signal() on @binding_set.</doc>
87404       <return-value transfer-ownership="none">
87405         <type name="none" c:type="void"/>
87406       </return-value>
87407       <parameters>
87408         <parameter name="binding_set" transfer-ownership="none">
87409           <doc xml:whitespace="preserve">a #GtkBindingSet to remove an entry of</doc>
87410           <type name="BindingSet" c:type="GtkBindingSet*"/>
87411         </parameter>
87412         <parameter name="keyval" transfer-ownership="none">
87413           <doc xml:whitespace="preserve">key value of binding to remove</doc>
87414           <type name="uint" c:type="guint"/>
87415         </parameter>
87416         <parameter name="modifiers" transfer-ownership="none">
87417           <doc xml:whitespace="preserve">key modifier of binding to remove</doc>
87418           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87419         </parameter>
87420       </parameters>
87421     </function>
87422     <function name="binding_entry_skip"
87423               c:identifier="gtk_binding_entry_skip"
87424               version="2.12">
87425       <doc xml:whitespace="preserve">Install a binding on @binding_set which causes key lookups
87426 to be aborted, to prevent bindings from lower priority sets
87427 to be activated.</doc>
87428       <return-value transfer-ownership="none">
87429         <type name="none" c:type="void"/>
87430       </return-value>
87431       <parameters>
87432         <parameter name="binding_set" transfer-ownership="none">
87433           <doc xml:whitespace="preserve">a #GtkBindingSet to skip an entry of</doc>
87434           <type name="BindingSet" c:type="GtkBindingSet*"/>
87435         </parameter>
87436         <parameter name="keyval" transfer-ownership="none">
87437           <doc xml:whitespace="preserve">key value of binding to skip</doc>
87438           <type name="uint" c:type="guint"/>
87439         </parameter>
87440         <parameter name="modifiers" transfer-ownership="none">
87441           <doc xml:whitespace="preserve">key modifier of binding to skip</doc>
87442           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87443         </parameter>
87444       </parameters>
87445     </function>
87446     <function name="binding_parse_binding"
87447               c:identifier="gtk_binding_parse_binding"
87448               deprecated="There should be no need to call this function outside GTK+."
87449               deprecated-version="2.12">
87450       <doc xml:whitespace="preserve">Parse a binding entry from a gtkrc file.</doc>
87451       <return-value transfer-ownership="none">
87452         <doc xml:whitespace="preserve">expected token upon errors, %G_TOKEN_NONE on success.</doc>
87453         <type name="uint" c:type="guint"/>
87454       </return-value>
87455       <parameters>
87456         <parameter name="scanner" transfer-ownership="none">
87457           <doc xml:whitespace="preserve">GtkRC scanner</doc>
87458           <type name="GLib.Scanner" c:type="GScanner*"/>
87459         </parameter>
87460       </parameters>
87461     </function>
87462     <function name="binding_set_by_class"
87463               c:identifier="gtk_binding_set_by_class">
87464       <doc xml:whitespace="preserve">This function returns the binding set named after the type name of
87465 the passed in class structure. New binding sets are created on
87466 demand by this function.</doc>
87467       <return-value transfer-ownership="full">
87468         <doc xml:whitespace="preserve">the binding set corresponding to @object_class</doc>
87469         <type name="BindingSet" c:type="GtkBindingSet*"/>
87470       </return-value>
87471       <parameters>
87472         <parameter name="object_class" transfer-ownership="none">
87473           <doc xml:whitespace="preserve">a valid #GtkObject class</doc>
87474           <type name="any" c:type="gpointer"/>
87475         </parameter>
87476       </parameters>
87477     </function>
87478     <function name="binding_set_find" c:identifier="gtk_binding_set_find">
87479       <doc xml:whitespace="preserve">Find a binding set by its globally unique name. The @set_name can
87480 either be a name used for gtk_binding_set_new() or the type name of
87481 a class used in gtk_binding_set_by_class().</doc>
87482       <return-value transfer-ownership="full">
87483         <doc xml:whitespace="preserve">%NULL or the specified binding set</doc>
87484         <type name="BindingSet" c:type="GtkBindingSet*"/>
87485       </return-value>
87486       <parameters>
87487         <parameter name="set_name" transfer-ownership="none">
87488           <doc xml:whitespace="preserve">unique binding set name</doc>
87489           <type name="utf8" c:type="gchar*"/>
87490         </parameter>
87491       </parameters>
87492     </function>
87493     <function name="bindings_activate" c:identifier="gtk_bindings_activate">
87494       <doc xml:whitespace="preserve">Find a key binding matching @keyval and @modifiers and activate the
87495 binding on @object.</doc>
87496       <return-value transfer-ownership="none">
87497         <doc xml:whitespace="preserve">%TRUE if a binding was found and activated</doc>
87498         <type name="boolean" c:type="gboolean"/>
87499       </return-value>
87500       <parameters>
87501         <parameter name="object" transfer-ownership="none">
87502           <doc xml:whitespace="preserve">object to activate when binding found</doc>
87503           <type name="Object" c:type="GtkObject*"/>
87504         </parameter>
87505         <parameter name="keyval" transfer-ownership="none">
87506           <doc xml:whitespace="preserve">key value of the binding</doc>
87507           <type name="uint" c:type="guint"/>
87508         </parameter>
87509         <parameter name="modifiers" transfer-ownership="none">
87510           <doc xml:whitespace="preserve">key modifier of the binding</doc>
87511           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
87512         </parameter>
87513       </parameters>
87514     </function>
87515     <function name="bindings_activate_event"
87516               c:identifier="gtk_bindings_activate_event"
87517               version="2.4">
87518       <doc xml:whitespace="preserve">Looks up key bindings for @object to find one matching</doc>
87519       <return-value transfer-ownership="none">
87520         <doc xml:whitespace="preserve">%TRUE if a matching key binding was found</doc>
87521         <type name="boolean" c:type="gboolean"/>
87522       </return-value>
87523       <parameters>
87524         <parameter name="object" transfer-ownership="none">
87525           <doc xml:whitespace="preserve">a #GtkObject (generally must be a widget)</doc>
87526           <type name="Object" c:type="GtkObject*"/>
87527         </parameter>
87528         <parameter name="event" transfer-ownership="none">
87529           <doc xml:whitespace="preserve">a #GdkEventKey</doc>
87530           <type name="Gdk.EventKey" c:type="GdkEventKey*"/>
87531         </parameter>
87532       </parameters>
87533     </function>
87534     <function name="check_version" c:identifier="gtk_check_version">
87535       <doc xml:whitespace="preserve">Checks that the GTK+ library in use is compatible with the
87536 given version. Generally you would pass in the constants
87537 #GTK_MAJOR_VERSION, #GTK_MINOR_VERSION, #GTK_MICRO_VERSION
87538 as the three arguments to this function; that produces
87539 a check that the library in use is compatible with
87540 the version of GTK+ the application or module was compiled
87541 against.
87542 of the running library is newer than the version
87543 the running library must be binary compatible with the
87544 version @required_major.required_minor.@required_micro
87545 (same major version.)
87546 This function is primarily for GTK+ modules; the module
87547 can call this function to check that it wasn't loaded
87548 into an incompatible version of GTK+. However, such a
87549 a check isn't completely reliable, since the module may be
87550 linked against an old version of GTK+ and calling the
87551 old version of gtk_check_version(), but still get loaded
87552 into an application using a newer version of GTK+.
87553 given version, or a string describing the version mismatch.
87554 The returned string is owned by GTK+ and should not be modified
87555 or freed.</doc>
87556       <return-value transfer-ownership="none">
87557         <doc xml:whitespace="preserve">%NULL if the GTK+ library is compatible with the</doc>
87558         <type name="utf8" c:type="gchar*"/>
87559       </return-value>
87560       <parameters>
87561         <parameter name="required_major" transfer-ownership="none">
87562           <doc xml:whitespace="preserve">the required major version.</doc>
87563           <type name="uint" c:type="guint"/>
87564         </parameter>
87565         <parameter name="required_minor" transfer-ownership="none">
87566           <doc xml:whitespace="preserve">the required minor version.</doc>
87567           <type name="uint" c:type="guint"/>
87568         </parameter>
87569         <parameter name="required_micro" transfer-ownership="none">
87570           <doc xml:whitespace="preserve">the required micro version.</doc>
87571           <type name="uint" c:type="guint"/>
87572         </parameter>
87573       </parameters>
87574     </function>
87575     <function name="disable_setlocale" c:identifier="gtk_disable_setlocale">
87576       <doc xml:whitespace="preserve">Prevents gtk_init(), gtk_init_check(), gtk_init_with_args() and
87577 gtk_parse_args() from automatically
87578 calling &lt;literal&gt;setlocale (LC_ALL, "")&lt;/literal&gt;. You would 
87579 want to use this function if you wanted to set the locale for 
87580 your program to something other than the user's locale, or if 
87581 you wanted to set different values for different locale categories.
87582 Most programs should not need to call this function.</doc>
87583       <return-value transfer-ownership="none">
87584         <type name="none" c:type="void"/>
87585       </return-value>
87586     </function>
87587     <function name="drag_begin" c:identifier="gtk_drag_begin">
87588       <doc xml:whitespace="preserve">Initiates a drag on the source side. The function
87589 only needs to be used when the application is
87590 starting drags itself, and is not needed when
87591 gtk_drag_source_set() is used.</doc>
87592       <return-value transfer-ownership="full">
87593         <doc xml:whitespace="preserve">the context for this drag.</doc>
87594         <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
87595       </return-value>
87596       <parameters>
87597         <parameter name="widget" transfer-ownership="none">
87598           <doc xml:whitespace="preserve">the source widget.</doc>
87599           <type name="Widget" c:type="GtkWidget*"/>
87600         </parameter>
87601         <parameter name="targets" transfer-ownership="none">
87602           <doc xml:whitespace="preserve">The targets (data formats) in which the source can provide the data.</doc>
87603           <type name="TargetList" c:type="GtkTargetList*"/>
87604         </parameter>
87605         <parameter name="actions" transfer-ownership="none">
87606           <doc xml:whitespace="preserve">A bitmask of the allowed drag actions for this drag.</doc>
87607           <type name="Gdk.DragAction" c:type="GdkDragAction"/>
87608         </parameter>
87609         <parameter name="button" transfer-ownership="none">
87610           <doc xml:whitespace="preserve">The button the user clicked to start the drag.</doc>
87611           <type name="int" c:type="gint"/>
87612         </parameter>
87613         <parameter name="event" transfer-ownership="none">
87614           <doc xml:whitespace="preserve">The event that triggered the start of the drag.</doc>
87615           <type name="Gdk.Event" c:type="GdkEvent*"/>
87616         </parameter>
87617       </parameters>
87618     </function>
87619     <function name="drag_check_threshold"
87620               c:identifier="gtk_drag_check_threshold">
87621       <doc xml:whitespace="preserve">Checks to see if a mouse drag starting at (@start_x, @start_y) and ending
87622 at (@current_x, @current_y) has passed the GTK+ drag threshold, and thus
87623 should trigger the beginning of a drag-and-drop operation.</doc>
87624       <return-value transfer-ownership="none">
87625         <doc xml:whitespace="preserve">%TRUE if the drag threshold has been passed.</doc>
87626         <type name="boolean" c:type="gboolean"/>
87627       </return-value>
87628       <parameters>
87629         <parameter name="widget" transfer-ownership="none">
87630           <doc xml:whitespace="preserve">a #GtkWidget</doc>
87631           <type name="Widget" c:type="GtkWidget*"/>
87632         </parameter>
87633         <parameter name="start_x" transfer-ownership="none">
87634           <doc xml:whitespace="preserve">X coordinate of start of drag</doc>
87635           <type name="int" c:type="gint"/>
87636         </parameter>
87637         <parameter name="start_y" transfer-ownership="none">
87638           <doc xml:whitespace="preserve">Y coordinate of start of drag</doc>
87639           <type name="int" c:type="gint"/>
87640         </parameter>
87641         <parameter name="current_x" transfer-ownership="none">
87642           <doc xml:whitespace="preserve">current X coordinate</doc>
87643           <type name="int" c:type="gint"/>
87644         </parameter>
87645         <parameter name="current_y" transfer-ownership="none">
87646           <doc xml:whitespace="preserve">current Y coordinate</doc>
87647           <type name="int" c:type="gint"/>
87648         </parameter>
87649       </parameters>
87650     </function>
87651     <function name="drag_dest_add_image_targets"
87652               c:identifier="gtk_drag_dest_add_image_targets"
87653               version="2.6">
87654       <doc xml:whitespace="preserve">Add the image targets supported by #GtkSelection to
87655 the target list of the drag destination. The targets
87656 are added with @info = 0. If you need another value, 
87657 use gtk_target_list_add_image_targets() and
87658 gtk_drag_dest_set_target_list().</doc>
87659       <return-value transfer-ownership="none">
87660         <type name="none" c:type="void"/>
87661       </return-value>
87662       <parameters>
87663         <parameter name="widget" transfer-ownership="none">
87664           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
87665           <type name="Widget" c:type="GtkWidget*"/>
87666         </parameter>
87667       </parameters>
87668     </function>
87669     <function name="drag_dest_add_text_targets"
87670               c:identifier="gtk_drag_dest_add_text_targets"
87671               version="2.6">
87672       <doc xml:whitespace="preserve">Add the text targets supported by #GtkSelection to
87673 the target list of the drag destination. The targets
87674 are added with @info = 0. If you need another value, 
87675 use gtk_target_list_add_text_targets() and
87676 gtk_drag_dest_set_target_list().</doc>
87677       <return-value transfer-ownership="none">
87678         <type name="none" c:type="void"/>
87679       </return-value>
87680       <parameters>
87681         <parameter name="widget" transfer-ownership="none">
87682           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
87683           <type name="Widget" c:type="GtkWidget*"/>
87684         </parameter>
87685       </parameters>
87686     </function>
87687     <function name="drag_dest_add_uri_targets"
87688               c:identifier="gtk_drag_dest_add_uri_targets"
87689               version="2.6">
87690       <doc xml:whitespace="preserve">Add the URI targets supported by #GtkSelection to
87691 the target list of the drag destination. The targets
87692 are added with @info = 0. If you need another value, 
87693 use gtk_target_list_add_uri_targets() and
87694 gtk_drag_dest_set_target_list().</doc>
87695       <return-value transfer-ownership="none">
87696         <type name="none" c:type="void"/>
87697       </return-value>
87698       <parameters>
87699         <parameter name="widget" transfer-ownership="none">
87700           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
87701           <type name="Widget" c:type="GtkWidget*"/>
87702         </parameter>
87703       </parameters>
87704     </function>
87705     <function name="drag_dest_find_target"
87706               c:identifier="gtk_drag_dest_find_target">
87707       <doc xml:whitespace="preserve">Looks for a match between @context-&gt;targets and the
87708 returning %GDK_NONE. @dest_target_list should usually be the return
87709 value from gtk_drag_dest_get_target_list(), but some widgets may
87710 have different valid targets for different parts of the widget; in
87711 that case, they will have to implement a drag_motion handler that
87712 passes the correct target list to this function.</doc>
87713       <return-value transfer-ownership="full">
87714         <doc xml:whitespace="preserve">first target that the source offers and the dest can accept, or %GDK_NONE</doc>
87715         <type name="Gdk.Atom" c:type="GdkAtom"/>
87716       </return-value>
87717       <parameters>
87718         <parameter name="widget" transfer-ownership="none">
87719           <doc xml:whitespace="preserve">drag destination widget</doc>
87720           <type name="Widget" c:type="GtkWidget*"/>
87721         </parameter>
87722         <parameter name="context" transfer-ownership="none">
87723           <doc xml:whitespace="preserve">drag context</doc>
87724           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
87725         </parameter>
87726         <parameter name="target_list" transfer-ownership="none" allow-none="1">
87727           <doc xml:whitespace="preserve">list of droppable targets, or %NULL to use gtk_drag_dest_get_target_list (@widget).</doc>
87728           <type name="TargetList" c:type="GtkTargetList*"/>
87729         </parameter>
87730       </parameters>
87731     </function>
87732     <function name="drag_dest_get_target_list"
87733               c:identifier="gtk_drag_dest_get_target_list">
87734       <doc xml:whitespace="preserve">Returns the list of targets this widget can accept from
87735 drag-and-drop.</doc>
87736       <return-value transfer-ownership="full">
87737         <doc xml:whitespace="preserve">the #GtkTargetList, or %NULL if none</doc>
87738         <type name="TargetList" c:type="GtkTargetList*"/>
87739       </return-value>
87740       <parameters>
87741         <parameter name="widget" transfer-ownership="none">
87742           <doc xml:whitespace="preserve">a #GtkWidget</doc>
87743           <type name="Widget" c:type="GtkWidget*"/>
87744         </parameter>
87745       </parameters>
87746     </function>
87747     <function name="drag_dest_get_track_motion"
87748               c:identifier="gtk_drag_dest_get_track_motion"
87749               version="2.10">
87750       <doc xml:whitespace="preserve">Returns whether the widget has been configured to always
87751 emit ::drag-motion signals.</doc>
87752       <return-value transfer-ownership="none">
87753         <doc xml:whitespace="preserve">%TRUE if the widget always emits ::drag-motion events</doc>
87754         <type name="boolean" c:type="gboolean"/>
87755       </return-value>
87756       <parameters>
87757         <parameter name="widget" transfer-ownership="none">
87758           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
87759           <type name="Widget" c:type="GtkWidget*"/>
87760         </parameter>
87761       </parameters>
87762     </function>
87763     <function name="drag_dest_set" c:identifier="gtk_drag_dest_set">
87764       <doc xml:whitespace="preserve">Sets a widget as a potential drop destination, and adds default behaviors.
87765 The default behaviors listed in @flags have an effect similar
87766 to installing default handlers for the widget's drag-and-drop signals
87767 (#GtkWidget:drag-motion, #GtkWidget:drag-drop, ...). They all exist
87768 for convenience. When passing #GTK_DEST_DEFAULT_ALL for instance it is
87769 sufficient to connect to the widget's #GtkWidget::drag-data-received
87770 signal to get primitive, but consistent drag-and-drop support.
87771 Things become more complicated when you try to preview the dragged data,
87772 as described in the documentation for #GtkWidget:drag-motion. The default
87773 behaviors described by @flags make some assumptions, that can conflict
87774 with your own signal handlers. For instance #GTK_DEST_DEFAULT_DROP causes
87775 invokations of gdk_drag_status() in the context of #GtkWidget:drag-motion,
87776 and invokations of gtk_drag_finish() in #GtkWidget:drag-data-received.
87777 Especially the later is dramatic, when your own #GtkWidget:drag-motion
87778 handler calls gtk_drag_get_data() to inspect the dragged data.
87779 There's no way to set a default action here, you can use the
87780 #GtkWidget:drag-motion callback for that. Here's an example which selects
87781 the action to use depending on whether the control key is pressed or not:
87782 |[
87783 static void
87784 drag_motion (GtkWidget *widget,
87785 GdkDragContext *context,
87786 gint x,
87787 gint y,
87788 guint time)
87789 {
87790 GdkModifierType mask;
87791 gdk_window_get_pointer (gtk_widget_get_window (widget),
87792 NULL, NULL, &amp;mask);
87793 if (mask &amp; GDK_CONTROL_MASK)
87794 gdk_drag_status (context, GDK_ACTION_COPY, time);
87795 else
87796 gdk_drag_status (context, GDK_ACTION_MOVE, time);
87797 }
87798 ]|</doc>
87799       <return-value transfer-ownership="none">
87800         <type name="none" c:type="void"/>
87801       </return-value>
87802       <parameters>
87803         <parameter name="widget" transfer-ownership="none">
87804           <doc xml:whitespace="preserve">a #GtkWidget</doc>
87805           <type name="Widget" c:type="GtkWidget*"/>
87806         </parameter>
87807         <parameter name="flags" transfer-ownership="none">
87808           <doc xml:whitespace="preserve">which types of default drag behavior to use</doc>
87809           <type name="DestDefaults" c:type="GtkDestDefaults"/>
87810         </parameter>
87811         <parameter name="targets" transfer-ownership="none" allow-none="1">
87812           <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>
87813           <array length="3" c:type="GtkTargetEntry*">
87814             <type name="TargetEntry"/>
87815           </array>
87816         </parameter>
87817         <parameter name="n_targets" transfer-ownership="none">
87818           <doc xml:whitespace="preserve">the number of entries in @targets</doc>
87819           <type name="int" c:type="gint"/>
87820         </parameter>
87821         <parameter name="actions" transfer-ownership="none">
87822           <doc xml:whitespace="preserve">a bitmask of possible actions for a drop onto this @widget.</doc>
87823           <type name="Gdk.DragAction" c:type="GdkDragAction"/>
87824         </parameter>
87825       </parameters>
87826     </function>
87827     <function name="drag_dest_set_proxy"
87828               c:identifier="gtk_drag_dest_set_proxy">
87829       <return-value transfer-ownership="none">
87830         <type name="none" c:type="void"/>
87831       </return-value>
87832       <parameters>
87833         <parameter name="widget" transfer-ownership="none">
87834           <type name="Widget" c:type="GtkWidget*"/>
87835         </parameter>
87836         <parameter name="proxy_window" transfer-ownership="none">
87837           <type name="Gdk.Window" c:type="GdkWindow*"/>
87838         </parameter>
87839         <parameter name="protocol" transfer-ownership="none">
87840           <type name="Gdk.DragProtocol" c:type="GdkDragProtocol"/>
87841         </parameter>
87842         <parameter name="use_coordinates" transfer-ownership="none">
87843           <type name="boolean" c:type="gboolean"/>
87844         </parameter>
87845       </parameters>
87846     </function>
87847     <function name="drag_dest_set_target_list"
87848               c:identifier="gtk_drag_dest_set_target_list">
87849       <doc xml:whitespace="preserve">Sets the target types that this widget can accept from drag-and-drop.
87850 The widget must first be made into a drag destination with
87851 gtk_drag_dest_set().</doc>
87852       <return-value transfer-ownership="none">
87853         <type name="none" c:type="void"/>
87854       </return-value>
87855       <parameters>
87856         <parameter name="widget" transfer-ownership="none">
87857           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
87858           <type name="Widget" c:type="GtkWidget*"/>
87859         </parameter>
87860         <parameter name="target_list" transfer-ownership="none" allow-none="1">
87861           <doc xml:whitespace="preserve">list of droppable targets, or %NULL for none</doc>
87862           <type name="TargetList" c:type="GtkTargetList*"/>
87863         </parameter>
87864       </parameters>
87865     </function>
87866     <function name="drag_dest_set_track_motion"
87867               c:identifier="gtk_drag_dest_set_track_motion"
87868               version="2.10">
87869       <doc xml:whitespace="preserve">Tells the widget to emit ::drag-motion and ::drag-leave
87870 events regardless of the targets and the %GTK_DEST_DEFAULT_MOTION
87871 flag. 
87872 This may be used when a widget wants to do generic
87873 actions regardless of the targets that the source offers.</doc>
87874       <return-value transfer-ownership="none">
87875         <type name="none" c:type="void"/>
87876       </return-value>
87877       <parameters>
87878         <parameter name="widget" transfer-ownership="none">
87879           <doc xml:whitespace="preserve">a #GtkWidget that's a drag destination</doc>
87880           <type name="Widget" c:type="GtkWidget*"/>
87881         </parameter>
87882         <parameter name="track_motion" transfer-ownership="none">
87883           <doc xml:whitespace="preserve">whether to accept all targets</doc>
87884           <type name="boolean" c:type="gboolean"/>
87885         </parameter>
87886       </parameters>
87887     </function>
87888     <function name="drag_dest_unset" c:identifier="gtk_drag_dest_unset">
87889       <return-value transfer-ownership="none">
87890         <type name="none" c:type="void"/>
87891       </return-value>
87892       <parameters>
87893         <parameter name="widget" transfer-ownership="none">
87894           <type name="Widget" c:type="GtkWidget*"/>
87895         </parameter>
87896       </parameters>
87897     </function>
87898     <function name="drag_finish" c:identifier="gtk_drag_finish">
87899       <return-value transfer-ownership="none">
87900         <type name="none" c:type="void"/>
87901       </return-value>
87902       <parameters>
87903         <parameter name="context" transfer-ownership="none">
87904           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
87905         </parameter>
87906         <parameter name="success" transfer-ownership="none">
87907           <type name="boolean" c:type="gboolean"/>
87908         </parameter>
87909         <parameter name="del" transfer-ownership="none">
87910           <type name="boolean" c:type="gboolean"/>
87911         </parameter>
87912         <parameter name="time_" transfer-ownership="none">
87913           <type name="uint32" c:type="guint32"/>
87914         </parameter>
87915       </parameters>
87916     </function>
87917     <function name="drag_get_data" c:identifier="gtk_drag_get_data">
87918       <return-value transfer-ownership="none">
87919         <type name="none" c:type="void"/>
87920       </return-value>
87921       <parameters>
87922         <parameter name="widget" transfer-ownership="none">
87923           <type name="Widget" c:type="GtkWidget*"/>
87924         </parameter>
87925         <parameter name="context" transfer-ownership="none">
87926           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
87927         </parameter>
87928         <parameter name="target" transfer-ownership="none">
87929           <type name="Gdk.Atom" c:type="GdkAtom"/>
87930         </parameter>
87931         <parameter name="time_" transfer-ownership="none">
87932           <type name="uint32" c:type="guint32"/>
87933         </parameter>
87934       </parameters>
87935     </function>
87936     <function name="drag_get_source_widget"
87937               c:identifier="gtk_drag_get_source_widget">
87938       <return-value transfer-ownership="full">
87939         <type name="Widget" c:type="GtkWidget*"/>
87940       </return-value>
87941       <parameters>
87942         <parameter name="context" transfer-ownership="none">
87943           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
87944         </parameter>
87945       </parameters>
87946     </function>
87947     <function name="drag_highlight" c:identifier="gtk_drag_highlight">
87948       <return-value transfer-ownership="none">
87949         <type name="none" c:type="void"/>
87950       </return-value>
87951       <parameters>
87952         <parameter name="widget" transfer-ownership="none">
87953           <type name="Widget" c:type="GtkWidget*"/>
87954         </parameter>
87955       </parameters>
87956     </function>
87957     <function name="drag_set_default_icon"
87958               c:identifier="gtk_drag_set_default_icon"
87959               deprecated="Change the default drag icon via the stock system by ">
87960       <doc xml:whitespace="preserve">Changes the default drag icon. GTK+ retains references for the
87961 arguments, and will release them when they are no longer needed.
87962 changing the stock pixbuf for #GTK_STOCK_DND instead.</doc>
87963       <return-value transfer-ownership="none">
87964         <type name="none" c:type="void"/>
87965       </return-value>
87966       <parameters>
87967         <parameter name="colormap" transfer-ownership="none">
87968           <doc xml:whitespace="preserve">the colormap of the icon</doc>
87969           <type name="Gdk.Colormap" c:type="GdkColormap*"/>
87970         </parameter>
87971         <parameter name="pixmap" transfer-ownership="none">
87972           <doc xml:whitespace="preserve">the image data for the icon</doc>
87973           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
87974         </parameter>
87975         <parameter name="mask" transfer-ownership="none" allow-none="1">
87976           <doc xml:whitespace="preserve">the transparency mask for an image, or %NULL</doc>
87977           <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
87978         </parameter>
87979         <parameter name="hot_x" transfer-ownership="none">
87980           <doc xml:whitespace="preserve">The X offset within @widget of the hotspot.</doc>
87981           <type name="int" c:type="gint"/>
87982         </parameter>
87983         <parameter name="hot_y" transfer-ownership="none">
87984           <doc xml:whitespace="preserve">The Y offset within @widget of the hotspot.</doc>
87985           <type name="int" c:type="gint"/>
87986         </parameter>
87987       </parameters>
87988     </function>
87989     <function name="drag_set_icon_default"
87990               c:identifier="gtk_drag_set_icon_default">
87991       <doc xml:whitespace="preserve">Sets the icon for a particular drag to the default
87992 icon.</doc>
87993       <return-value transfer-ownership="none">
87994         <type name="none" c:type="void"/>
87995       </return-value>
87996       <parameters>
87997         <parameter name="context" transfer-ownership="none">
87998           <doc xml:whitespace="preserve">the context for a drag. (This must be called</doc>
87999           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
88000         </parameter>
88001       </parameters>
88002     </function>
88003     <function name="drag_set_icon_name"
88004               c:identifier="gtk_drag_set_icon_name"
88005               version="2.8">
88006       <doc xml:whitespace="preserve">Sets the icon for a given drag from a named themed icon. See
88007 the docs for #GtkIconTheme for more details. Note that the
88008 size of the icon depends on the icon theme (the icon is
88009 loaded at the symbolic size #GTK_ICON_SIZE_DND), thus</doc>
88010       <return-value transfer-ownership="none">
88011         <type name="none" c:type="void"/>
88012       </return-value>
88013       <parameters>
88014         <parameter name="context" transfer-ownership="none">
88015           <doc xml:whitespace="preserve">the context for a drag. (This must be called with a context for the source side of a drag)</doc>
88016           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
88017         </parameter>
88018         <parameter name="icon_name" transfer-ownership="none">
88019           <doc xml:whitespace="preserve">name of icon to use</doc>
88020           <type name="utf8" c:type="gchar*"/>
88021         </parameter>
88022         <parameter name="hot_x" transfer-ownership="none">
88023           <doc xml:whitespace="preserve">the X offset of the hotspot within the icon</doc>
88024           <type name="int" c:type="gint"/>
88025         </parameter>
88026         <parameter name="hot_y" transfer-ownership="none">
88027           <doc xml:whitespace="preserve">the Y offset of the hotspot within the icon</doc>
88028           <type name="int" c:type="gint"/>
88029         </parameter>
88030       </parameters>
88031     </function>
88032     <function name="drag_set_icon_pixbuf"
88033               c:identifier="gtk_drag_set_icon_pixbuf">
88034       <doc xml:whitespace="preserve">Sets @pixbuf as the icon for a given drag.</doc>
88035       <return-value transfer-ownership="none">
88036         <type name="none" c:type="void"/>
88037       </return-value>
88038       <parameters>
88039         <parameter name="context" transfer-ownership="none">
88040           <doc xml:whitespace="preserve">the context for a drag. (This must be called with a  context for the source side of a drag)</doc>
88041           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
88042         </parameter>
88043         <parameter name="pixbuf" transfer-ownership="none">
88044           <doc xml:whitespace="preserve">the #GdkPixbuf to use as the drag icon.</doc>
88045           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
88046         </parameter>
88047         <parameter name="hot_x" transfer-ownership="none">
88048           <doc xml:whitespace="preserve">the X offset within @widget of the hotspot.</doc>
88049           <type name="int" c:type="gint"/>
88050         </parameter>
88051         <parameter name="hot_y" transfer-ownership="none">
88052           <doc xml:whitespace="preserve">the Y offset within @widget of the hotspot.</doc>
88053           <type name="int" c:type="gint"/>
88054         </parameter>
88055       </parameters>
88056     </function>
88057     <function name="drag_set_icon_pixmap"
88058               c:identifier="gtk_drag_set_icon_pixmap">
88059       <doc xml:whitespace="preserve">Sets @pixmap as the icon for a given drag. GTK+ retains
88060 references for the arguments, and will release them when
88061 they are no longer needed. In general, gtk_drag_set_icon_pixbuf()
88062 will be more convenient to use.</doc>
88063       <return-value transfer-ownership="none">
88064         <type name="none" c:type="void"/>
88065       </return-value>
88066       <parameters>
88067         <parameter name="context" transfer-ownership="none">
88068           <doc xml:whitespace="preserve">the context for a drag. (This must be called with a  context for the source side of a drag)</doc>
88069           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
88070         </parameter>
88071         <parameter name="colormap" transfer-ownership="none">
88072           <doc xml:whitespace="preserve">the colormap of the icon</doc>
88073           <type name="Gdk.Colormap" c:type="GdkColormap*"/>
88074         </parameter>
88075         <parameter name="pixmap" transfer-ownership="none">
88076           <doc xml:whitespace="preserve">the image data for the icon</doc>
88077           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
88078         </parameter>
88079         <parameter name="mask" transfer-ownership="none" allow-none="1">
88080           <doc xml:whitespace="preserve">the transparency mask for the icon or %NULL for none.</doc>
88081           <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
88082         </parameter>
88083         <parameter name="hot_x" transfer-ownership="none">
88084           <doc xml:whitespace="preserve">the X offset within @pixmap of the hotspot.</doc>
88085           <type name="int" c:type="gint"/>
88086         </parameter>
88087         <parameter name="hot_y" transfer-ownership="none">
88088           <doc xml:whitespace="preserve">the Y offset within @pixmap of the hotspot.</doc>
88089           <type name="int" c:type="gint"/>
88090         </parameter>
88091       </parameters>
88092     </function>
88093     <function name="drag_set_icon_stock"
88094               c:identifier="gtk_drag_set_icon_stock">
88095       <doc xml:whitespace="preserve">Sets the icon for a given drag from a stock ID.</doc>
88096       <return-value transfer-ownership="none">
88097         <type name="none" c:type="void"/>
88098       </return-value>
88099       <parameters>
88100         <parameter name="context" transfer-ownership="none">
88101           <doc xml:whitespace="preserve">the context for a drag. (This must be called with a  context for the source side of a drag)</doc>
88102           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
88103         </parameter>
88104         <parameter name="stock_id" transfer-ownership="none">
88105           <doc xml:whitespace="preserve">the ID of the stock icon to use for the drag.</doc>
88106           <type name="utf8" c:type="gchar*"/>
88107         </parameter>
88108         <parameter name="hot_x" transfer-ownership="none">
88109           <doc xml:whitespace="preserve">the X offset within the icon of the hotspot.</doc>
88110           <type name="int" c:type="gint"/>
88111         </parameter>
88112         <parameter name="hot_y" transfer-ownership="none">
88113           <doc xml:whitespace="preserve">the Y offset within the icon of the hotspot.</doc>
88114           <type name="int" c:type="gint"/>
88115         </parameter>
88116       </parameters>
88117     </function>
88118     <function name="drag_set_icon_widget"
88119               c:identifier="gtk_drag_set_icon_widget">
88120       <doc xml:whitespace="preserve">Changes the icon for a widget to a given widget. GTK+
88121 will not destroy the icon, so if you don't want
88122 it to persist, you should connect to the "drag-end" 
88123 signal and destroy it yourself.</doc>
88124       <return-value transfer-ownership="none">
88125         <type name="none" c:type="void"/>
88126       </return-value>
88127       <parameters>
88128         <parameter name="context" transfer-ownership="none">
88129           <doc xml:whitespace="preserve">the context for a drag. (This must be called</doc>
88130           <type name="Gdk.DragContext" c:type="GdkDragContext*"/>
88131         </parameter>
88132         <parameter name="widget" transfer-ownership="none">
88133           <doc xml:whitespace="preserve">a toplevel window to use as an icon.</doc>
88134           <type name="Widget" c:type="GtkWidget*"/>
88135         </parameter>
88136         <parameter name="hot_x" transfer-ownership="none">
88137           <doc xml:whitespace="preserve">the X offset within @widget of the hotspot.</doc>
88138           <type name="int" c:type="gint"/>
88139         </parameter>
88140         <parameter name="hot_y" transfer-ownership="none">
88141           <doc xml:whitespace="preserve">the Y offset within @widget of the hotspot.</doc>
88142           <type name="int" c:type="gint"/>
88143         </parameter>
88144       </parameters>
88145     </function>
88146     <function name="drag_source_add_image_targets"
88147               c:identifier="gtk_drag_source_add_image_targets"
88148               version="2.6">
88149       <doc xml:whitespace="preserve">Add the writable image targets supported by #GtkSelection to
88150 the target list of the drag source. The targets
88151 are added with @info = 0. If you need another value, 
88152 use gtk_target_list_add_image_targets() and
88153 gtk_drag_source_set_target_list().</doc>
88154       <return-value transfer-ownership="none">
88155         <type name="none" c:type="void"/>
88156       </return-value>
88157       <parameters>
88158         <parameter name="widget" transfer-ownership="none">
88159           <doc xml:whitespace="preserve">a #GtkWidget that's is a drag source</doc>
88160           <type name="Widget" c:type="GtkWidget*"/>
88161         </parameter>
88162       </parameters>
88163     </function>
88164     <function name="drag_source_add_text_targets"
88165               c:identifier="gtk_drag_source_add_text_targets"
88166               version="2.6">
88167       <doc xml:whitespace="preserve">Add the text targets supported by #GtkSelection to
88168 the target list of the drag source.  The targets
88169 are added with @info = 0. If you need another value, 
88170 use gtk_target_list_add_text_targets() and
88171 gtk_drag_source_set_target_list().</doc>
88172       <return-value transfer-ownership="none">
88173         <type name="none" c:type="void"/>
88174       </return-value>
88175       <parameters>
88176         <parameter name="widget" transfer-ownership="none">
88177           <doc xml:whitespace="preserve">a #GtkWidget that's is a drag source</doc>
88178           <type name="Widget" c:type="GtkWidget*"/>
88179         </parameter>
88180       </parameters>
88181     </function>
88182     <function name="drag_source_add_uri_targets"
88183               c:identifier="gtk_drag_source_add_uri_targets"
88184               version="2.6">
88185       <doc xml:whitespace="preserve">Add the URI targets supported by #GtkSelection to
88186 the target list of the drag source.  The targets
88187 are added with @info = 0. If you need another value, 
88188 use gtk_target_list_add_uri_targets() and
88189 gtk_drag_source_set_target_list().</doc>
88190       <return-value transfer-ownership="none">
88191         <type name="none" c:type="void"/>
88192       </return-value>
88193       <parameters>
88194         <parameter name="widget" transfer-ownership="none">
88195           <doc xml:whitespace="preserve">a #GtkWidget that's is a drag source</doc>
88196           <type name="Widget" c:type="GtkWidget*"/>
88197         </parameter>
88198       </parameters>
88199     </function>
88200     <function name="drag_source_get_target_list"
88201               c:identifier="gtk_drag_source_get_target_list"
88202               version="2.4">
88203       <doc xml:whitespace="preserve">Gets the list of targets this widget can provide for
88204 drag-and-drop.</doc>
88205       <return-value transfer-ownership="full">
88206         <doc xml:whitespace="preserve">the #GtkTargetList, or %NULL if none</doc>
88207         <type name="TargetList" c:type="GtkTargetList*"/>
88208       </return-value>
88209       <parameters>
88210         <parameter name="widget" transfer-ownership="none">
88211           <doc xml:whitespace="preserve">a #GtkWidget</doc>
88212           <type name="Widget" c:type="GtkWidget*"/>
88213         </parameter>
88214       </parameters>
88215     </function>
88216     <function name="drag_source_set" c:identifier="gtk_drag_source_set">
88217       <doc xml:whitespace="preserve">Sets up a widget so that GTK+ will start a drag operation when the user
88218 clicks and drags on the widget. The widget must have a window.</doc>
88219       <return-value transfer-ownership="none">
88220         <type name="none" c:type="void"/>
88221       </return-value>
88222       <parameters>
88223         <parameter name="widget" transfer-ownership="none">
88224           <doc xml:whitespace="preserve">a #GtkWidget</doc>
88225           <type name="Widget" c:type="GtkWidget*"/>
88226         </parameter>
88227         <parameter name="start_button_mask" transfer-ownership="none">
88228           <doc xml:whitespace="preserve">the bitmask of buttons that can start the drag</doc>
88229           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
88230         </parameter>
88231         <parameter name="targets" transfer-ownership="none" allow-none="1">
88232           <doc xml:whitespace="preserve">the table of targets that the drag will support, may be %NULL</doc>
88233           <array length="3" c:type="GtkTargetEntry*">
88234             <type name="TargetEntry"/>
88235           </array>
88236         </parameter>
88237         <parameter name="n_targets" transfer-ownership="none">
88238           <doc xml:whitespace="preserve">the number of items in @targets</doc>
88239           <type name="int" c:type="gint"/>
88240         </parameter>
88241         <parameter name="actions" transfer-ownership="none">
88242           <doc xml:whitespace="preserve">the bitmask of possible actions for a drag from this widget</doc>
88243           <type name="Gdk.DragAction" c:type="GdkDragAction"/>
88244         </parameter>
88245       </parameters>
88246     </function>
88247     <function name="drag_source_set_icon"
88248               c:identifier="gtk_drag_source_set_icon">
88249       <doc xml:whitespace="preserve">Sets the icon that will be used for drags from a particular widget
88250 from a pixmap/mask. GTK+ retains references for the arguments, and
88251 will release them when they are no longer needed.
88252 Use gtk_drag_source_set_icon_pixbuf() instead.</doc>
88253       <return-value transfer-ownership="none">
88254         <type name="none" c:type="void"/>
88255       </return-value>
88256       <parameters>
88257         <parameter name="widget" transfer-ownership="none">
88258           <doc xml:whitespace="preserve">a #GtkWidget</doc>
88259           <type name="Widget" c:type="GtkWidget*"/>
88260         </parameter>
88261         <parameter name="colormap" transfer-ownership="none">
88262           <doc xml:whitespace="preserve">the colormap of the icon</doc>
88263           <type name="Gdk.Colormap" c:type="GdkColormap*"/>
88264         </parameter>
88265         <parameter name="pixmap" transfer-ownership="none">
88266           <doc xml:whitespace="preserve">the image data for the icon</doc>
88267           <type name="Gdk.Pixmap" c:type="GdkPixmap*"/>
88268         </parameter>
88269         <parameter name="mask" transfer-ownership="none" allow-none="1">
88270           <doc xml:whitespace="preserve">the transparency mask for an image.</doc>
88271           <type name="Gdk.Bitmap" c:type="GdkBitmap*"/>
88272         </parameter>
88273       </parameters>
88274     </function>
88275     <function name="drag_source_set_icon_name"
88276               c:identifier="gtk_drag_source_set_icon_name"
88277               version="2.8">
88278       <doc xml:whitespace="preserve">Sets the icon that will be used for drags from a particular source
88279 to a themed icon. See the docs for #GtkIconTheme for more details.</doc>
88280       <return-value transfer-ownership="none">
88281         <type name="none" c:type="void"/>
88282       </return-value>
88283       <parameters>
88284         <parameter name="widget" transfer-ownership="none">
88285           <doc xml:whitespace="preserve">a #GtkWidget</doc>
88286           <type name="Widget" c:type="GtkWidget*"/>
88287         </parameter>
88288         <parameter name="icon_name" transfer-ownership="none">
88289           <doc xml:whitespace="preserve">name of icon to use</doc>
88290           <type name="utf8" c:type="gchar*"/>
88291         </parameter>
88292       </parameters>
88293     </function>
88294     <function name="drag_source_set_icon_pixbuf"
88295               c:identifier="gtk_drag_source_set_icon_pixbuf">
88296       <doc xml:whitespace="preserve">Sets the icon that will be used for drags from a particular widget
88297 from a #GdkPixbuf. GTK+ retains a reference for @pixbuf and will 
88298 release it when it is no longer needed.</doc>
88299       <return-value transfer-ownership="none">
88300         <type name="none" c:type="void"/>
88301       </return-value>
88302       <parameters>
88303         <parameter name="widget" transfer-ownership="none">
88304           <doc xml:whitespace="preserve">a #GtkWidget</doc>
88305           <type name="Widget" c:type="GtkWidget*"/>
88306         </parameter>
88307         <parameter name="pixbuf" transfer-ownership="none">
88308           <doc xml:whitespace="preserve">the #GdkPixbuf for the drag icon</doc>
88309           <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
88310         </parameter>
88311       </parameters>
88312     </function>
88313     <function name="drag_source_set_icon_stock"
88314               c:identifier="gtk_drag_source_set_icon_stock">
88315       <doc xml:whitespace="preserve">Sets the icon that will be used for drags from a particular source
88316 to a stock icon.</doc>
88317       <return-value transfer-ownership="none">
88318         <type name="none" c:type="void"/>
88319       </return-value>
88320       <parameters>
88321         <parameter name="widget" transfer-ownership="none">
88322           <doc xml:whitespace="preserve">a #GtkWidget</doc>
88323           <type name="Widget" c:type="GtkWidget*"/>
88324         </parameter>
88325         <parameter name="stock_id" transfer-ownership="none">
88326           <doc xml:whitespace="preserve">the ID of the stock icon to use</doc>
88327           <type name="utf8" c:type="gchar*"/>
88328         </parameter>
88329       </parameters>
88330     </function>
88331     <function name="drag_source_set_target_list"
88332               c:identifier="gtk_drag_source_set_target_list"
88333               version="2.4">
88334       <doc xml:whitespace="preserve">Changes the target types that this widget offers for drag-and-drop.
88335 The widget must first be made into a drag source with
88336 gtk_drag_source_set().</doc>
88337       <return-value transfer-ownership="none">
88338         <type name="none" c:type="void"/>
88339       </return-value>
88340       <parameters>
88341         <parameter name="widget" transfer-ownership="none">
88342           <doc xml:whitespace="preserve">a #GtkWidget that's a drag source</doc>
88343           <type name="Widget" c:type="GtkWidget*"/>
88344         </parameter>
88345         <parameter name="target_list" transfer-ownership="none" allow-none="1">
88346           <doc xml:whitespace="preserve">list of draggable targets, or %NULL for none</doc>
88347           <type name="TargetList" c:type="GtkTargetList*"/>
88348         </parameter>
88349       </parameters>
88350     </function>
88351     <function name="drag_source_unset" c:identifier="gtk_drag_source_unset">
88352       <return-value transfer-ownership="none">
88353         <type name="none" c:type="void"/>
88354       </return-value>
88355       <parameters>
88356         <parameter name="widget" transfer-ownership="none">
88357           <type name="Widget" c:type="GtkWidget*"/>
88358         </parameter>
88359       </parameters>
88360     </function>
88361     <function name="drag_unhighlight" c:identifier="gtk_drag_unhighlight">
88362       <return-value transfer-ownership="none">
88363         <type name="none" c:type="void"/>
88364       </return-value>
88365       <parameters>
88366         <parameter name="widget" transfer-ownership="none">
88367           <type name="Widget" c:type="GtkWidget*"/>
88368         </parameter>
88369       </parameters>
88370     </function>
88371     <function name="draw_arrow"
88372               c:identifier="gtk_draw_arrow"
88373               deprecated="Use gtk_paint_arrow() instead."
88374               deprecated-version="2.0">
88375       <doc xml:whitespace="preserve">Draws an arrow in the given rectangle on @window using the given 
88376 parameters. @arrow_type determines the direction of the arrow.</doc>
88377       <return-value transfer-ownership="none">
88378         <type name="none" c:type="void"/>
88379       </return-value>
88380       <parameters>
88381         <parameter name="style" transfer-ownership="none">
88382           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88383           <type name="Style" c:type="GtkStyle*"/>
88384         </parameter>
88385         <parameter name="window" transfer-ownership="none">
88386           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88387           <type name="Gdk.Window" c:type="GdkWindow*"/>
88388         </parameter>
88389         <parameter name="state_type" transfer-ownership="none">
88390           <doc xml:whitespace="preserve">a state</doc>
88391           <type name="StateType" c:type="GtkStateType"/>
88392         </parameter>
88393         <parameter name="shadow_type" transfer-ownership="none">
88394           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
88395           <type name="ShadowType" c:type="GtkShadowType"/>
88396         </parameter>
88397         <parameter name="arrow_type" transfer-ownership="none">
88398           <doc xml:whitespace="preserve">the type of arrow to draw</doc>
88399           <type name="ArrowType" c:type="GtkArrowType"/>
88400         </parameter>
88401         <parameter name="fill" transfer-ownership="none">
88402           <doc xml:whitespace="preserve">%TRUE if the arrow tip should be filled</doc>
88403           <type name="boolean" c:type="gboolean"/>
88404         </parameter>
88405         <parameter name="x" transfer-ownership="none">
88406           <doc xml:whitespace="preserve">x origin of the rectangle to draw the arrow in</doc>
88407           <type name="int" c:type="gint"/>
88408         </parameter>
88409         <parameter name="y" transfer-ownership="none">
88410           <doc xml:whitespace="preserve">y origin of the rectangle to draw the arrow in</doc>
88411           <type name="int" c:type="gint"/>
88412         </parameter>
88413         <parameter name="width" transfer-ownership="none">
88414           <doc xml:whitespace="preserve">width of the rectangle to draw the arrow in</doc>
88415           <type name="int" c:type="gint"/>
88416         </parameter>
88417         <parameter name="height" transfer-ownership="none">
88418           <doc xml:whitespace="preserve">height of the rectangle to draw the arrow in</doc>
88419           <type name="int" c:type="gint"/>
88420         </parameter>
88421       </parameters>
88422     </function>
88423     <function name="draw_box"
88424               c:identifier="gtk_draw_box"
88425               deprecated="Use gtk_paint_box() instead."
88426               deprecated-version="2.0">
88427       <doc xml:whitespace="preserve">Draws a box on @window with the given parameters.</doc>
88428       <return-value transfer-ownership="none">
88429         <type name="none" c:type="void"/>
88430       </return-value>
88431       <parameters>
88432         <parameter name="style" transfer-ownership="none">
88433           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88434           <type name="Style" c:type="GtkStyle*"/>
88435         </parameter>
88436         <parameter name="window" transfer-ownership="none">
88437           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88438           <type name="Gdk.Window" c:type="GdkWindow*"/>
88439         </parameter>
88440         <parameter name="state_type" transfer-ownership="none">
88441           <doc xml:whitespace="preserve">a state</doc>
88442           <type name="StateType" c:type="GtkStateType"/>
88443         </parameter>
88444         <parameter name="shadow_type" transfer-ownership="none">
88445           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
88446           <type name="ShadowType" c:type="GtkShadowType"/>
88447         </parameter>
88448         <parameter name="x" transfer-ownership="none">
88449           <doc xml:whitespace="preserve">x origin of the box</doc>
88450           <type name="int" c:type="gint"/>
88451         </parameter>
88452         <parameter name="y" transfer-ownership="none">
88453           <doc xml:whitespace="preserve">y origin of the box</doc>
88454           <type name="int" c:type="gint"/>
88455         </parameter>
88456         <parameter name="width" transfer-ownership="none">
88457           <doc xml:whitespace="preserve">the width of the box</doc>
88458           <type name="int" c:type="gint"/>
88459         </parameter>
88460         <parameter name="height" transfer-ownership="none">
88461           <doc xml:whitespace="preserve">the height of the box</doc>
88462           <type name="int" c:type="gint"/>
88463         </parameter>
88464       </parameters>
88465     </function>
88466     <function name="draw_box_gap"
88467               c:identifier="gtk_draw_box_gap"
88468               deprecated="Use gtk_paint_box_gap() instead."
88469               deprecated-version="2.0">
88470       <doc xml:whitespace="preserve">Draws a box in @window using the given style and state and shadow type, 
88471 leaving a gap in one side.</doc>
88472       <return-value transfer-ownership="none">
88473         <type name="none" c:type="void"/>
88474       </return-value>
88475       <parameters>
88476         <parameter name="style" transfer-ownership="none">
88477           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88478           <type name="Style" c:type="GtkStyle*"/>
88479         </parameter>
88480         <parameter name="window" transfer-ownership="none">
88481           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88482           <type name="Gdk.Window" c:type="GdkWindow*"/>
88483         </parameter>
88484         <parameter name="state_type" transfer-ownership="none">
88485           <doc xml:whitespace="preserve">a state</doc>
88486           <type name="StateType" c:type="GtkStateType"/>
88487         </parameter>
88488         <parameter name="shadow_type" transfer-ownership="none">
88489           <doc xml:whitespace="preserve">type of shadow to draw</doc>
88490           <type name="ShadowType" c:type="GtkShadowType"/>
88491         </parameter>
88492         <parameter name="x" transfer-ownership="none">
88493           <doc xml:whitespace="preserve">x origin of the rectangle</doc>
88494           <type name="int" c:type="gint"/>
88495         </parameter>
88496         <parameter name="y" transfer-ownership="none">
88497           <doc xml:whitespace="preserve">y origin of the rectangle</doc>
88498           <type name="int" c:type="gint"/>
88499         </parameter>
88500         <parameter name="width" transfer-ownership="none">
88501           <doc xml:whitespace="preserve">width of the rectangle</doc>
88502           <type name="int" c:type="gint"/>
88503         </parameter>
88504         <parameter name="height" transfer-ownership="none">
88505           <doc xml:whitespace="preserve">width of the rectangle</doc>
88506           <type name="int" c:type="gint"/>
88507         </parameter>
88508         <parameter name="gap_side" transfer-ownership="none">
88509           <doc xml:whitespace="preserve">side in which to leave the gap</doc>
88510           <type name="PositionType" c:type="GtkPositionType"/>
88511         </parameter>
88512         <parameter name="gap_x" transfer-ownership="none">
88513           <doc xml:whitespace="preserve">starting position of the gap</doc>
88514           <type name="int" c:type="gint"/>
88515         </parameter>
88516         <parameter name="gap_width" transfer-ownership="none">
88517           <doc xml:whitespace="preserve">width of the gap</doc>
88518           <type name="int" c:type="gint"/>
88519         </parameter>
88520       </parameters>
88521     </function>
88522     <function name="draw_check"
88523               c:identifier="gtk_draw_check"
88524               deprecated="Use gtk_paint_check() instead."
88525               deprecated-version="2.0">
88526       <doc xml:whitespace="preserve">Draws a check button indicator in the given rectangle on @window with 
88527 the given parameters.</doc>
88528       <return-value transfer-ownership="none">
88529         <type name="none" c:type="void"/>
88530       </return-value>
88531       <parameters>
88532         <parameter name="style" transfer-ownership="none">
88533           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88534           <type name="Style" c:type="GtkStyle*"/>
88535         </parameter>
88536         <parameter name="window" transfer-ownership="none">
88537           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88538           <type name="Gdk.Window" c:type="GdkWindow*"/>
88539         </parameter>
88540         <parameter name="state_type" transfer-ownership="none">
88541           <doc xml:whitespace="preserve">a state</doc>
88542           <type name="StateType" c:type="GtkStateType"/>
88543         </parameter>
88544         <parameter name="shadow_type" transfer-ownership="none">
88545           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
88546           <type name="ShadowType" c:type="GtkShadowType"/>
88547         </parameter>
88548         <parameter name="x" transfer-ownership="none">
88549           <doc xml:whitespace="preserve">x origin of the rectangle to draw the check in</doc>
88550           <type name="int" c:type="gint"/>
88551         </parameter>
88552         <parameter name="y" transfer-ownership="none">
88553           <doc xml:whitespace="preserve">y origin of the rectangle to draw the check in</doc>
88554           <type name="int" c:type="gint"/>
88555         </parameter>
88556         <parameter name="width" transfer-ownership="none">
88557           <doc xml:whitespace="preserve">the width of the rectangle to draw the check in</doc>
88558           <type name="int" c:type="gint"/>
88559         </parameter>
88560         <parameter name="height" transfer-ownership="none">
88561           <doc xml:whitespace="preserve">the height of the rectangle to draw the check in</doc>
88562           <type name="int" c:type="gint"/>
88563         </parameter>
88564       </parameters>
88565     </function>
88566     <function name="draw_diamond"
88567               c:identifier="gtk_draw_diamond"
88568               deprecated="Use gtk_paint_diamond() instead."
88569               deprecated-version="2.0">
88570       <doc xml:whitespace="preserve">Draws a diamond in the given rectangle on @window using the given
88571 parameters.</doc>
88572       <return-value transfer-ownership="none">
88573         <type name="none" c:type="void"/>
88574       </return-value>
88575       <parameters>
88576         <parameter name="style" transfer-ownership="none">
88577           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88578           <type name="Style" c:type="GtkStyle*"/>
88579         </parameter>
88580         <parameter name="window" transfer-ownership="none">
88581           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88582           <type name="Gdk.Window" c:type="GdkWindow*"/>
88583         </parameter>
88584         <parameter name="state_type" transfer-ownership="none">
88585           <doc xml:whitespace="preserve">a state</doc>
88586           <type name="StateType" c:type="GtkStateType"/>
88587         </parameter>
88588         <parameter name="shadow_type" transfer-ownership="none">
88589           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
88590           <type name="ShadowType" c:type="GtkShadowType"/>
88591         </parameter>
88592         <parameter name="x" transfer-ownership="none">
88593           <doc xml:whitespace="preserve">x origin of the rectangle to draw the diamond in</doc>
88594           <type name="int" c:type="gint"/>
88595         </parameter>
88596         <parameter name="y" transfer-ownership="none">
88597           <doc xml:whitespace="preserve">y origin of the rectangle to draw the diamond in</doc>
88598           <type name="int" c:type="gint"/>
88599         </parameter>
88600         <parameter name="width" transfer-ownership="none">
88601           <doc xml:whitespace="preserve">width of the rectangle to draw the diamond in</doc>
88602           <type name="int" c:type="gint"/>
88603         </parameter>
88604         <parameter name="height" transfer-ownership="none">
88605           <doc xml:whitespace="preserve">height of the rectangle to draw the diamond in</doc>
88606           <type name="int" c:type="gint"/>
88607         </parameter>
88608       </parameters>
88609     </function>
88610     <function name="draw_expander"
88611               c:identifier="gtk_draw_expander"
88612               deprecated="Use gtk_paint_expander() instead."
88613               deprecated-version="2.0">
88614       <doc xml:whitespace="preserve">Draws an expander as used in #GtkTreeView.</doc>
88615       <return-value transfer-ownership="none">
88616         <type name="none" c:type="void"/>
88617       </return-value>
88618       <parameters>
88619         <parameter name="style" transfer-ownership="none">
88620           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88621           <type name="Style" c:type="GtkStyle*"/>
88622         </parameter>
88623         <parameter name="window" transfer-ownership="none">
88624           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88625           <type name="Gdk.Window" c:type="GdkWindow*"/>
88626         </parameter>
88627         <parameter name="state_type" transfer-ownership="none">
88628           <doc xml:whitespace="preserve">a state</doc>
88629           <type name="StateType" c:type="GtkStateType"/>
88630         </parameter>
88631         <parameter name="x" transfer-ownership="none">
88632           <doc xml:whitespace="preserve">the x position to draw the expander at</doc>
88633           <type name="int" c:type="gint"/>
88634         </parameter>
88635         <parameter name="y" transfer-ownership="none">
88636           <doc xml:whitespace="preserve">the y position to draw the expander at</doc>
88637           <type name="int" c:type="gint"/>
88638         </parameter>
88639         <parameter name="expander_style" transfer-ownership="none">
88640           <doc xml:whitespace="preserve">the style to draw the expander in</doc>
88641           <type name="ExpanderStyle" c:type="GtkExpanderStyle"/>
88642         </parameter>
88643       </parameters>
88644     </function>
88645     <function name="draw_extension"
88646               c:identifier="gtk_draw_extension"
88647               deprecated="Use gtk_paint_extension() instead."
88648               deprecated-version="2.0">
88649       <doc xml:whitespace="preserve">Draws an extension, i.e. a notebook tab.</doc>
88650       <return-value transfer-ownership="none">
88651         <type name="none" c:type="void"/>
88652       </return-value>
88653       <parameters>
88654         <parameter name="style" transfer-ownership="none">
88655           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88656           <type name="Style" c:type="GtkStyle*"/>
88657         </parameter>
88658         <parameter name="window" transfer-ownership="none">
88659           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88660           <type name="Gdk.Window" c:type="GdkWindow*"/>
88661         </parameter>
88662         <parameter name="state_type" transfer-ownership="none">
88663           <doc xml:whitespace="preserve">a state</doc>
88664           <type name="StateType" c:type="GtkStateType"/>
88665         </parameter>
88666         <parameter name="shadow_type" transfer-ownership="none">
88667           <doc xml:whitespace="preserve">type of shadow to draw</doc>
88668           <type name="ShadowType" c:type="GtkShadowType"/>
88669         </parameter>
88670         <parameter name="x" transfer-ownership="none">
88671           <doc xml:whitespace="preserve">x origin of the extension</doc>
88672           <type name="int" c:type="gint"/>
88673         </parameter>
88674         <parameter name="y" transfer-ownership="none">
88675           <doc xml:whitespace="preserve">y origin of the extension</doc>
88676           <type name="int" c:type="gint"/>
88677         </parameter>
88678         <parameter name="width" transfer-ownership="none">
88679           <doc xml:whitespace="preserve">width of the extension</doc>
88680           <type name="int" c:type="gint"/>
88681         </parameter>
88682         <parameter name="height" transfer-ownership="none">
88683           <doc xml:whitespace="preserve">width of the extension</doc>
88684           <type name="int" c:type="gint"/>
88685         </parameter>
88686         <parameter name="gap_side" transfer-ownership="none">
88687           <doc xml:whitespace="preserve">the side on to which the extension is attached</doc>
88688           <type name="PositionType" c:type="GtkPositionType"/>
88689         </parameter>
88690       </parameters>
88691     </function>
88692     <function name="draw_flat_box"
88693               c:identifier="gtk_draw_flat_box"
88694               deprecated="Use gtk_paint_flat_box() instead."
88695               deprecated-version="2.0">
88696       <doc xml:whitespace="preserve">Draws a flat box on @window with the given parameters.</doc>
88697       <return-value transfer-ownership="none">
88698         <type name="none" c:type="void"/>
88699       </return-value>
88700       <parameters>
88701         <parameter name="style" transfer-ownership="none">
88702           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88703           <type name="Style" c:type="GtkStyle*"/>
88704         </parameter>
88705         <parameter name="window" transfer-ownership="none">
88706           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88707           <type name="Gdk.Window" c:type="GdkWindow*"/>
88708         </parameter>
88709         <parameter name="state_type" transfer-ownership="none">
88710           <doc xml:whitespace="preserve">a state</doc>
88711           <type name="StateType" c:type="GtkStateType"/>
88712         </parameter>
88713         <parameter name="shadow_type" transfer-ownership="none">
88714           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
88715           <type name="ShadowType" c:type="GtkShadowType"/>
88716         </parameter>
88717         <parameter name="x" transfer-ownership="none">
88718           <doc xml:whitespace="preserve">x origin of the box</doc>
88719           <type name="int" c:type="gint"/>
88720         </parameter>
88721         <parameter name="y" transfer-ownership="none">
88722           <doc xml:whitespace="preserve">y origin of the box</doc>
88723           <type name="int" c:type="gint"/>
88724         </parameter>
88725         <parameter name="width" transfer-ownership="none">
88726           <doc xml:whitespace="preserve">the width of the box</doc>
88727           <type name="int" c:type="gint"/>
88728         </parameter>
88729         <parameter name="height" transfer-ownership="none">
88730           <doc xml:whitespace="preserve">the height of the box</doc>
88731           <type name="int" c:type="gint"/>
88732         </parameter>
88733       </parameters>
88734     </function>
88735     <function name="draw_focus"
88736               c:identifier="gtk_draw_focus"
88737               deprecated="Use gtk_paint_focus() instead."
88738               deprecated-version="2.0">
88739       <doc xml:whitespace="preserve">Draws a focus indicator around the given rectangle on @window using the
88740 given style.</doc>
88741       <return-value transfer-ownership="none">
88742         <type name="none" c:type="void"/>
88743       </return-value>
88744       <parameters>
88745         <parameter name="style" transfer-ownership="none">
88746           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88747           <type name="Style" c:type="GtkStyle*"/>
88748         </parameter>
88749         <parameter name="window" transfer-ownership="none">
88750           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88751           <type name="Gdk.Window" c:type="GdkWindow*"/>
88752         </parameter>
88753         <parameter name="x" transfer-ownership="none">
88754           <doc xml:whitespace="preserve">the x origin of the rectangle around which to draw a focus indicator</doc>
88755           <type name="int" c:type="gint"/>
88756         </parameter>
88757         <parameter name="y" transfer-ownership="none">
88758           <doc xml:whitespace="preserve">the y origin of the rectangle around which to draw a focus indicator</doc>
88759           <type name="int" c:type="gint"/>
88760         </parameter>
88761         <parameter name="width" transfer-ownership="none">
88762           <doc xml:whitespace="preserve">the width of the rectangle around which to draw a focus indicator</doc>
88763           <type name="int" c:type="gint"/>
88764         </parameter>
88765         <parameter name="height" transfer-ownership="none">
88766           <doc xml:whitespace="preserve">the height of the rectangle around which to draw a focus indicator</doc>
88767           <type name="int" c:type="gint"/>
88768         </parameter>
88769       </parameters>
88770     </function>
88771     <function name="draw_handle"
88772               c:identifier="gtk_draw_handle"
88773               deprecated="Use gtk_paint_handle() instead."
88774               deprecated-version="2.0">
88775       <doc xml:whitespace="preserve">Draws a handle as used in #GtkHandleBox and #GtkPaned.</doc>
88776       <return-value transfer-ownership="none">
88777         <type name="none" c:type="void"/>
88778       </return-value>
88779       <parameters>
88780         <parameter name="style" transfer-ownership="none">
88781           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88782           <type name="Style" c:type="GtkStyle*"/>
88783         </parameter>
88784         <parameter name="window" transfer-ownership="none">
88785           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88786           <type name="Gdk.Window" c:type="GdkWindow*"/>
88787         </parameter>
88788         <parameter name="state_type" transfer-ownership="none">
88789           <doc xml:whitespace="preserve">a state</doc>
88790           <type name="StateType" c:type="GtkStateType"/>
88791         </parameter>
88792         <parameter name="shadow_type" transfer-ownership="none">
88793           <doc xml:whitespace="preserve">type of shadow to draw</doc>
88794           <type name="ShadowType" c:type="GtkShadowType"/>
88795         </parameter>
88796         <parameter name="x" transfer-ownership="none">
88797           <doc xml:whitespace="preserve">x origin of the handle</doc>
88798           <type name="int" c:type="gint"/>
88799         </parameter>
88800         <parameter name="y" transfer-ownership="none">
88801           <doc xml:whitespace="preserve">y origin of the handle</doc>
88802           <type name="int" c:type="gint"/>
88803         </parameter>
88804         <parameter name="width" transfer-ownership="none">
88805           <doc xml:whitespace="preserve">with of the handle</doc>
88806           <type name="int" c:type="gint"/>
88807         </parameter>
88808         <parameter name="height" transfer-ownership="none">
88809           <doc xml:whitespace="preserve">height of the handle</doc>
88810           <type name="int" c:type="gint"/>
88811         </parameter>
88812         <parameter name="orientation" transfer-ownership="none">
88813           <doc xml:whitespace="preserve">the orientation of the handle</doc>
88814           <type name="Orientation" c:type="GtkOrientation"/>
88815         </parameter>
88816       </parameters>
88817     </function>
88818     <function name="draw_hline"
88819               c:identifier="gtk_draw_hline"
88820               deprecated="Use gtk_paint_hline() instead."
88821               deprecated-version="2.0">
88822       <doc xml:whitespace="preserve">Draws a horizontal line from (@x1, @y) to (@x2, @y) in @window
88823 using the given style and state.</doc>
88824       <return-value transfer-ownership="none">
88825         <type name="none" c:type="void"/>
88826       </return-value>
88827       <parameters>
88828         <parameter name="style" transfer-ownership="none">
88829           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88830           <type name="Style" c:type="GtkStyle*"/>
88831         </parameter>
88832         <parameter name="window" transfer-ownership="none">
88833           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88834           <type name="Gdk.Window" c:type="GdkWindow*"/>
88835         </parameter>
88836         <parameter name="state_type" transfer-ownership="none">
88837           <doc xml:whitespace="preserve">a state</doc>
88838           <type name="StateType" c:type="GtkStateType"/>
88839         </parameter>
88840         <parameter name="x1" transfer-ownership="none">
88841           <doc xml:whitespace="preserve">the starting x coordinate</doc>
88842           <type name="int" c:type="gint"/>
88843         </parameter>
88844         <parameter name="x2" transfer-ownership="none">
88845           <doc xml:whitespace="preserve">the ending x coordinate</doc>
88846           <type name="int" c:type="gint"/>
88847         </parameter>
88848         <parameter name="y" transfer-ownership="none">
88849           <doc xml:whitespace="preserve">the y coordinate</doc>
88850           <type name="int" c:type="gint"/>
88851         </parameter>
88852       </parameters>
88853     </function>
88854     <function name="draw_insertion_cursor"
88855               c:identifier="gtk_draw_insertion_cursor"
88856               version="2.4">
88857       <doc xml:whitespace="preserve">Draws a text caret on @drawable at @location. This is not a style function
88858 but merely a convenience function for drawing the standard cursor shape.</doc>
88859       <return-value transfer-ownership="none">
88860         <type name="none" c:type="void"/>
88861       </return-value>
88862       <parameters>
88863         <parameter name="widget" transfer-ownership="none">
88864           <doc xml:whitespace="preserve">a #GtkWidget</doc>
88865           <type name="Widget" c:type="GtkWidget*"/>
88866         </parameter>
88867         <parameter name="drawable" transfer-ownership="none">
88868           <doc xml:whitespace="preserve">a #GdkDrawable</doc>
88869           <type name="Gdk.Drawable" c:type="GdkDrawable*"/>
88870         </parameter>
88871         <parameter name="area" transfer-ownership="none" allow-none="1">
88872           <doc xml:whitespace="preserve">rectangle to which the output is clipped, or %NULL if the output should not be clipped</doc>
88873           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
88874         </parameter>
88875         <parameter name="location" transfer-ownership="none">
88876           <doc xml:whitespace="preserve">location where to draw the cursor (@location-&gt;width is ignored)</doc>
88877           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
88878         </parameter>
88879         <parameter name="is_primary" transfer-ownership="none">
88880           <doc xml:whitespace="preserve">if the cursor should be the primary cursor color.</doc>
88881           <type name="boolean" c:type="gboolean"/>
88882         </parameter>
88883         <parameter name="direction" transfer-ownership="none">
88884           <doc xml:whitespace="preserve">whether the cursor is left-to-right or right-to-left. Should never be #GTK_TEXT_DIR_NONE</doc>
88885           <type name="TextDirection" c:type="GtkTextDirection"/>
88886         </parameter>
88887         <parameter name="draw_arrow" transfer-ownership="none">
88888           <doc xml:whitespace="preserve">%TRUE to draw a directional arrow on the cursor. Should be %FALSE unless the cursor is split.</doc>
88889           <type name="boolean" c:type="gboolean"/>
88890         </parameter>
88891       </parameters>
88892     </function>
88893     <function name="draw_layout" c:identifier="gtk_draw_layout">
88894       <doc xml:whitespace="preserve">Draws a layout on @window using the given parameters.</doc>
88895       <return-value transfer-ownership="none">
88896         <type name="none" c:type="void"/>
88897       </return-value>
88898       <parameters>
88899         <parameter name="style" transfer-ownership="none">
88900           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88901           <type name="Style" c:type="GtkStyle*"/>
88902         </parameter>
88903         <parameter name="window" transfer-ownership="none">
88904           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88905           <type name="Gdk.Window" c:type="GdkWindow*"/>
88906         </parameter>
88907         <parameter name="state_type" transfer-ownership="none">
88908           <doc xml:whitespace="preserve">a state</doc>
88909           <type name="StateType" c:type="GtkStateType"/>
88910         </parameter>
88911         <parameter name="use_text" transfer-ownership="none">
88912           <doc xml:whitespace="preserve">whether to use the text or foreground graphics context of @style</doc>
88913           <type name="boolean" c:type="gboolean"/>
88914         </parameter>
88915         <parameter name="x" transfer-ownership="none">
88916           <doc xml:whitespace="preserve">x origin</doc>
88917           <type name="int" c:type="gint"/>
88918         </parameter>
88919         <parameter name="y" transfer-ownership="none">
88920           <doc xml:whitespace="preserve">y origin</doc>
88921           <type name="int" c:type="gint"/>
88922         </parameter>
88923         <parameter name="layout" transfer-ownership="none">
88924           <doc xml:whitespace="preserve">the layout to draw</doc>
88925           <type name="Pango.Layout" c:type="PangoLayout*"/>
88926         </parameter>
88927       </parameters>
88928     </function>
88929     <function name="draw_option"
88930               c:identifier="gtk_draw_option"
88931               deprecated="Use gtk_paint_option() instead."
88932               deprecated-version="2.0">
88933       <doc xml:whitespace="preserve">Draws a radio button indicator in the given rectangle on @window with 
88934 the given parameters.</doc>
88935       <return-value transfer-ownership="none">
88936         <type name="none" c:type="void"/>
88937       </return-value>
88938       <parameters>
88939         <parameter name="style" transfer-ownership="none">
88940           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88941           <type name="Style" c:type="GtkStyle*"/>
88942         </parameter>
88943         <parameter name="window" transfer-ownership="none">
88944           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88945           <type name="Gdk.Window" c:type="GdkWindow*"/>
88946         </parameter>
88947         <parameter name="state_type" transfer-ownership="none">
88948           <doc xml:whitespace="preserve">a state</doc>
88949           <type name="StateType" c:type="GtkStateType"/>
88950         </parameter>
88951         <parameter name="shadow_type" transfer-ownership="none">
88952           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
88953           <type name="ShadowType" c:type="GtkShadowType"/>
88954         </parameter>
88955         <parameter name="x" transfer-ownership="none">
88956           <doc xml:whitespace="preserve">x origin of the rectangle to draw the option in</doc>
88957           <type name="int" c:type="gint"/>
88958         </parameter>
88959         <parameter name="y" transfer-ownership="none">
88960           <doc xml:whitespace="preserve">y origin of the rectangle to draw the option in</doc>
88961           <type name="int" c:type="gint"/>
88962         </parameter>
88963         <parameter name="width" transfer-ownership="none">
88964           <doc xml:whitespace="preserve">the width of the rectangle to draw the option in</doc>
88965           <type name="int" c:type="gint"/>
88966         </parameter>
88967         <parameter name="height" transfer-ownership="none">
88968           <doc xml:whitespace="preserve">the height of the rectangle to draw the option in</doc>
88969           <type name="int" c:type="gint"/>
88970         </parameter>
88971       </parameters>
88972     </function>
88973     <function name="draw_polygon"
88974               c:identifier="gtk_draw_polygon"
88975               deprecated="Use gtk_paint_polygon() instead."
88976               deprecated-version="2.0">
88977       <doc xml:whitespace="preserve">Draws a polygon on @window with the given parameters.</doc>
88978       <return-value transfer-ownership="none">
88979         <type name="none" c:type="void"/>
88980       </return-value>
88981       <parameters>
88982         <parameter name="style" transfer-ownership="none">
88983           <doc xml:whitespace="preserve">a #GtkStyle</doc>
88984           <type name="Style" c:type="GtkStyle*"/>
88985         </parameter>
88986         <parameter name="window" transfer-ownership="none">
88987           <doc xml:whitespace="preserve">a #GdkWindow</doc>
88988           <type name="Gdk.Window" c:type="GdkWindow*"/>
88989         </parameter>
88990         <parameter name="state_type" transfer-ownership="none">
88991           <doc xml:whitespace="preserve">a state</doc>
88992           <type name="StateType" c:type="GtkStateType"/>
88993         </parameter>
88994         <parameter name="shadow_type" transfer-ownership="none">
88995           <doc xml:whitespace="preserve">type of shadow to draw</doc>
88996           <type name="ShadowType" c:type="GtkShadowType"/>
88997         </parameter>
88998         <parameter name="points" transfer-ownership="none">
88999           <doc xml:whitespace="preserve">an array of #GdkPoint&lt;!-- --&gt;s</doc>
89000           <type name="Gdk.Point" c:type="GdkPoint*"/>
89001         </parameter>
89002         <parameter name="npoints" transfer-ownership="none">
89003           <doc xml:whitespace="preserve">length of @points</doc>
89004           <type name="int" c:type="gint"/>
89005         </parameter>
89006         <parameter name="fill" transfer-ownership="none">
89007           <doc xml:whitespace="preserve">%TRUE if the polygon should be filled</doc>
89008           <type name="boolean" c:type="gboolean"/>
89009         </parameter>
89010       </parameters>
89011     </function>
89012     <function name="draw_resize_grip"
89013               c:identifier="gtk_draw_resize_grip"
89014               deprecated="Use gtk_paint_resize_grip() instead."
89015               deprecated-version="2.0">
89016       <doc xml:whitespace="preserve">Draws a resize grip in the given rectangle on @window using the given
89017 parameters.</doc>
89018       <return-value transfer-ownership="none">
89019         <type name="none" c:type="void"/>
89020       </return-value>
89021       <parameters>
89022         <parameter name="style" transfer-ownership="none">
89023           <doc xml:whitespace="preserve">a #GtkStyle</doc>
89024           <type name="Style" c:type="GtkStyle*"/>
89025         </parameter>
89026         <parameter name="window" transfer-ownership="none">
89027           <doc xml:whitespace="preserve">a #GdkWindow</doc>
89028           <type name="Gdk.Window" c:type="GdkWindow*"/>
89029         </parameter>
89030         <parameter name="state_type" transfer-ownership="none">
89031           <doc xml:whitespace="preserve">a state</doc>
89032           <type name="StateType" c:type="GtkStateType"/>
89033         </parameter>
89034         <parameter name="edge" transfer-ownership="none">
89035           <doc xml:whitespace="preserve">the edge in which to draw the resize grip</doc>
89036           <type name="Gdk.WindowEdge" c:type="GdkWindowEdge"/>
89037         </parameter>
89038         <parameter name="x" transfer-ownership="none">
89039           <doc xml:whitespace="preserve">the x origin of the rectangle in which to draw the resize grip</doc>
89040           <type name="int" c:type="gint"/>
89041         </parameter>
89042         <parameter name="y" transfer-ownership="none">
89043           <doc xml:whitespace="preserve">the y origin of the rectangle in which to draw the resize grip</doc>
89044           <type name="int" c:type="gint"/>
89045         </parameter>
89046         <parameter name="width" transfer-ownership="none">
89047           <doc xml:whitespace="preserve">the width of the rectangle in which to draw the resize grip</doc>
89048           <type name="int" c:type="gint"/>
89049         </parameter>
89050         <parameter name="height" transfer-ownership="none">
89051           <doc xml:whitespace="preserve">the height of the rectangle in which to draw the resize grip</doc>
89052           <type name="int" c:type="gint"/>
89053         </parameter>
89054       </parameters>
89055     </function>
89056     <function name="draw_shadow"
89057               c:identifier="gtk_draw_shadow"
89058               deprecated="Use gtk_paint_shadow() instead."
89059               deprecated-version="2.0">
89060       <doc xml:whitespace="preserve">Draws a shadow around the given rectangle in @window 
89061 using the given style and state and shadow type.</doc>
89062       <return-value transfer-ownership="none">
89063         <type name="none" c:type="void"/>
89064       </return-value>
89065       <parameters>
89066         <parameter name="style" transfer-ownership="none">
89067           <doc xml:whitespace="preserve">a #GtkStyle</doc>
89068           <type name="Style" c:type="GtkStyle*"/>
89069         </parameter>
89070         <parameter name="window" transfer-ownership="none">
89071           <doc xml:whitespace="preserve">a #GdkWindow</doc>
89072           <type name="Gdk.Window" c:type="GdkWindow*"/>
89073         </parameter>
89074         <parameter name="state_type" transfer-ownership="none">
89075           <doc xml:whitespace="preserve">a state</doc>
89076           <type name="StateType" c:type="GtkStateType"/>
89077         </parameter>
89078         <parameter name="shadow_type" transfer-ownership="none">
89079           <doc xml:whitespace="preserve">type of shadow to draw</doc>
89080           <type name="ShadowType" c:type="GtkShadowType"/>
89081         </parameter>
89082         <parameter name="x" transfer-ownership="none">
89083           <doc xml:whitespace="preserve">x origin of the rectangle</doc>
89084           <type name="int" c:type="gint"/>
89085         </parameter>
89086         <parameter name="y" transfer-ownership="none">
89087           <doc xml:whitespace="preserve">y origin of the rectangle</doc>
89088           <type name="int" c:type="gint"/>
89089         </parameter>
89090         <parameter name="width" transfer-ownership="none">
89091           <doc xml:whitespace="preserve">width of the rectangle</doc>
89092           <type name="int" c:type="gint"/>
89093         </parameter>
89094         <parameter name="height" transfer-ownership="none">
89095           <doc xml:whitespace="preserve">width of the rectangle</doc>
89096           <type name="int" c:type="gint"/>
89097         </parameter>
89098       </parameters>
89099     </function>
89100     <function name="draw_shadow_gap"
89101               c:identifier="gtk_draw_shadow_gap"
89102               deprecated="Use gtk_paint_shadow_gap() instead."
89103               deprecated-version="2.0">
89104       <doc xml:whitespace="preserve">Draws a shadow around the given rectangle in @window 
89105 using the given style and state and shadow type, leaving a 
89106 gap in one side.</doc>
89107       <return-value transfer-ownership="none">
89108         <type name="none" c:type="void"/>
89109       </return-value>
89110       <parameters>
89111         <parameter name="style" transfer-ownership="none">
89112           <doc xml:whitespace="preserve">a #GtkStyle</doc>
89113           <type name="Style" c:type="GtkStyle*"/>
89114         </parameter>
89115         <parameter name="window" transfer-ownership="none">
89116           <doc xml:whitespace="preserve">a #GdkWindow</doc>
89117           <type name="Gdk.Window" c:type="GdkWindow*"/>
89118         </parameter>
89119         <parameter name="state_type" transfer-ownership="none">
89120           <doc xml:whitespace="preserve">a state</doc>
89121           <type name="StateType" c:type="GtkStateType"/>
89122         </parameter>
89123         <parameter name="shadow_type" transfer-ownership="none">
89124           <doc xml:whitespace="preserve">type of shadow to draw</doc>
89125           <type name="ShadowType" c:type="GtkShadowType"/>
89126         </parameter>
89127         <parameter name="x" transfer-ownership="none">
89128           <doc xml:whitespace="preserve">x origin of the rectangle</doc>
89129           <type name="int" c:type="gint"/>
89130         </parameter>
89131         <parameter name="y" transfer-ownership="none">
89132           <doc xml:whitespace="preserve">y origin of the rectangle</doc>
89133           <type name="int" c:type="gint"/>
89134         </parameter>
89135         <parameter name="width" transfer-ownership="none">
89136           <doc xml:whitespace="preserve">width of the rectangle</doc>
89137           <type name="int" c:type="gint"/>
89138         </parameter>
89139         <parameter name="height" transfer-ownership="none">
89140           <doc xml:whitespace="preserve">width of the rectangle</doc>
89141           <type name="int" c:type="gint"/>
89142         </parameter>
89143         <parameter name="gap_side" transfer-ownership="none">
89144           <doc xml:whitespace="preserve">side in which to leave the gap</doc>
89145           <type name="PositionType" c:type="GtkPositionType"/>
89146         </parameter>
89147         <parameter name="gap_x" transfer-ownership="none">
89148           <doc xml:whitespace="preserve">starting position of the gap</doc>
89149           <type name="int" c:type="gint"/>
89150         </parameter>
89151         <parameter name="gap_width" transfer-ownership="none">
89152           <doc xml:whitespace="preserve">width of the gap</doc>
89153           <type name="int" c:type="gint"/>
89154         </parameter>
89155       </parameters>
89156     </function>
89157     <function name="draw_slider" c:identifier="gtk_draw_slider">
89158       <doc xml:whitespace="preserve">Draws a slider in the given rectangle on @window using the
89159 given style and orientation.</doc>
89160       <return-value transfer-ownership="none">
89161         <type name="none" c:type="void"/>
89162       </return-value>
89163       <parameters>
89164         <parameter name="style" transfer-ownership="none">
89165           <doc xml:whitespace="preserve">a #GtkStyle</doc>
89166           <type name="Style" c:type="GtkStyle*"/>
89167         </parameter>
89168         <parameter name="window" transfer-ownership="none">
89169           <type name="Gdk.Window" c:type="GdkWindow*"/>
89170         </parameter>
89171         <parameter name="state_type" transfer-ownership="none">
89172           <doc xml:whitespace="preserve">a state</doc>
89173           <type name="StateType" c:type="GtkStateType"/>
89174         </parameter>
89175         <parameter name="shadow_type" transfer-ownership="none">
89176           <doc xml:whitespace="preserve">a shadow</doc>
89177           <type name="ShadowType" c:type="GtkShadowType"/>
89178         </parameter>
89179         <parameter name="x" transfer-ownership="none">
89180           <doc xml:whitespace="preserve">the x origin of the rectangle in which to draw a slider</doc>
89181           <type name="int" c:type="gint"/>
89182         </parameter>
89183         <parameter name="y" transfer-ownership="none">
89184           <doc xml:whitespace="preserve">the y origin of the rectangle in which to draw a slider</doc>
89185           <type name="int" c:type="gint"/>
89186         </parameter>
89187         <parameter name="width" transfer-ownership="none">
89188           <doc xml:whitespace="preserve">the width of the rectangle in which to draw a slider</doc>
89189           <type name="int" c:type="gint"/>
89190         </parameter>
89191         <parameter name="height" transfer-ownership="none">
89192           <doc xml:whitespace="preserve">the height of the rectangle in which to draw a slider</doc>
89193           <type name="int" c:type="gint"/>
89194         </parameter>
89195         <parameter name="orientation" transfer-ownership="none">
89196           <doc xml:whitespace="preserve">the orientation to be used</doc>
89197           <type name="Orientation" c:type="GtkOrientation"/>
89198         </parameter>
89199       </parameters>
89200     </function>
89201     <function name="draw_string"
89202               c:identifier="gtk_draw_string"
89203               deprecated="Use gtk_paint_layout() instead."
89204               deprecated-version="2.0">
89205       <doc xml:whitespace="preserve">Draws a text string on @window with the given parameters.</doc>
89206       <return-value transfer-ownership="none">
89207         <type name="none" c:type="void"/>
89208       </return-value>
89209       <parameters>
89210         <parameter name="style" transfer-ownership="none">
89211           <doc xml:whitespace="preserve">a #GtkStyle</doc>
89212           <type name="Style" c:type="GtkStyle*"/>
89213         </parameter>
89214         <parameter name="window" transfer-ownership="none">
89215           <doc xml:whitespace="preserve">a #GdkWindow</doc>
89216           <type name="Gdk.Window" c:type="GdkWindow*"/>
89217         </parameter>
89218         <parameter name="state_type" transfer-ownership="none">
89219           <doc xml:whitespace="preserve">a state</doc>
89220           <type name="StateType" c:type="GtkStateType"/>
89221         </parameter>
89222         <parameter name="x" transfer-ownership="none">
89223           <doc xml:whitespace="preserve">x origin</doc>
89224           <type name="int" c:type="gint"/>
89225         </parameter>
89226         <parameter name="y" transfer-ownership="none">
89227           <doc xml:whitespace="preserve">y origin</doc>
89228           <type name="int" c:type="gint"/>
89229         </parameter>
89230         <parameter name="string" transfer-ownership="none">
89231           <doc xml:whitespace="preserve">the string to draw</doc>
89232           <type name="utf8" c:type="gchar*"/>
89233         </parameter>
89234       </parameters>
89235     </function>
89236     <function name="draw_tab"
89237               c:identifier="gtk_draw_tab"
89238               deprecated="Use gtk_paint_tab() instead."
89239               deprecated-version="2.0">
89240       <doc xml:whitespace="preserve">Draws an option menu tab (i.e. the up and down pointing arrows)
89241 in the given rectangle on @window using the given parameters.</doc>
89242       <return-value transfer-ownership="none">
89243         <type name="none" c:type="void"/>
89244       </return-value>
89245       <parameters>
89246         <parameter name="style" transfer-ownership="none">
89247           <doc xml:whitespace="preserve">a #GtkStyle</doc>
89248           <type name="Style" c:type="GtkStyle*"/>
89249         </parameter>
89250         <parameter name="window" transfer-ownership="none">
89251           <doc xml:whitespace="preserve">a #GdkWindow</doc>
89252           <type name="Gdk.Window" c:type="GdkWindow*"/>
89253         </parameter>
89254         <parameter name="state_type" transfer-ownership="none">
89255           <doc xml:whitespace="preserve">a state</doc>
89256           <type name="StateType" c:type="GtkStateType"/>
89257         </parameter>
89258         <parameter name="shadow_type" transfer-ownership="none">
89259           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
89260           <type name="ShadowType" c:type="GtkShadowType"/>
89261         </parameter>
89262         <parameter name="x" transfer-ownership="none">
89263           <doc xml:whitespace="preserve">x origin of the rectangle to draw the tab in</doc>
89264           <type name="int" c:type="gint"/>
89265         </parameter>
89266         <parameter name="y" transfer-ownership="none">
89267           <doc xml:whitespace="preserve">y origin of the rectangle to draw the tab in</doc>
89268           <type name="int" c:type="gint"/>
89269         </parameter>
89270         <parameter name="width" transfer-ownership="none">
89271           <doc xml:whitespace="preserve">the width of the rectangle to draw the tab in</doc>
89272           <type name="int" c:type="gint"/>
89273         </parameter>
89274         <parameter name="height" transfer-ownership="none">
89275           <doc xml:whitespace="preserve">the height of the rectangle to draw the tab in</doc>
89276           <type name="int" c:type="gint"/>
89277         </parameter>
89278       </parameters>
89279     </function>
89280     <function name="draw_vline"
89281               c:identifier="gtk_draw_vline"
89282               deprecated="Use gtk_paint_vline() instead."
89283               deprecated-version="2.0">
89284       <doc xml:whitespace="preserve">Draws a vertical line from (@x, @y1_) to (@x, @y2_) in @window
89285 using the given style and state.</doc>
89286       <return-value transfer-ownership="none">
89287         <type name="none" c:type="void"/>
89288       </return-value>
89289       <parameters>
89290         <parameter name="style" transfer-ownership="none">
89291           <doc xml:whitespace="preserve">a #GtkStyle</doc>
89292           <type name="Style" c:type="GtkStyle*"/>
89293         </parameter>
89294         <parameter name="window" transfer-ownership="none">
89295           <doc xml:whitespace="preserve">a #GdkWindow</doc>
89296           <type name="Gdk.Window" c:type="GdkWindow*"/>
89297         </parameter>
89298         <parameter name="state_type" transfer-ownership="none">
89299           <doc xml:whitespace="preserve">a state</doc>
89300           <type name="StateType" c:type="GtkStateType"/>
89301         </parameter>
89302         <parameter name="y1_" transfer-ownership="none">
89303           <doc xml:whitespace="preserve">the starting y coordinate</doc>
89304           <type name="int" c:type="gint"/>
89305         </parameter>
89306         <parameter name="y2_" transfer-ownership="none">
89307           <doc xml:whitespace="preserve">the ending y coordinate</doc>
89308           <type name="int" c:type="gint"/>
89309         </parameter>
89310         <parameter name="x" transfer-ownership="none">
89311           <doc xml:whitespace="preserve">the x coordinate</doc>
89312           <type name="int" c:type="gint"/>
89313         </parameter>
89314       </parameters>
89315     </function>
89316     <function name="events_pending" c:identifier="gtk_events_pending">
89317       <return-value transfer-ownership="none">
89318         <type name="boolean" c:type="gboolean"/>
89319       </return-value>
89320     </function>
89321     <function name="exit" c:identifier="gtk_exit">
89322       <return-value transfer-ownership="none">
89323         <type name="none" c:type="void"/>
89324       </return-value>
89325       <parameters>
89326         <parameter name="error_code" transfer-ownership="none">
89327           <type name="int" c:type="gint"/>
89328         </parameter>
89329       </parameters>
89330     </function>
89331     <function name="false" c:identifier="gtk_false">
89332       <return-value transfer-ownership="none">
89333         <type name="boolean" c:type="gboolean"/>
89334       </return-value>
89335     </function>
89336     <function name="gc_get" c:identifier="gtk_gc_get">
89337       <return-value transfer-ownership="full">
89338         <type name="Gdk.GC" c:type="GdkGC*"/>
89339       </return-value>
89340       <parameters>
89341         <parameter name="depth" transfer-ownership="none">
89342           <type name="int" c:type="gint"/>
89343         </parameter>
89344         <parameter name="colormap" transfer-ownership="none">
89345           <type name="Gdk.Colormap" c:type="GdkColormap*"/>
89346         </parameter>
89347         <parameter name="values" transfer-ownership="none">
89348           <type name="Gdk.GCValues" c:type="GdkGCValues*"/>
89349         </parameter>
89350         <parameter name="values_mask" transfer-ownership="none">
89351           <type name="Gdk.GCValuesMask" c:type="GdkGCValuesMask"/>
89352         </parameter>
89353       </parameters>
89354     </function>
89355     <function name="gc_release" c:identifier="gtk_gc_release">
89356       <return-value transfer-ownership="none">
89357         <type name="none" c:type="void"/>
89358       </return-value>
89359       <parameters>
89360         <parameter name="gc" transfer-ownership="none">
89361           <type name="Gdk.GC" c:type="GdkGC*"/>
89362         </parameter>
89363       </parameters>
89364     </function>
89365     <function name="get_current_event" c:identifier="gtk_get_current_event">
89366       <doc xml:whitespace="preserve">Obtains a copy of the event currently being processed by GTK+.  For
89367 example, if you get a "clicked" signal from #GtkButton, the current
89368 event will be the #GdkEventButton that triggered the "clicked"
89369 signal. The returned event must be freed with gdk_event_free().
89370 If there is no current event, the function returns %NULL.</doc>
89371       <return-value transfer-ownership="full">
89372         <doc xml:whitespace="preserve">a copy of the current event, or %NULL if no current event.</doc>
89373         <type name="Gdk.Event" c:type="GdkEvent*"/>
89374       </return-value>
89375     </function>
89376     <function name="get_current_event_state"
89377               c:identifier="gtk_get_current_event_state">
89378       <doc xml:whitespace="preserve">If there is a current event and it has a state field, place
89379 that state field in @state and return %TRUE, otherwise return
89380 %FALSE.</doc>
89381       <return-value transfer-ownership="none">
89382         <doc xml:whitespace="preserve">%TRUE if there was a current event and it had a state field</doc>
89383         <type name="boolean" c:type="gboolean"/>
89384       </return-value>
89385       <parameters>
89386         <parameter name="state" transfer-ownership="none">
89387           <doc xml:whitespace="preserve">a location to store the state of the current event</doc>
89388           <type name="Gdk.ModifierType" c:type="GdkModifierType*"/>
89389         </parameter>
89390       </parameters>
89391     </function>
89392     <function name="get_current_event_time"
89393               c:identifier="gtk_get_current_event_time">
89394       <doc xml:whitespace="preserve">If there is a current event and it has a timestamp, return that
89395 timestamp, otherwise return %GDK_CURRENT_TIME.</doc>
89396       <return-value transfer-ownership="none">
89397         <doc xml:whitespace="preserve">the timestamp from the current event, or %GDK_CURRENT_TIME.</doc>
89398         <type name="uint32" c:type="guint32"/>
89399       </return-value>
89400     </function>
89401     <function name="get_default_language"
89402               c:identifier="gtk_get_default_language">
89403       <doc xml:whitespace="preserve">Returns the #PangoLanguage for the default language currently in
89404 effect. (Note that this can change over the life of an
89405 application.)  The default language is derived from the current
89406 locale. It determines, for example, whether GTK+ uses the
89407 right-to-left or left-to-right text direction.
89408 This function is equivalent to pango_language_get_default().  See
89409 that function for details.
89410 freed</doc>
89411       <return-value transfer-ownership="full">
89412         <doc xml:whitespace="preserve">the default language as a #PangoLanguage, must not be</doc>
89413         <type name="Pango.Language" c:type="PangoLanguage*"/>
89414       </return-value>
89415     </function>
89416     <function name="get_event_widget" c:identifier="gtk_get_event_widget">
89417       <doc xml:whitespace="preserve">If @event is %NULL or the event was not associated with any widget,
89418 returns %NULL, otherwise returns the widget that received the event
89419 originally.</doc>
89420       <return-value transfer-ownership="full">
89421         <doc xml:whitespace="preserve">the widget that originally received @event, or %NULL</doc>
89422         <type name="Widget" c:type="GtkWidget*"/>
89423       </return-value>
89424       <parameters>
89425         <parameter name="event" transfer-ownership="none">
89426           <doc xml:whitespace="preserve">a #GdkEvent</doc>
89427           <type name="Gdk.Event" c:type="GdkEvent*"/>
89428         </parameter>
89429       </parameters>
89430     </function>
89431     <function name="get_option_group"
89432               c:identifier="gtk_get_option_group"
89433               version="2.6">
89434       <doc xml:whitespace="preserve">Returns a #GOptionGroup for the commandline arguments recognized
89435 by GTK+ and GDK. You should add this group to your #GOptionContext 
89436 with g_option_context_add_group(), if you are using 
89437 g_option_context_parse() to parse your commandline arguments.
89438 by GTK+</doc>
89439       <return-value transfer-ownership="full">
89440         <doc xml:whitespace="preserve">a #GOptionGroup for the commandline arguments recognized</doc>
89441         <type name="GLib.OptionGroup" c:type="GOptionGroup*"/>
89442       </return-value>
89443       <parameters>
89444         <parameter name="open_default_display" transfer-ownership="none">
89445           <doc xml:whitespace="preserve">whether to open the default display when parsing the commandline arguments</doc>
89446           <type name="boolean" c:type="gboolean"/>
89447         </parameter>
89448       </parameters>
89449     </function>
89450     <function name="grab_add" c:identifier="gtk_grab_add">
89451       <return-value transfer-ownership="none">
89452         <type name="none" c:type="void"/>
89453       </return-value>
89454       <parameters>
89455         <parameter name="widget" transfer-ownership="none">
89456           <type name="Widget" c:type="GtkWidget*"/>
89457         </parameter>
89458       </parameters>
89459     </function>
89460     <function name="grab_get_current" c:identifier="gtk_grab_get_current">
89461       <return-value transfer-ownership="full">
89462         <type name="Widget" c:type="GtkWidget*"/>
89463       </return-value>
89464     </function>
89465     <function name="grab_remove" c:identifier="gtk_grab_remove">
89466       <return-value transfer-ownership="none">
89467         <type name="none" c:type="void"/>
89468       </return-value>
89469       <parameters>
89470         <parameter name="widget" transfer-ownership="none">
89471           <type name="Widget" c:type="GtkWidget*"/>
89472         </parameter>
89473       </parameters>
89474     </function>
89475     <function name="icon_size_from_name"
89476               c:identifier="gtk_icon_size_from_name">
89477       <doc xml:whitespace="preserve">Looks up the icon size associated with @name.</doc>
89478       <return-value transfer-ownership="full">
89479         <doc xml:whitespace="preserve">the icon size</doc>
89480         <type name="int" c:type="GtkIconSize"/>
89481       </return-value>
89482       <parameters>
89483         <parameter name="name" transfer-ownership="none">
89484           <doc xml:whitespace="preserve">the name to look up.</doc>
89485           <type name="utf8" c:type="gchar*"/>
89486         </parameter>
89487       </parameters>
89488     </function>
89489     <function name="icon_size_get_name" c:identifier="gtk_icon_size_get_name">
89490       <doc xml:whitespace="preserve">Gets the canonical name of the given icon size. The returned string
89491 is statically allocated and should not be freed.</doc>
89492       <return-value transfer-ownership="none">
89493         <doc xml:whitespace="preserve">the name of the given icon size.</doc>
89494         <type name="utf8" c:type="gchar*"/>
89495       </return-value>
89496       <parameters>
89497         <parameter name="size" transfer-ownership="none">
89498           <doc xml:whitespace="preserve">a #GtkIconSize.</doc>
89499           <type name="int" c:type="GtkIconSize"/>
89500         </parameter>
89501       </parameters>
89502     </function>
89503     <function name="icon_size_lookup" c:identifier="gtk_icon_size_lookup">
89504       <doc xml:whitespace="preserve">Obtains the pixel size of a semantic icon size, possibly
89505 modified by user preferences for the default #GtkSettings.
89506 (See gtk_icon_size_lookup_for_settings().)
89507 Normally @size would be
89508 #GTK_ICON_SIZE_MENU, #GTK_ICON_SIZE_BUTTON, etc.  This function
89509 isn't normally needed, gtk_widget_render_icon() is the usual
89510 way to get an icon for rendering, then just look at the size of
89511 the rendered pixbuf. The rendered pixbuf may not even correspond to
89512 the width/height returned by gtk_icon_size_lookup(), because themes
89513 are free to render the pixbuf however they like, including changing
89514 the usual size.</doc>
89515       <return-value transfer-ownership="none">
89516         <doc xml:whitespace="preserve">%TRUE if @size was a valid size</doc>
89517         <type name="boolean" c:type="gboolean"/>
89518       </return-value>
89519       <parameters>
89520         <parameter name="size" transfer-ownership="none">
89521           <doc xml:whitespace="preserve">an icon size</doc>
89522           <type name="int" c:type="GtkIconSize"/>
89523         </parameter>
89524         <parameter name="width"
89525                    direction="out"
89526                    caller-allocates="0"
89527                    transfer-ownership="full">
89528           <doc xml:whitespace="preserve">location to store icon width</doc>
89529           <type name="int" c:type="gint*"/>
89530         </parameter>
89531         <parameter name="height"
89532                    direction="out"
89533                    caller-allocates="0"
89534                    transfer-ownership="full">
89535           <doc xml:whitespace="preserve">location to store icon height</doc>
89536           <type name="int" c:type="gint*"/>
89537         </parameter>
89538       </parameters>
89539     </function>
89540     <function name="icon_size_lookup_for_settings"
89541               c:identifier="gtk_icon_size_lookup_for_settings"
89542               version="2.2">
89543       <doc xml:whitespace="preserve">Obtains the pixel size of a semantic icon size, possibly
89544 modified by user preferences for a particular
89545 #GtkSettings. Normally @size would be
89546 #GTK_ICON_SIZE_MENU, #GTK_ICON_SIZE_BUTTON, etc.  This function
89547 isn't normally needed, gtk_widget_render_icon() is the usual
89548 way to get an icon for rendering, then just look at the size of
89549 the rendered pixbuf. The rendered pixbuf may not even correspond to
89550 the width/height returned by gtk_icon_size_lookup(), because themes
89551 are free to render the pixbuf however they like, including changing
89552 the usual size.</doc>
89553       <return-value transfer-ownership="none">
89554         <doc xml:whitespace="preserve">%TRUE if @size was a valid size</doc>
89555         <type name="boolean" c:type="gboolean"/>
89556       </return-value>
89557       <parameters>
89558         <parameter name="settings" transfer-ownership="none">
89559           <doc xml:whitespace="preserve">a #GtkSettings object, used to determine which set of user preferences to used.</doc>
89560           <type name="Settings" c:type="GtkSettings*"/>
89561         </parameter>
89562         <parameter name="size" transfer-ownership="none">
89563           <doc xml:whitespace="preserve">an icon size</doc>
89564           <type name="int" c:type="GtkIconSize"/>
89565         </parameter>
89566         <parameter name="width"
89567                    direction="out"
89568                    caller-allocates="0"
89569                    transfer-ownership="full">
89570           <doc xml:whitespace="preserve">location to store icon width</doc>
89571           <type name="int" c:type="gint*"/>
89572         </parameter>
89573         <parameter name="height"
89574                    direction="out"
89575                    caller-allocates="0"
89576                    transfer-ownership="full">
89577           <doc xml:whitespace="preserve">location to store icon height</doc>
89578           <type name="int" c:type="gint*"/>
89579         </parameter>
89580       </parameters>
89581     </function>
89582     <function name="icon_size_register" c:identifier="gtk_icon_size_register">
89583       <doc xml:whitespace="preserve">Registers a new icon size, along the same lines as #GTK_ICON_SIZE_MENU,
89584 etc. Returns the integer value for the size.</doc>
89585       <return-value transfer-ownership="full">
89586         <doc xml:whitespace="preserve">integer value representing the size</doc>
89587         <type name="int" c:type="GtkIconSize"/>
89588       </return-value>
89589       <parameters>
89590         <parameter name="name" transfer-ownership="none">
89591           <doc xml:whitespace="preserve">name of the icon size</doc>
89592           <type name="utf8" c:type="gchar*"/>
89593         </parameter>
89594         <parameter name="width" transfer-ownership="none">
89595           <doc xml:whitespace="preserve">the icon width</doc>
89596           <type name="int" c:type="gint"/>
89597         </parameter>
89598         <parameter name="height" transfer-ownership="none">
89599           <doc xml:whitespace="preserve">the icon height</doc>
89600           <type name="int" c:type="gint"/>
89601         </parameter>
89602       </parameters>
89603     </function>
89604     <function name="icon_size_register_alias"
89605               c:identifier="gtk_icon_size_register_alias">
89606       <doc xml:whitespace="preserve">Registers @alias as another name for @target.
89607 So calling gtk_icon_size_from_name() with @alias as argument
89608 will return @target.</doc>
89609       <return-value transfer-ownership="none">
89610         <type name="none" c:type="void"/>
89611       </return-value>
89612       <parameters>
89613         <parameter name="alias" transfer-ownership="none">
89614           <doc xml:whitespace="preserve">an alias for @target</doc>
89615           <type name="utf8" c:type="gchar*"/>
89616         </parameter>
89617         <parameter name="target" transfer-ownership="none">
89618           <doc xml:whitespace="preserve">an existing icon size</doc>
89619           <type name="int" c:type="GtkIconSize"/>
89620         </parameter>
89621       </parameters>
89622     </function>
89623     <function name="idle_add" c:identifier="gtk_idle_add">
89624       <return-value transfer-ownership="none">
89625         <type name="uint" c:type="guint"/>
89626       </return-value>
89627       <parameters>
89628         <parameter name="function"
89629                    transfer-ownership="none"
89630                    scope="call"
89631                    closure="1">
89632           <type name="Function" c:type="GtkFunction"/>
89633         </parameter>
89634         <parameter name="data" transfer-ownership="none">
89635           <type name="any" c:type="gpointer"/>
89636         </parameter>
89637       </parameters>
89638     </function>
89639     <function name="idle_add_full" c:identifier="gtk_idle_add_full">
89640       <return-value transfer-ownership="none">
89641         <type name="uint" c:type="guint"/>
89642       </return-value>
89643       <parameters>
89644         <parameter name="priority" transfer-ownership="none">
89645           <type name="int" c:type="gint"/>
89646         </parameter>
89647         <parameter name="function" transfer-ownership="none" scope="call">
89648           <type name="Function" c:type="GtkFunction"/>
89649         </parameter>
89650         <parameter name="marshal"
89651                    transfer-ownership="none"
89652                    scope="notified"
89653                    closure="3"
89654                    destroy="4">
89655           <type name="CallbackMarshal" c:type="GtkCallbackMarshal"/>
89656         </parameter>
89657         <parameter name="data" transfer-ownership="none">
89658           <type name="any" c:type="gpointer"/>
89659         </parameter>
89660         <parameter name="destroy" transfer-ownership="none" scope="call">
89661           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
89662         </parameter>
89663       </parameters>
89664     </function>
89665     <function name="idle_add_priority" c:identifier="gtk_idle_add_priority">
89666       <return-value transfer-ownership="none">
89667         <type name="uint" c:type="guint"/>
89668       </return-value>
89669       <parameters>
89670         <parameter name="priority" transfer-ownership="none">
89671           <type name="int" c:type="gint"/>
89672         </parameter>
89673         <parameter name="function"
89674                    transfer-ownership="none"
89675                    scope="call"
89676                    closure="2">
89677           <type name="Function" c:type="GtkFunction"/>
89678         </parameter>
89679         <parameter name="data" transfer-ownership="none">
89680           <type name="any" c:type="gpointer"/>
89681         </parameter>
89682       </parameters>
89683     </function>
89684     <function name="idle_remove" c:identifier="gtk_idle_remove">
89685       <return-value transfer-ownership="none">
89686         <type name="none" c:type="void"/>
89687       </return-value>
89688       <parameters>
89689         <parameter name="idle_handler_id" transfer-ownership="none">
89690           <type name="uint" c:type="guint"/>
89691         </parameter>
89692       </parameters>
89693     </function>
89694     <function name="idle_remove_by_data"
89695               c:identifier="gtk_idle_remove_by_data">
89696       <return-value transfer-ownership="none">
89697         <type name="none" c:type="void"/>
89698       </return-value>
89699       <parameters>
89700         <parameter name="data" transfer-ownership="none">
89701           <type name="any" c:type="gpointer"/>
89702         </parameter>
89703       </parameters>
89704     </function>
89705     <function name="init" c:identifier="gtk_init">
89706       <doc xml:whitespace="preserve">Call this function before using any other GTK+ functions in your GUI
89707 applications.  It will initialize everything needed to operate the
89708 toolkit and parses some standard command line options. @argc and 
89709 never see those standard arguments. 
89710 if you are calling gtk_parse_args(), gtk_init_check(), 
89711 gtk_init_with_args() or g_option_context_parse() with 
89712 the option group returned by gtk_get_option_group(), you 
89713 &lt;emphasis&gt;don't&lt;/emphasis&gt; have to call gtk_init().
89714 &lt;note&gt;&lt;para&gt;
89715 This function will terminate your program if it was unable to initialize 
89716 the GUI for some reason. If you want your program to fall back to a 
89717 textual interface you want to call gtk_init_check() instead.
89718 &lt;/para&gt;&lt;/note&gt;
89719 &lt;note&gt;&lt;para&gt;
89720 Since 2.18, GTK+ calls &lt;literal&gt;signal (SIGPIPE, SIG_IGN)&lt;/literal&gt;
89721 during initialization, to ignore SIGPIPE signals, since these are
89722 almost never wanted in graphical applications. If you do need to
89723 handle SIGPIPE for some reason, reset the handler after gtk_init(),
89724 but notice that other libraries (e.g. libdbus or gvfs) might do
89725 similar things.
89726 &lt;/para&gt;&lt;/note&gt;</doc>
89727       <return-value transfer-ownership="none">
89728         <type name="none" c:type="void"/>
89729       </return-value>
89730       <parameters>
89731         <parameter name="argc"
89732                    direction="inout"
89733                    caller-allocates="0"
89734                    transfer-ownership="full">
89735           <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>
89736           <type name="int" c:type="int*"/>
89737         </parameter>
89738         <parameter name="argv"
89739                    direction="inout"
89740                    caller-allocates="0"
89741                    transfer-ownership="full"
89742                    allow-none="1">
89743           <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>
89744           <array length="0" c:type="char***">
89745             <type name="utf8"/>
89746           </array>
89747         </parameter>
89748       </parameters>
89749     </function>
89750     <function name="init_add" c:identifier="gtk_init_add">
89751       <return-value transfer-ownership="none">
89752         <type name="none" c:type="void"/>
89753       </return-value>
89754       <parameters>
89755         <parameter name="function"
89756                    transfer-ownership="none"
89757                    scope="call"
89758                    closure="1">
89759           <type name="Function" c:type="GtkFunction"/>
89760         </parameter>
89761         <parameter name="data" transfer-ownership="none">
89762           <type name="any" c:type="gpointer"/>
89763         </parameter>
89764       </parameters>
89765     </function>
89766     <function name="init_check" c:identifier="gtk_init_check">
89767       <doc xml:whitespace="preserve">This function does the same work as gtk_init() with only
89768 initialized. Instead it returns %FALSE on failure.
89769 This way the application can fall back to some other means of communication 
89770 with the user - for example a curses or command line interface.
89771 %FALSE otherwise.</doc>
89772       <return-value transfer-ownership="none">
89773         <doc xml:whitespace="preserve">%TRUE if the GUI has been successfully initialized,</doc>
89774         <type name="boolean" c:type="gboolean"/>
89775       </return-value>
89776       <parameters>
89777         <parameter name="argc"
89778                    direction="inout"
89779                    caller-allocates="0"
89780                    transfer-ownership="full">
89781           <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>
89782           <type name="int" c:type="int*"/>
89783         </parameter>
89784         <parameter name="argv"
89785                    direction="inout"
89786                    caller-allocates="0"
89787                    transfer-ownership="full"
89788                    allow-none="1">
89789           <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>
89790           <array length="0" c:type="char***">
89791             <type name="utf8"/>
89792           </array>
89793         </parameter>
89794       </parameters>
89795     </function>
89796     <function name="init_with_args"
89797               c:identifier="gtk_init_with_args"
89798               version="2.6"
89799               throws="1">
89800       <doc xml:whitespace="preserve">This function does the same work as gtk_init_check(). 
89801 Additionally, it allows you to add your own commandline options, 
89802 and it automatically generates nicely formatted 
89803 &lt;option&gt;--help&lt;/option&gt; output. Note that your program will
89804 be terminated after writing out the help output.
89805 %FALSE otherwise.</doc>
89806       <return-value transfer-ownership="none">
89807         <doc xml:whitespace="preserve">%TRUE if the GUI has been successfully initialized,</doc>
89808         <type name="boolean" c:type="gboolean"/>
89809       </return-value>
89810       <parameters>
89811         <parameter name="argc"
89812                    direction="out"
89813                    caller-allocates="0"
89814                    transfer-ownership="full">
89815           <doc xml:whitespace="preserve">a pointer to the number of command line arguments.</doc>
89816           <type name="int" c:type="int*"/>
89817         </parameter>
89818         <parameter name="argv" transfer-ownership="none">
89819           <doc xml:whitespace="preserve">a pointer to the array of command line arguments.</doc>
89820           <type name="utf8" c:type="char***"/>
89821         </parameter>
89822         <parameter name="parameter_string" transfer-ownership="none">
89823           <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>
89824           <type name="utf8" c:type="char*"/>
89825         </parameter>
89826         <parameter name="entries" transfer-ownership="none">
89827           <doc xml:whitespace="preserve">a %NULL-terminated array of #GOptionEntry&lt;!-- --&gt;s describing the options of your program</doc>
89828           <type name="GLib.OptionEntry" c:type="GOptionEntry*"/>
89829         </parameter>
89830         <parameter name="translation_domain" transfer-ownership="none">
89831           <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 with gettext(), or %NULL</doc>
89832           <type name="utf8" c:type="char*"/>
89833         </parameter>
89834       </parameters>
89835     </function>
89836     <function name="input_add_full" c:identifier="gtk_input_add_full">
89837       <return-value transfer-ownership="none">
89838         <type name="uint" c:type="guint"/>
89839       </return-value>
89840       <parameters>
89841         <parameter name="source" transfer-ownership="none">
89842           <type name="int" c:type="gint"/>
89843         </parameter>
89844         <parameter name="condition" transfer-ownership="none">
89845           <type name="Gdk.InputCondition" c:type="GdkInputCondition"/>
89846         </parameter>
89847         <parameter name="function" transfer-ownership="none" scope="call">
89848           <type name="Gdk.InputFunction" c:type="GdkInputFunction"/>
89849         </parameter>
89850         <parameter name="marshal"
89851                    transfer-ownership="none"
89852                    scope="notified"
89853                    closure="4"
89854                    destroy="5">
89855           <type name="CallbackMarshal" c:type="GtkCallbackMarshal"/>
89856         </parameter>
89857         <parameter name="data" transfer-ownership="none">
89858           <type name="any" c:type="gpointer"/>
89859         </parameter>
89860         <parameter name="destroy" transfer-ownership="none" scope="call">
89861           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
89862         </parameter>
89863       </parameters>
89864     </function>
89865     <function name="input_remove" c:identifier="gtk_input_remove">
89866       <return-value transfer-ownership="none">
89867         <type name="none" c:type="void"/>
89868       </return-value>
89869       <parameters>
89870         <parameter name="input_handler_id" transfer-ownership="none">
89871           <type name="uint" c:type="guint"/>
89872         </parameter>
89873       </parameters>
89874     </function>
89875     <function name="key_snooper_install"
89876               c:identifier="gtk_key_snooper_install">
89877       <return-value transfer-ownership="none">
89878         <type name="uint" c:type="guint"/>
89879       </return-value>
89880       <parameters>
89881         <parameter name="snooper"
89882                    transfer-ownership="none"
89883                    scope="call"
89884                    closure="1">
89885           <type name="KeySnoopFunc" c:type="GtkKeySnoopFunc"/>
89886         </parameter>
89887         <parameter name="func_data" transfer-ownership="none">
89888           <type name="any" c:type="gpointer"/>
89889         </parameter>
89890       </parameters>
89891     </function>
89892     <function name="key_snooper_remove" c:identifier="gtk_key_snooper_remove">
89893       <return-value transfer-ownership="none">
89894         <type name="none" c:type="void"/>
89895       </return-value>
89896       <parameters>
89897         <parameter name="snooper_handler_id" transfer-ownership="none">
89898           <type name="uint" c:type="guint"/>
89899         </parameter>
89900       </parameters>
89901     </function>
89902     <function name="main" c:identifier="gtk_main">
89903       <return-value transfer-ownership="none">
89904         <type name="none" c:type="void"/>
89905       </return-value>
89906     </function>
89907     <function name="main_do_event" c:identifier="gtk_main_do_event">
89908       <return-value transfer-ownership="none">
89909         <type name="none" c:type="void"/>
89910       </return-value>
89911       <parameters>
89912         <parameter name="event" transfer-ownership="none">
89913           <type name="Gdk.Event" c:type="GdkEvent*"/>
89914         </parameter>
89915       </parameters>
89916     </function>
89917     <function name="main_iteration" c:identifier="gtk_main_iteration">
89918       <return-value transfer-ownership="none">
89919         <type name="boolean" c:type="gboolean"/>
89920       </return-value>
89921     </function>
89922     <function name="main_iteration_do" c:identifier="gtk_main_iteration_do">
89923       <return-value transfer-ownership="none">
89924         <type name="boolean" c:type="gboolean"/>
89925       </return-value>
89926       <parameters>
89927         <parameter name="blocking" transfer-ownership="none">
89928           <type name="boolean" c:type="gboolean"/>
89929         </parameter>
89930       </parameters>
89931     </function>
89932     <function name="main_level" c:identifier="gtk_main_level">
89933       <return-value transfer-ownership="none">
89934         <type name="uint" c:type="guint"/>
89935       </return-value>
89936     </function>
89937     <function name="main_quit" c:identifier="gtk_main_quit">
89938       <return-value transfer-ownership="none">
89939         <type name="none" c:type="void"/>
89940       </return-value>
89941     </function>
89942     <function name="paint_arrow" c:identifier="gtk_paint_arrow">
89943       <doc xml:whitespace="preserve">Draws an arrow in the given rectangle on @window using the given 
89944 parameters. @arrow_type determines the direction of the arrow.</doc>
89945       <return-value transfer-ownership="none">
89946         <type name="none" c:type="void"/>
89947       </return-value>
89948       <parameters>
89949         <parameter name="style" transfer-ownership="none">
89950           <doc xml:whitespace="preserve">a #GtkStyle</doc>
89951           <type name="Style" c:type="GtkStyle*"/>
89952         </parameter>
89953         <parameter name="window" transfer-ownership="none">
89954           <doc xml:whitespace="preserve">a #GdkWindow</doc>
89955           <type name="Gdk.Window" c:type="GdkWindow*"/>
89956         </parameter>
89957         <parameter name="state_type" transfer-ownership="none">
89958           <doc xml:whitespace="preserve">a state</doc>
89959           <type name="StateType" c:type="GtkStateType"/>
89960         </parameter>
89961         <parameter name="shadow_type" transfer-ownership="none">
89962           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
89963           <type name="ShadowType" c:type="GtkShadowType"/>
89964         </parameter>
89965         <parameter name="area" transfer-ownership="none" allow-none="1">
89966           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
89967           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
89968         </parameter>
89969         <parameter name="widget" transfer-ownership="none" allow-none="1">
89970           <doc xml:whitespace="preserve">the widget</doc>
89971           <type name="Widget" c:type="GtkWidget*"/>
89972         </parameter>
89973         <parameter name="detail" transfer-ownership="none" allow-none="1">
89974           <doc xml:whitespace="preserve">a style detail</doc>
89975           <type name="utf8" c:type="gchar*"/>
89976         </parameter>
89977         <parameter name="arrow_type" transfer-ownership="none">
89978           <doc xml:whitespace="preserve">the type of arrow to draw</doc>
89979           <type name="ArrowType" c:type="GtkArrowType"/>
89980         </parameter>
89981         <parameter name="fill" transfer-ownership="none">
89982           <doc xml:whitespace="preserve">%TRUE if the arrow tip should be filled</doc>
89983           <type name="boolean" c:type="gboolean"/>
89984         </parameter>
89985         <parameter name="x" transfer-ownership="none">
89986           <doc xml:whitespace="preserve">x origin of the rectangle to draw the arrow in</doc>
89987           <type name="int" c:type="gint"/>
89988         </parameter>
89989         <parameter name="y" transfer-ownership="none">
89990           <doc xml:whitespace="preserve">y origin of the rectangle to draw the arrow in</doc>
89991           <type name="int" c:type="gint"/>
89992         </parameter>
89993         <parameter name="width" transfer-ownership="none">
89994           <doc xml:whitespace="preserve">width of the rectangle to draw the arrow in</doc>
89995           <type name="int" c:type="gint"/>
89996         </parameter>
89997         <parameter name="height" transfer-ownership="none">
89998           <doc xml:whitespace="preserve">height of the rectangle to draw the arrow in</doc>
89999           <type name="int" c:type="gint"/>
90000         </parameter>
90001       </parameters>
90002     </function>
90003     <function name="paint_box" c:identifier="gtk_paint_box">
90004       <doc xml:whitespace="preserve">Draws a box on @window with the given parameters.</doc>
90005       <return-value transfer-ownership="none">
90006         <type name="none" c:type="void"/>
90007       </return-value>
90008       <parameters>
90009         <parameter name="style" transfer-ownership="none">
90010           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90011           <type name="Style" c:type="GtkStyle*"/>
90012         </parameter>
90013         <parameter name="window" transfer-ownership="none">
90014           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90015           <type name="Gdk.Window" c:type="GdkWindow*"/>
90016         </parameter>
90017         <parameter name="state_type" transfer-ownership="none">
90018           <doc xml:whitespace="preserve">a state</doc>
90019           <type name="StateType" c:type="GtkStateType"/>
90020         </parameter>
90021         <parameter name="shadow_type" transfer-ownership="none">
90022           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
90023           <type name="ShadowType" c:type="GtkShadowType"/>
90024         </parameter>
90025         <parameter name="area" transfer-ownership="none" allow-none="1">
90026           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90027           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90028         </parameter>
90029         <parameter name="widget" transfer-ownership="none" allow-none="1">
90030           <doc xml:whitespace="preserve">the widget</doc>
90031           <type name="Widget" c:type="GtkWidget*"/>
90032         </parameter>
90033         <parameter name="detail" transfer-ownership="none" allow-none="1">
90034           <doc xml:whitespace="preserve">a style detail</doc>
90035           <type name="utf8" c:type="gchar*"/>
90036         </parameter>
90037         <parameter name="x" transfer-ownership="none">
90038           <doc xml:whitespace="preserve">x origin of the box</doc>
90039           <type name="int" c:type="gint"/>
90040         </parameter>
90041         <parameter name="y" transfer-ownership="none">
90042           <doc xml:whitespace="preserve">y origin of the box</doc>
90043           <type name="int" c:type="gint"/>
90044         </parameter>
90045         <parameter name="width" transfer-ownership="none">
90046           <doc xml:whitespace="preserve">the width of the box</doc>
90047           <type name="int" c:type="gint"/>
90048         </parameter>
90049         <parameter name="height" transfer-ownership="none">
90050           <doc xml:whitespace="preserve">the height of the box</doc>
90051           <type name="int" c:type="gint"/>
90052         </parameter>
90053       </parameters>
90054     </function>
90055     <function name="paint_box_gap" c:identifier="gtk_paint_box_gap">
90056       <doc xml:whitespace="preserve">Draws a box in @window using the given style and state and shadow type, 
90057 leaving a gap in one side.</doc>
90058       <return-value transfer-ownership="none">
90059         <type name="none" c:type="void"/>
90060       </return-value>
90061       <parameters>
90062         <parameter name="style" transfer-ownership="none">
90063           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90064           <type name="Style" c:type="GtkStyle*"/>
90065         </parameter>
90066         <parameter name="window" transfer-ownership="none">
90067           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90068           <type name="Gdk.Window" c:type="GdkWindow*"/>
90069         </parameter>
90070         <parameter name="state_type" transfer-ownership="none">
90071           <doc xml:whitespace="preserve">a state</doc>
90072           <type name="StateType" c:type="GtkStateType"/>
90073         </parameter>
90074         <parameter name="shadow_type" transfer-ownership="none">
90075           <doc xml:whitespace="preserve">type of shadow to draw</doc>
90076           <type name="ShadowType" c:type="GtkShadowType"/>
90077         </parameter>
90078         <parameter name="area" transfer-ownership="none" allow-none="1">
90079           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90080           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90081         </parameter>
90082         <parameter name="widget" transfer-ownership="none" allow-none="1">
90083           <doc xml:whitespace="preserve">the widget</doc>
90084           <type name="Widget" c:type="GtkWidget*"/>
90085         </parameter>
90086         <parameter name="detail" transfer-ownership="none" allow-none="1">
90087           <doc xml:whitespace="preserve">a style detail</doc>
90088           <type name="utf8" c:type="gchar*"/>
90089         </parameter>
90090         <parameter name="x" transfer-ownership="none">
90091           <doc xml:whitespace="preserve">x origin of the rectangle</doc>
90092           <type name="int" c:type="gint"/>
90093         </parameter>
90094         <parameter name="y" transfer-ownership="none">
90095           <doc xml:whitespace="preserve">y origin of the rectangle</doc>
90096           <type name="int" c:type="gint"/>
90097         </parameter>
90098         <parameter name="width" transfer-ownership="none">
90099           <doc xml:whitespace="preserve">width of the rectangle</doc>
90100           <type name="int" c:type="gint"/>
90101         </parameter>
90102         <parameter name="height" transfer-ownership="none">
90103           <doc xml:whitespace="preserve">width of the rectangle</doc>
90104           <type name="int" c:type="gint"/>
90105         </parameter>
90106         <parameter name="gap_side" transfer-ownership="none">
90107           <doc xml:whitespace="preserve">side in which to leave the gap</doc>
90108           <type name="PositionType" c:type="GtkPositionType"/>
90109         </parameter>
90110         <parameter name="gap_x" transfer-ownership="none">
90111           <doc xml:whitespace="preserve">starting position of the gap</doc>
90112           <type name="int" c:type="gint"/>
90113         </parameter>
90114         <parameter name="gap_width" transfer-ownership="none">
90115           <doc xml:whitespace="preserve">width of the gap</doc>
90116           <type name="int" c:type="gint"/>
90117         </parameter>
90118       </parameters>
90119     </function>
90120     <function name="paint_check" c:identifier="gtk_paint_check">
90121       <doc xml:whitespace="preserve">Draws a check button indicator in the given rectangle on @window with 
90122 the given parameters.</doc>
90123       <return-value transfer-ownership="none">
90124         <type name="none" c:type="void"/>
90125       </return-value>
90126       <parameters>
90127         <parameter name="style" transfer-ownership="none">
90128           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90129           <type name="Style" c:type="GtkStyle*"/>
90130         </parameter>
90131         <parameter name="window" transfer-ownership="none">
90132           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90133           <type name="Gdk.Window" c:type="GdkWindow*"/>
90134         </parameter>
90135         <parameter name="state_type" transfer-ownership="none">
90136           <doc xml:whitespace="preserve">a state</doc>
90137           <type name="StateType" c:type="GtkStateType"/>
90138         </parameter>
90139         <parameter name="shadow_type" transfer-ownership="none">
90140           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
90141           <type name="ShadowType" c:type="GtkShadowType"/>
90142         </parameter>
90143         <parameter name="area" transfer-ownership="none" allow-none="1">
90144           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90145           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90146         </parameter>
90147         <parameter name="widget" transfer-ownership="none" allow-none="1">
90148           <doc xml:whitespace="preserve">the widget</doc>
90149           <type name="Widget" c:type="GtkWidget*"/>
90150         </parameter>
90151         <parameter name="detail" transfer-ownership="none" allow-none="1">
90152           <doc xml:whitespace="preserve">a style detail</doc>
90153           <type name="utf8" c:type="gchar*"/>
90154         </parameter>
90155         <parameter name="x" transfer-ownership="none">
90156           <doc xml:whitespace="preserve">x origin of the rectangle to draw the check in</doc>
90157           <type name="int" c:type="gint"/>
90158         </parameter>
90159         <parameter name="y" transfer-ownership="none">
90160           <doc xml:whitespace="preserve">y origin of the rectangle to draw the check in</doc>
90161           <type name="int" c:type="gint"/>
90162         </parameter>
90163         <parameter name="width" transfer-ownership="none">
90164           <doc xml:whitespace="preserve">the width of the rectangle to draw the check in</doc>
90165           <type name="int" c:type="gint"/>
90166         </parameter>
90167         <parameter name="height" transfer-ownership="none">
90168           <doc xml:whitespace="preserve">the height of the rectangle to draw the check in</doc>
90169           <type name="int" c:type="gint"/>
90170         </parameter>
90171       </parameters>
90172     </function>
90173     <function name="paint_diamond" c:identifier="gtk_paint_diamond">
90174       <doc xml:whitespace="preserve">Draws a diamond in the given rectangle on @window using the given
90175 parameters.</doc>
90176       <return-value transfer-ownership="none">
90177         <type name="none" c:type="void"/>
90178       </return-value>
90179       <parameters>
90180         <parameter name="style" transfer-ownership="none">
90181           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90182           <type name="Style" c:type="GtkStyle*"/>
90183         </parameter>
90184         <parameter name="window" transfer-ownership="none">
90185           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90186           <type name="Gdk.Window" c:type="GdkWindow*"/>
90187         </parameter>
90188         <parameter name="state_type" transfer-ownership="none">
90189           <doc xml:whitespace="preserve">a state</doc>
90190           <type name="StateType" c:type="GtkStateType"/>
90191         </parameter>
90192         <parameter name="shadow_type" transfer-ownership="none">
90193           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
90194           <type name="ShadowType" c:type="GtkShadowType"/>
90195         </parameter>
90196         <parameter name="area" transfer-ownership="none" allow-none="1">
90197           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90198           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90199         </parameter>
90200         <parameter name="widget" transfer-ownership="none" allow-none="1">
90201           <doc xml:whitespace="preserve">the widget</doc>
90202           <type name="Widget" c:type="GtkWidget*"/>
90203         </parameter>
90204         <parameter name="detail" transfer-ownership="none" allow-none="1">
90205           <doc xml:whitespace="preserve">a style detail</doc>
90206           <type name="utf8" c:type="gchar*"/>
90207         </parameter>
90208         <parameter name="x" transfer-ownership="none">
90209           <doc xml:whitespace="preserve">x origin of the rectangle to draw the diamond in</doc>
90210           <type name="int" c:type="gint"/>
90211         </parameter>
90212         <parameter name="y" transfer-ownership="none">
90213           <doc xml:whitespace="preserve">y origin of the rectangle to draw the diamond in</doc>
90214           <type name="int" c:type="gint"/>
90215         </parameter>
90216         <parameter name="width" transfer-ownership="none">
90217           <doc xml:whitespace="preserve">width of the rectangle to draw the diamond in</doc>
90218           <type name="int" c:type="gint"/>
90219         </parameter>
90220         <parameter name="height" transfer-ownership="none">
90221           <doc xml:whitespace="preserve">height of the rectangle to draw the diamond in</doc>
90222           <type name="int" c:type="gint"/>
90223         </parameter>
90224       </parameters>
90225     </function>
90226     <function name="paint_expander" c:identifier="gtk_paint_expander">
90227       <doc xml:whitespace="preserve">Draws an expander as used in #GtkTreeView. @x and @y specify the
90228 center the expander. The size of the expander is determined by the
90229 "expander-size" style property of @widget.  (If widget is not
90230 specified or doesn't have an "expander-size" property, an
90231 unspecified default size will be used, since the caller doesn't
90232 have sufficient information to position the expander, this is
90233 likely not useful.) The expander is expander_size pixels tall
90234 in the collapsed position and expander_size pixels wide in the
90235 expanded position.</doc>
90236       <return-value transfer-ownership="none">
90237         <type name="none" c:type="void"/>
90238       </return-value>
90239       <parameters>
90240         <parameter name="style" transfer-ownership="none">
90241           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90242           <type name="Style" c:type="GtkStyle*"/>
90243         </parameter>
90244         <parameter name="window" transfer-ownership="none">
90245           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90246           <type name="Gdk.Window" c:type="GdkWindow*"/>
90247         </parameter>
90248         <parameter name="state_type" transfer-ownership="none">
90249           <doc xml:whitespace="preserve">a state</doc>
90250           <type name="StateType" c:type="GtkStateType"/>
90251         </parameter>
90252         <parameter name="area" transfer-ownership="none" allow-none="1">
90253           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90254           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90255         </parameter>
90256         <parameter name="widget" transfer-ownership="none" allow-none="1">
90257           <doc xml:whitespace="preserve">the widget</doc>
90258           <type name="Widget" c:type="GtkWidget*"/>
90259         </parameter>
90260         <parameter name="detail" transfer-ownership="none" allow-none="1">
90261           <doc xml:whitespace="preserve">a style detail</doc>
90262           <type name="utf8" c:type="gchar*"/>
90263         </parameter>
90264         <parameter name="x" transfer-ownership="none">
90265           <doc xml:whitespace="preserve">the x position to draw the expander at</doc>
90266           <type name="int" c:type="gint"/>
90267         </parameter>
90268         <parameter name="y" transfer-ownership="none">
90269           <doc xml:whitespace="preserve">the y position to draw the expander at</doc>
90270           <type name="int" c:type="gint"/>
90271         </parameter>
90272         <parameter name="expander_style" transfer-ownership="none">
90273           <doc xml:whitespace="preserve">the style to draw the expander in; determines whether the expander is collapsed, expanded, or in an intermediate state.</doc>
90274           <type name="ExpanderStyle" c:type="GtkExpanderStyle"/>
90275         </parameter>
90276       </parameters>
90277     </function>
90278     <function name="paint_extension" c:identifier="gtk_paint_extension">
90279       <doc xml:whitespace="preserve">Draws an extension, i.e. a notebook tab.</doc>
90280       <return-value transfer-ownership="none">
90281         <type name="none" c:type="void"/>
90282       </return-value>
90283       <parameters>
90284         <parameter name="style" transfer-ownership="none">
90285           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90286           <type name="Style" c:type="GtkStyle*"/>
90287         </parameter>
90288         <parameter name="window" transfer-ownership="none">
90289           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90290           <type name="Gdk.Window" c:type="GdkWindow*"/>
90291         </parameter>
90292         <parameter name="state_type" transfer-ownership="none">
90293           <doc xml:whitespace="preserve">a state</doc>
90294           <type name="StateType" c:type="GtkStateType"/>
90295         </parameter>
90296         <parameter name="shadow_type" transfer-ownership="none">
90297           <doc xml:whitespace="preserve">type of shadow to draw</doc>
90298           <type name="ShadowType" c:type="GtkShadowType"/>
90299         </parameter>
90300         <parameter name="area" transfer-ownership="none" allow-none="1">
90301           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90302           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90303         </parameter>
90304         <parameter name="widget" transfer-ownership="none" allow-none="1">
90305           <doc xml:whitespace="preserve">the widget</doc>
90306           <type name="Widget" c:type="GtkWidget*"/>
90307         </parameter>
90308         <parameter name="detail" transfer-ownership="none" allow-none="1">
90309           <doc xml:whitespace="preserve">a style detail</doc>
90310           <type name="utf8" c:type="gchar*"/>
90311         </parameter>
90312         <parameter name="x" transfer-ownership="none">
90313           <doc xml:whitespace="preserve">x origin of the extension</doc>
90314           <type name="int" c:type="gint"/>
90315         </parameter>
90316         <parameter name="y" transfer-ownership="none">
90317           <doc xml:whitespace="preserve">y origin of the extension</doc>
90318           <type name="int" c:type="gint"/>
90319         </parameter>
90320         <parameter name="width" transfer-ownership="none">
90321           <doc xml:whitespace="preserve">width of the extension</doc>
90322           <type name="int" c:type="gint"/>
90323         </parameter>
90324         <parameter name="height" transfer-ownership="none">
90325           <doc xml:whitespace="preserve">width of the extension</doc>
90326           <type name="int" c:type="gint"/>
90327         </parameter>
90328         <parameter name="gap_side" transfer-ownership="none">
90329           <doc xml:whitespace="preserve">the side on to which the extension is attached</doc>
90330           <type name="PositionType" c:type="GtkPositionType"/>
90331         </parameter>
90332       </parameters>
90333     </function>
90334     <function name="paint_flat_box" c:identifier="gtk_paint_flat_box">
90335       <doc xml:whitespace="preserve">Draws a flat box on @window with the given parameters.</doc>
90336       <return-value transfer-ownership="none">
90337         <type name="none" c:type="void"/>
90338       </return-value>
90339       <parameters>
90340         <parameter name="style" transfer-ownership="none">
90341           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90342           <type name="Style" c:type="GtkStyle*"/>
90343         </parameter>
90344         <parameter name="window" transfer-ownership="none">
90345           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90346           <type name="Gdk.Window" c:type="GdkWindow*"/>
90347         </parameter>
90348         <parameter name="state_type" transfer-ownership="none">
90349           <doc xml:whitespace="preserve">a state</doc>
90350           <type name="StateType" c:type="GtkStateType"/>
90351         </parameter>
90352         <parameter name="shadow_type" transfer-ownership="none">
90353           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
90354           <type name="ShadowType" c:type="GtkShadowType"/>
90355         </parameter>
90356         <parameter name="area" transfer-ownership="none" allow-none="1">
90357           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90358           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90359         </parameter>
90360         <parameter name="widget" transfer-ownership="none" allow-none="1">
90361           <doc xml:whitespace="preserve">the widget</doc>
90362           <type name="Widget" c:type="GtkWidget*"/>
90363         </parameter>
90364         <parameter name="detail" transfer-ownership="none" allow-none="1">
90365           <doc xml:whitespace="preserve">a style detail</doc>
90366           <type name="utf8" c:type="gchar*"/>
90367         </parameter>
90368         <parameter name="x" transfer-ownership="none">
90369           <doc xml:whitespace="preserve">x origin of the box</doc>
90370           <type name="int" c:type="gint"/>
90371         </parameter>
90372         <parameter name="y" transfer-ownership="none">
90373           <doc xml:whitespace="preserve">y origin of the box</doc>
90374           <type name="int" c:type="gint"/>
90375         </parameter>
90376         <parameter name="width" transfer-ownership="none">
90377           <doc xml:whitespace="preserve">the width of the box</doc>
90378           <type name="int" c:type="gint"/>
90379         </parameter>
90380         <parameter name="height" transfer-ownership="none">
90381           <doc xml:whitespace="preserve">the height of the box</doc>
90382           <type name="int" c:type="gint"/>
90383         </parameter>
90384       </parameters>
90385     </function>
90386     <function name="paint_focus" c:identifier="gtk_paint_focus">
90387       <doc xml:whitespace="preserve">Draws a focus indicator around the given rectangle on @window using the
90388 given style.</doc>
90389       <return-value transfer-ownership="none">
90390         <type name="none" c:type="void"/>
90391       </return-value>
90392       <parameters>
90393         <parameter name="style" transfer-ownership="none">
90394           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90395           <type name="Style" c:type="GtkStyle*"/>
90396         </parameter>
90397         <parameter name="window" transfer-ownership="none">
90398           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90399           <type name="Gdk.Window" c:type="GdkWindow*"/>
90400         </parameter>
90401         <parameter name="state_type" transfer-ownership="none">
90402           <doc xml:whitespace="preserve">a state</doc>
90403           <type name="StateType" c:type="GtkStateType"/>
90404         </parameter>
90405         <parameter name="area" transfer-ownership="none" allow-none="1">
90406           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90407           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90408         </parameter>
90409         <parameter name="widget" transfer-ownership="none" allow-none="1">
90410           <doc xml:whitespace="preserve">the widget</doc>
90411           <type name="Widget" c:type="GtkWidget*"/>
90412         </parameter>
90413         <parameter name="detail" transfer-ownership="none" allow-none="1">
90414           <doc xml:whitespace="preserve">a style detail</doc>
90415           <type name="utf8" c:type="gchar*"/>
90416         </parameter>
90417         <parameter name="x" transfer-ownership="none">
90418           <doc xml:whitespace="preserve">the x origin of the rectangle around which to draw a focus indicator</doc>
90419           <type name="int" c:type="gint"/>
90420         </parameter>
90421         <parameter name="y" transfer-ownership="none">
90422           <doc xml:whitespace="preserve">the y origin of the rectangle around which to draw a focus indicator</doc>
90423           <type name="int" c:type="gint"/>
90424         </parameter>
90425         <parameter name="width" transfer-ownership="none">
90426           <doc xml:whitespace="preserve">the width of the rectangle around which to draw a focus indicator</doc>
90427           <type name="int" c:type="gint"/>
90428         </parameter>
90429         <parameter name="height" transfer-ownership="none">
90430           <doc xml:whitespace="preserve">the height of the rectangle around which to draw a focus indicator</doc>
90431           <type name="int" c:type="gint"/>
90432         </parameter>
90433       </parameters>
90434     </function>
90435     <function name="paint_handle" c:identifier="gtk_paint_handle">
90436       <doc xml:whitespace="preserve">Draws a handle as used in #GtkHandleBox and #GtkPaned.</doc>
90437       <return-value transfer-ownership="none">
90438         <type name="none" c:type="void"/>
90439       </return-value>
90440       <parameters>
90441         <parameter name="style" transfer-ownership="none">
90442           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90443           <type name="Style" c:type="GtkStyle*"/>
90444         </parameter>
90445         <parameter name="window" transfer-ownership="none">
90446           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90447           <type name="Gdk.Window" c:type="GdkWindow*"/>
90448         </parameter>
90449         <parameter name="state_type" transfer-ownership="none">
90450           <doc xml:whitespace="preserve">a state</doc>
90451           <type name="StateType" c:type="GtkStateType"/>
90452         </parameter>
90453         <parameter name="shadow_type" transfer-ownership="none">
90454           <doc xml:whitespace="preserve">type of shadow to draw</doc>
90455           <type name="ShadowType" c:type="GtkShadowType"/>
90456         </parameter>
90457         <parameter name="area" transfer-ownership="none" allow-none="1">
90458           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90459           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90460         </parameter>
90461         <parameter name="widget" transfer-ownership="none" allow-none="1">
90462           <doc xml:whitespace="preserve">the widget</doc>
90463           <type name="Widget" c:type="GtkWidget*"/>
90464         </parameter>
90465         <parameter name="detail" transfer-ownership="none" allow-none="1">
90466           <doc xml:whitespace="preserve">a style detail</doc>
90467           <type name="utf8" c:type="gchar*"/>
90468         </parameter>
90469         <parameter name="x" transfer-ownership="none">
90470           <doc xml:whitespace="preserve">x origin of the handle</doc>
90471           <type name="int" c:type="gint"/>
90472         </parameter>
90473         <parameter name="y" transfer-ownership="none">
90474           <doc xml:whitespace="preserve">y origin of the handle</doc>
90475           <type name="int" c:type="gint"/>
90476         </parameter>
90477         <parameter name="width" transfer-ownership="none">
90478           <doc xml:whitespace="preserve">with of the handle</doc>
90479           <type name="int" c:type="gint"/>
90480         </parameter>
90481         <parameter name="height" transfer-ownership="none">
90482           <doc xml:whitespace="preserve">height of the handle</doc>
90483           <type name="int" c:type="gint"/>
90484         </parameter>
90485         <parameter name="orientation" transfer-ownership="none">
90486           <doc xml:whitespace="preserve">the orientation of the handle</doc>
90487           <type name="Orientation" c:type="GtkOrientation"/>
90488         </parameter>
90489       </parameters>
90490     </function>
90491     <function name="paint_hline" c:identifier="gtk_paint_hline">
90492       <doc xml:whitespace="preserve">Draws a horizontal line from (@x1, @y) to (@x2, @y) in @window
90493 using the given style and state.</doc>
90494       <return-value transfer-ownership="none">
90495         <type name="none" c:type="void"/>
90496       </return-value>
90497       <parameters>
90498         <parameter name="style" transfer-ownership="none">
90499           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90500           <type name="Style" c:type="GtkStyle*"/>
90501         </parameter>
90502         <parameter name="window" transfer-ownership="none">
90503           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90504           <type name="Gdk.Window" c:type="GdkWindow*"/>
90505         </parameter>
90506         <parameter name="state_type" transfer-ownership="none">
90507           <doc xml:whitespace="preserve">a state</doc>
90508           <type name="StateType" c:type="GtkStateType"/>
90509         </parameter>
90510         <parameter name="area" transfer-ownership="none" allow-none="1">
90511           <doc xml:whitespace="preserve">rectangle to which the output is clipped, or %NULL if the output should not be clipped</doc>
90512           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90513         </parameter>
90514         <parameter name="widget" transfer-ownership="none" allow-none="1">
90515           <doc xml:whitespace="preserve">the widget</doc>
90516           <type name="Widget" c:type="GtkWidget*"/>
90517         </parameter>
90518         <parameter name="detail" transfer-ownership="none" allow-none="1">
90519           <doc xml:whitespace="preserve">a style detail</doc>
90520           <type name="utf8" c:type="gchar*"/>
90521         </parameter>
90522         <parameter name="x1" transfer-ownership="none">
90523           <doc xml:whitespace="preserve">the starting x coordinate</doc>
90524           <type name="int" c:type="gint"/>
90525         </parameter>
90526         <parameter name="x2" transfer-ownership="none">
90527           <doc xml:whitespace="preserve">the ending x coordinate</doc>
90528           <type name="int" c:type="gint"/>
90529         </parameter>
90530         <parameter name="y" transfer-ownership="none">
90531           <doc xml:whitespace="preserve">the y coordinate</doc>
90532           <type name="int" c:type="gint"/>
90533         </parameter>
90534       </parameters>
90535     </function>
90536     <function name="paint_layout" c:identifier="gtk_paint_layout">
90537       <doc xml:whitespace="preserve">Draws a layout on @window using the given parameters.</doc>
90538       <return-value transfer-ownership="none">
90539         <type name="none" c:type="void"/>
90540       </return-value>
90541       <parameters>
90542         <parameter name="style" transfer-ownership="none">
90543           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90544           <type name="Style" c:type="GtkStyle*"/>
90545         </parameter>
90546         <parameter name="window" transfer-ownership="none">
90547           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90548           <type name="Gdk.Window" c:type="GdkWindow*"/>
90549         </parameter>
90550         <parameter name="state_type" transfer-ownership="none">
90551           <doc xml:whitespace="preserve">a state</doc>
90552           <type name="StateType" c:type="GtkStateType"/>
90553         </parameter>
90554         <parameter name="use_text" transfer-ownership="none">
90555           <doc xml:whitespace="preserve">whether to use the text or foreground graphics context of @style</doc>
90556           <type name="boolean" c:type="gboolean"/>
90557         </parameter>
90558         <parameter name="area" transfer-ownership="none" allow-none="1">
90559           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90560           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90561         </parameter>
90562         <parameter name="widget" transfer-ownership="none" allow-none="1">
90563           <doc xml:whitespace="preserve">the widget</doc>
90564           <type name="Widget" c:type="GtkWidget*"/>
90565         </parameter>
90566         <parameter name="detail" transfer-ownership="none" allow-none="1">
90567           <doc xml:whitespace="preserve">a style detail</doc>
90568           <type name="utf8" c:type="gchar*"/>
90569         </parameter>
90570         <parameter name="x" transfer-ownership="none">
90571           <doc xml:whitespace="preserve">x origin</doc>
90572           <type name="int" c:type="gint"/>
90573         </parameter>
90574         <parameter name="y" transfer-ownership="none">
90575           <doc xml:whitespace="preserve">y origin</doc>
90576           <type name="int" c:type="gint"/>
90577         </parameter>
90578         <parameter name="layout" transfer-ownership="none">
90579           <doc xml:whitespace="preserve">the layout to draw</doc>
90580           <type name="Pango.Layout" c:type="PangoLayout*"/>
90581         </parameter>
90582       </parameters>
90583     </function>
90584     <function name="paint_option" c:identifier="gtk_paint_option">
90585       <doc xml:whitespace="preserve">Draws a radio button indicator in the given rectangle on @window with 
90586 the given parameters.</doc>
90587       <return-value transfer-ownership="none">
90588         <type name="none" c:type="void"/>
90589       </return-value>
90590       <parameters>
90591         <parameter name="style" transfer-ownership="none">
90592           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90593           <type name="Style" c:type="GtkStyle*"/>
90594         </parameter>
90595         <parameter name="window" transfer-ownership="none">
90596           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90597           <type name="Gdk.Window" c:type="GdkWindow*"/>
90598         </parameter>
90599         <parameter name="state_type" transfer-ownership="none">
90600           <doc xml:whitespace="preserve">a state</doc>
90601           <type name="StateType" c:type="GtkStateType"/>
90602         </parameter>
90603         <parameter name="shadow_type" transfer-ownership="none">
90604           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
90605           <type name="ShadowType" c:type="GtkShadowType"/>
90606         </parameter>
90607         <parameter name="area" transfer-ownership="none" allow-none="1">
90608           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90609           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90610         </parameter>
90611         <parameter name="widget" transfer-ownership="none" allow-none="1">
90612           <doc xml:whitespace="preserve">the widget</doc>
90613           <type name="Widget" c:type="GtkWidget*"/>
90614         </parameter>
90615         <parameter name="detail" transfer-ownership="none" allow-none="1">
90616           <doc xml:whitespace="preserve">a style detail</doc>
90617           <type name="utf8" c:type="gchar*"/>
90618         </parameter>
90619         <parameter name="x" transfer-ownership="none">
90620           <doc xml:whitespace="preserve">x origin of the rectangle to draw the option in</doc>
90621           <type name="int" c:type="gint"/>
90622         </parameter>
90623         <parameter name="y" transfer-ownership="none">
90624           <doc xml:whitespace="preserve">y origin of the rectangle to draw the option in</doc>
90625           <type name="int" c:type="gint"/>
90626         </parameter>
90627         <parameter name="width" transfer-ownership="none">
90628           <doc xml:whitespace="preserve">the width of the rectangle to draw the option in</doc>
90629           <type name="int" c:type="gint"/>
90630         </parameter>
90631         <parameter name="height" transfer-ownership="none">
90632           <doc xml:whitespace="preserve">the height of the rectangle to draw the option in</doc>
90633           <type name="int" c:type="gint"/>
90634         </parameter>
90635       </parameters>
90636     </function>
90637     <function name="paint_polygon" c:identifier="gtk_paint_polygon">
90638       <doc xml:whitespace="preserve">Draws a polygon on @window with the given parameters.</doc>
90639       <return-value transfer-ownership="none">
90640         <type name="none" c:type="void"/>
90641       </return-value>
90642       <parameters>
90643         <parameter name="style" transfer-ownership="none">
90644           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90645           <type name="Style" c:type="GtkStyle*"/>
90646         </parameter>
90647         <parameter name="window" transfer-ownership="none">
90648           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90649           <type name="Gdk.Window" c:type="GdkWindow*"/>
90650         </parameter>
90651         <parameter name="state_type" transfer-ownership="none">
90652           <doc xml:whitespace="preserve">a state</doc>
90653           <type name="StateType" c:type="GtkStateType"/>
90654         </parameter>
90655         <parameter name="shadow_type" transfer-ownership="none">
90656           <doc xml:whitespace="preserve">type of shadow to draw</doc>
90657           <type name="ShadowType" c:type="GtkShadowType"/>
90658         </parameter>
90659         <parameter name="area" transfer-ownership="none" allow-none="1">
90660           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90661           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90662         </parameter>
90663         <parameter name="widget" transfer-ownership="none" allow-none="1">
90664           <doc xml:whitespace="preserve">the widget</doc>
90665           <type name="Widget" c:type="GtkWidget*"/>
90666         </parameter>
90667         <parameter name="detail" transfer-ownership="none" allow-none="1">
90668           <doc xml:whitespace="preserve">a style detail</doc>
90669           <type name="utf8" c:type="gchar*"/>
90670         </parameter>
90671         <parameter name="points" transfer-ownership="none">
90672           <doc xml:whitespace="preserve">an array of #GdkPoint&lt;!-- --&gt;s</doc>
90673           <type name="Gdk.Point" c:type="GdkPoint*"/>
90674         </parameter>
90675         <parameter name="n_points" transfer-ownership="none">
90676           <doc xml:whitespace="preserve">length of @points</doc>
90677           <type name="int" c:type="gint"/>
90678         </parameter>
90679         <parameter name="fill" transfer-ownership="none">
90680           <doc xml:whitespace="preserve">%TRUE if the polygon should be filled</doc>
90681           <type name="boolean" c:type="gboolean"/>
90682         </parameter>
90683       </parameters>
90684     </function>
90685     <function name="paint_resize_grip" c:identifier="gtk_paint_resize_grip">
90686       <doc xml:whitespace="preserve">Draws a resize grip in the given rectangle on @window using the given
90687 parameters.</doc>
90688       <return-value transfer-ownership="none">
90689         <type name="none" c:type="void"/>
90690       </return-value>
90691       <parameters>
90692         <parameter name="style" transfer-ownership="none">
90693           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90694           <type name="Style" c:type="GtkStyle*"/>
90695         </parameter>
90696         <parameter name="window" transfer-ownership="none">
90697           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90698           <type name="Gdk.Window" c:type="GdkWindow*"/>
90699         </parameter>
90700         <parameter name="state_type" transfer-ownership="none">
90701           <doc xml:whitespace="preserve">a state</doc>
90702           <type name="StateType" c:type="GtkStateType"/>
90703         </parameter>
90704         <parameter name="area" transfer-ownership="none" allow-none="1">
90705           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90706           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90707         </parameter>
90708         <parameter name="widget" transfer-ownership="none" allow-none="1">
90709           <doc xml:whitespace="preserve">the widget</doc>
90710           <type name="Widget" c:type="GtkWidget*"/>
90711         </parameter>
90712         <parameter name="detail" transfer-ownership="none" allow-none="1">
90713           <doc xml:whitespace="preserve">a style detail</doc>
90714           <type name="utf8" c:type="gchar*"/>
90715         </parameter>
90716         <parameter name="edge" transfer-ownership="none">
90717           <doc xml:whitespace="preserve">the edge in which to draw the resize grip</doc>
90718           <type name="Gdk.WindowEdge" c:type="GdkWindowEdge"/>
90719         </parameter>
90720         <parameter name="x" transfer-ownership="none">
90721           <doc xml:whitespace="preserve">the x origin of the rectangle in which to draw the resize grip</doc>
90722           <type name="int" c:type="gint"/>
90723         </parameter>
90724         <parameter name="y" transfer-ownership="none">
90725           <doc xml:whitespace="preserve">the y origin of the rectangle in which to draw the resize grip</doc>
90726           <type name="int" c:type="gint"/>
90727         </parameter>
90728         <parameter name="width" transfer-ownership="none">
90729           <doc xml:whitespace="preserve">the width of the rectangle in which to draw the resize grip</doc>
90730           <type name="int" c:type="gint"/>
90731         </parameter>
90732         <parameter name="height" transfer-ownership="none">
90733           <doc xml:whitespace="preserve">the height of the rectangle in which to draw the resize grip</doc>
90734           <type name="int" c:type="gint"/>
90735         </parameter>
90736       </parameters>
90737     </function>
90738     <function name="paint_shadow" c:identifier="gtk_paint_shadow">
90739       <doc xml:whitespace="preserve">Draws a shadow around the given rectangle in @window 
90740 using the given style and state and shadow type.</doc>
90741       <return-value transfer-ownership="none">
90742         <type name="none" c:type="void"/>
90743       </return-value>
90744       <parameters>
90745         <parameter name="style" transfer-ownership="none">
90746           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90747           <type name="Style" c:type="GtkStyle*"/>
90748         </parameter>
90749         <parameter name="window" transfer-ownership="none">
90750           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90751           <type name="Gdk.Window" c:type="GdkWindow*"/>
90752         </parameter>
90753         <parameter name="state_type" transfer-ownership="none">
90754           <doc xml:whitespace="preserve">a state</doc>
90755           <type name="StateType" c:type="GtkStateType"/>
90756         </parameter>
90757         <parameter name="shadow_type" transfer-ownership="none">
90758           <doc xml:whitespace="preserve">type of shadow to draw</doc>
90759           <type name="ShadowType" c:type="GtkShadowType"/>
90760         </parameter>
90761         <parameter name="area" transfer-ownership="none" allow-none="1">
90762           <doc xml:whitespace="preserve">clip rectangle or %NULL if the output should not be clipped</doc>
90763           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90764         </parameter>
90765         <parameter name="widget" transfer-ownership="none" allow-none="1">
90766           <doc xml:whitespace="preserve">the widget</doc>
90767           <type name="Widget" c:type="GtkWidget*"/>
90768         </parameter>
90769         <parameter name="detail" transfer-ownership="none" allow-none="1">
90770           <doc xml:whitespace="preserve">a style detail</doc>
90771           <type name="utf8" c:type="gchar*"/>
90772         </parameter>
90773         <parameter name="x" transfer-ownership="none">
90774           <doc xml:whitespace="preserve">x origin of the rectangle</doc>
90775           <type name="int" c:type="gint"/>
90776         </parameter>
90777         <parameter name="y" transfer-ownership="none">
90778           <doc xml:whitespace="preserve">y origin of the rectangle</doc>
90779           <type name="int" c:type="gint"/>
90780         </parameter>
90781         <parameter name="width" transfer-ownership="none">
90782           <doc xml:whitespace="preserve">width of the rectangle</doc>
90783           <type name="int" c:type="gint"/>
90784         </parameter>
90785         <parameter name="height" transfer-ownership="none">
90786           <doc xml:whitespace="preserve">width of the rectangle</doc>
90787           <type name="int" c:type="gint"/>
90788         </parameter>
90789       </parameters>
90790     </function>
90791     <function name="paint_shadow_gap" c:identifier="gtk_paint_shadow_gap">
90792       <doc xml:whitespace="preserve">Draws a shadow around the given rectangle in @window 
90793 using the given style and state and shadow type, leaving a 
90794 gap in one side.</doc>
90795       <return-value transfer-ownership="none">
90796         <type name="none" c:type="void"/>
90797       </return-value>
90798       <parameters>
90799         <parameter name="style" transfer-ownership="none">
90800           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90801           <type name="Style" c:type="GtkStyle*"/>
90802         </parameter>
90803         <parameter name="window" transfer-ownership="none">
90804           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90805           <type name="Gdk.Window" c:type="GdkWindow*"/>
90806         </parameter>
90807         <parameter name="state_type" transfer-ownership="none">
90808           <doc xml:whitespace="preserve">a state</doc>
90809           <type name="StateType" c:type="GtkStateType"/>
90810         </parameter>
90811         <parameter name="shadow_type" transfer-ownership="none">
90812           <doc xml:whitespace="preserve">type of shadow to draw</doc>
90813           <type name="ShadowType" c:type="GtkShadowType"/>
90814         </parameter>
90815         <parameter name="area" transfer-ownership="none" allow-none="1">
90816           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90817           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90818         </parameter>
90819         <parameter name="widget" transfer-ownership="none" allow-none="1">
90820           <doc xml:whitespace="preserve">the widget</doc>
90821           <type name="Widget" c:type="GtkWidget*"/>
90822         </parameter>
90823         <parameter name="detail" transfer-ownership="none" allow-none="1">
90824           <doc xml:whitespace="preserve">a style detail</doc>
90825           <type name="utf8" c:type="gchar*"/>
90826         </parameter>
90827         <parameter name="x" transfer-ownership="none">
90828           <doc xml:whitespace="preserve">x origin of the rectangle</doc>
90829           <type name="int" c:type="gint"/>
90830         </parameter>
90831         <parameter name="y" transfer-ownership="none">
90832           <doc xml:whitespace="preserve">y origin of the rectangle</doc>
90833           <type name="int" c:type="gint"/>
90834         </parameter>
90835         <parameter name="width" transfer-ownership="none">
90836           <doc xml:whitespace="preserve">width of the rectangle</doc>
90837           <type name="int" c:type="gint"/>
90838         </parameter>
90839         <parameter name="height" transfer-ownership="none">
90840           <doc xml:whitespace="preserve">width of the rectangle</doc>
90841           <type name="int" c:type="gint"/>
90842         </parameter>
90843         <parameter name="gap_side" transfer-ownership="none">
90844           <doc xml:whitespace="preserve">side in which to leave the gap</doc>
90845           <type name="PositionType" c:type="GtkPositionType"/>
90846         </parameter>
90847         <parameter name="gap_x" transfer-ownership="none">
90848           <doc xml:whitespace="preserve">starting position of the gap</doc>
90849           <type name="int" c:type="gint"/>
90850         </parameter>
90851         <parameter name="gap_width" transfer-ownership="none">
90852           <doc xml:whitespace="preserve">width of the gap</doc>
90853           <type name="int" c:type="gint"/>
90854         </parameter>
90855       </parameters>
90856     </function>
90857     <function name="paint_slider" c:identifier="gtk_paint_slider">
90858       <doc xml:whitespace="preserve">Draws a slider in the given rectangle on @window using the
90859 given style and orientation.</doc>
90860       <return-value transfer-ownership="none">
90861         <type name="none" c:type="void"/>
90862       </return-value>
90863       <parameters>
90864         <parameter name="style" transfer-ownership="none">
90865           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90866           <type name="Style" c:type="GtkStyle*"/>
90867         </parameter>
90868         <parameter name="window" transfer-ownership="none">
90869           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90870           <type name="Gdk.Window" c:type="GdkWindow*"/>
90871         </parameter>
90872         <parameter name="state_type" transfer-ownership="none">
90873           <doc xml:whitespace="preserve">a state</doc>
90874           <type name="StateType" c:type="GtkStateType"/>
90875         </parameter>
90876         <parameter name="shadow_type" transfer-ownership="none">
90877           <doc xml:whitespace="preserve">a shadow</doc>
90878           <type name="ShadowType" c:type="GtkShadowType"/>
90879         </parameter>
90880         <parameter name="area" transfer-ownership="none" allow-none="1">
90881           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90882           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90883         </parameter>
90884         <parameter name="widget" transfer-ownership="none" allow-none="1">
90885           <doc xml:whitespace="preserve">the widget</doc>
90886           <type name="Widget" c:type="GtkWidget*"/>
90887         </parameter>
90888         <parameter name="detail" transfer-ownership="none" allow-none="1">
90889           <doc xml:whitespace="preserve">a style detail</doc>
90890           <type name="utf8" c:type="gchar*"/>
90891         </parameter>
90892         <parameter name="x" transfer-ownership="none">
90893           <doc xml:whitespace="preserve">the x origin of the rectangle in which to draw a slider</doc>
90894           <type name="int" c:type="gint"/>
90895         </parameter>
90896         <parameter name="y" transfer-ownership="none">
90897           <doc xml:whitespace="preserve">the y origin of the rectangle in which to draw a slider</doc>
90898           <type name="int" c:type="gint"/>
90899         </parameter>
90900         <parameter name="width" transfer-ownership="none">
90901           <doc xml:whitespace="preserve">the width of the rectangle in which to draw a slider</doc>
90902           <type name="int" c:type="gint"/>
90903         </parameter>
90904         <parameter name="height" transfer-ownership="none">
90905           <doc xml:whitespace="preserve">the height of the rectangle in which to draw a slider</doc>
90906           <type name="int" c:type="gint"/>
90907         </parameter>
90908         <parameter name="orientation" transfer-ownership="none">
90909           <doc xml:whitespace="preserve">the orientation to be used</doc>
90910           <type name="Orientation" c:type="GtkOrientation"/>
90911         </parameter>
90912       </parameters>
90913     </function>
90914     <function name="paint_spinner"
90915               c:identifier="gtk_paint_spinner"
90916               version="2.20">
90917       <doc xml:whitespace="preserve">Draws a spinner on @window using the given parameters.</doc>
90918       <return-value transfer-ownership="none">
90919         <type name="none" c:type="void"/>
90920       </return-value>
90921       <parameters>
90922         <parameter name="style" transfer-ownership="none">
90923           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90924           <type name="Style" c:type="GtkStyle*"/>
90925         </parameter>
90926         <parameter name="window" transfer-ownership="none">
90927           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90928           <type name="Gdk.Window" c:type="GdkWindow*"/>
90929         </parameter>
90930         <parameter name="state_type" transfer-ownership="none">
90931           <doc xml:whitespace="preserve">a state</doc>
90932           <type name="StateType" c:type="GtkStateType"/>
90933         </parameter>
90934         <parameter name="area" transfer-ownership="none" allow-none="1">
90935           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90936           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90937         </parameter>
90938         <parameter name="widget" transfer-ownership="none" allow-none="1">
90939           <doc xml:whitespace="preserve">the widget (may be %NULL)</doc>
90940           <type name="Widget" c:type="GtkWidget*"/>
90941         </parameter>
90942         <parameter name="detail" transfer-ownership="none" allow-none="1">
90943           <doc xml:whitespace="preserve">a style detail (may be %NULL)</doc>
90944           <type name="utf8" c:type="gchar*"/>
90945         </parameter>
90946         <parameter name="step" transfer-ownership="none">
90947           <doc xml:whitespace="preserve">the nth step, a value between 0 and #GtkSpinner:num-steps</doc>
90948           <type name="uint" c:type="guint"/>
90949         </parameter>
90950         <parameter name="x" transfer-ownership="none">
90951           <doc xml:whitespace="preserve">the x origin of the rectangle in which to draw the spinner</doc>
90952           <type name="int" c:type="gint"/>
90953         </parameter>
90954         <parameter name="y" transfer-ownership="none">
90955           <doc xml:whitespace="preserve">the y origin of the rectangle in which to draw the spinner</doc>
90956           <type name="int" c:type="gint"/>
90957         </parameter>
90958         <parameter name="width" transfer-ownership="none">
90959           <doc xml:whitespace="preserve">the width of the rectangle in which to draw the spinner</doc>
90960           <type name="int" c:type="gint"/>
90961         </parameter>
90962         <parameter name="height" transfer-ownership="none">
90963           <doc xml:whitespace="preserve">the height of the rectangle in which to draw the spinner</doc>
90964           <type name="int" c:type="gint"/>
90965         </parameter>
90966       </parameters>
90967     </function>
90968     <function name="paint_string"
90969               c:identifier="gtk_paint_string"
90970               deprecated="Use gtk_paint_layout() instead."
90971               deprecated-version="2.0">
90972       <doc xml:whitespace="preserve">Draws a text string on @window with the given parameters.</doc>
90973       <return-value transfer-ownership="none">
90974         <type name="none" c:type="void"/>
90975       </return-value>
90976       <parameters>
90977         <parameter name="style" transfer-ownership="none">
90978           <doc xml:whitespace="preserve">a #GtkStyle</doc>
90979           <type name="Style" c:type="GtkStyle*"/>
90980         </parameter>
90981         <parameter name="window" transfer-ownership="none">
90982           <doc xml:whitespace="preserve">a #GdkWindow</doc>
90983           <type name="Gdk.Window" c:type="GdkWindow*"/>
90984         </parameter>
90985         <parameter name="state_type" transfer-ownership="none">
90986           <doc xml:whitespace="preserve">a state</doc>
90987           <type name="StateType" c:type="GtkStateType"/>
90988         </parameter>
90989         <parameter name="area" transfer-ownership="none" allow-none="1">
90990           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
90991           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
90992         </parameter>
90993         <parameter name="widget" transfer-ownership="none" allow-none="1">
90994           <doc xml:whitespace="preserve">the widget</doc>
90995           <type name="Widget" c:type="GtkWidget*"/>
90996         </parameter>
90997         <parameter name="detail" transfer-ownership="none" allow-none="1">
90998           <doc xml:whitespace="preserve">a style detail</doc>
90999           <type name="utf8" c:type="gchar*"/>
91000         </parameter>
91001         <parameter name="x" transfer-ownership="none">
91002           <doc xml:whitespace="preserve">x origin</doc>
91003           <type name="int" c:type="gint"/>
91004         </parameter>
91005         <parameter name="y" transfer-ownership="none">
91006           <doc xml:whitespace="preserve">y origin</doc>
91007           <type name="int" c:type="gint"/>
91008         </parameter>
91009         <parameter name="string" transfer-ownership="none">
91010           <doc xml:whitespace="preserve">the string to draw</doc>
91011           <type name="utf8" c:type="gchar*"/>
91012         </parameter>
91013       </parameters>
91014     </function>
91015     <function name="paint_tab" c:identifier="gtk_paint_tab">
91016       <doc xml:whitespace="preserve">Draws an option menu tab (i.e. the up and down pointing arrows)
91017 in the given rectangle on @window using the given parameters.</doc>
91018       <return-value transfer-ownership="none">
91019         <type name="none" c:type="void"/>
91020       </return-value>
91021       <parameters>
91022         <parameter name="style" transfer-ownership="none">
91023           <doc xml:whitespace="preserve">a #GtkStyle</doc>
91024           <type name="Style" c:type="GtkStyle*"/>
91025         </parameter>
91026         <parameter name="window" transfer-ownership="none">
91027           <doc xml:whitespace="preserve">a #GdkWindow</doc>
91028           <type name="Gdk.Window" c:type="GdkWindow*"/>
91029         </parameter>
91030         <parameter name="state_type" transfer-ownership="none">
91031           <doc xml:whitespace="preserve">a state</doc>
91032           <type name="StateType" c:type="GtkStateType"/>
91033         </parameter>
91034         <parameter name="shadow_type" transfer-ownership="none">
91035           <doc xml:whitespace="preserve">the type of shadow to draw</doc>
91036           <type name="ShadowType" c:type="GtkShadowType"/>
91037         </parameter>
91038         <parameter name="area" transfer-ownership="none" allow-none="1">
91039           <doc xml:whitespace="preserve">clip rectangle, or %NULL if the output should not be clipped</doc>
91040           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
91041         </parameter>
91042         <parameter name="widget" transfer-ownership="none" allow-none="1">
91043           <doc xml:whitespace="preserve">the widget</doc>
91044           <type name="Widget" c:type="GtkWidget*"/>
91045         </parameter>
91046         <parameter name="detail" transfer-ownership="none" allow-none="1">
91047           <doc xml:whitespace="preserve">a style detail</doc>
91048           <type name="utf8" c:type="gchar*"/>
91049         </parameter>
91050         <parameter name="x" transfer-ownership="none">
91051           <doc xml:whitespace="preserve">x origin of the rectangle to draw the tab in</doc>
91052           <type name="int" c:type="gint"/>
91053         </parameter>
91054         <parameter name="y" transfer-ownership="none">
91055           <doc xml:whitespace="preserve">y origin of the rectangle to draw the tab in</doc>
91056           <type name="int" c:type="gint"/>
91057         </parameter>
91058         <parameter name="width" transfer-ownership="none">
91059           <doc xml:whitespace="preserve">the width of the rectangle to draw the tab in</doc>
91060           <type name="int" c:type="gint"/>
91061         </parameter>
91062         <parameter name="height" transfer-ownership="none">
91063           <doc xml:whitespace="preserve">the height of the rectangle to draw the tab in</doc>
91064           <type name="int" c:type="gint"/>
91065         </parameter>
91066       </parameters>
91067     </function>
91068     <function name="paint_vline" c:identifier="gtk_paint_vline">
91069       <doc xml:whitespace="preserve">Draws a vertical line from (@x, @y1_) to (@x, @y2_) in @window
91070 using the given style and state.</doc>
91071       <return-value transfer-ownership="none">
91072         <type name="none" c:type="void"/>
91073       </return-value>
91074       <parameters>
91075         <parameter name="style" transfer-ownership="none">
91076           <doc xml:whitespace="preserve">a #GtkStyle</doc>
91077           <type name="Style" c:type="GtkStyle*"/>
91078         </parameter>
91079         <parameter name="window" transfer-ownership="none">
91080           <doc xml:whitespace="preserve">a #GdkWindow</doc>
91081           <type name="Gdk.Window" c:type="GdkWindow*"/>
91082         </parameter>
91083         <parameter name="state_type" transfer-ownership="none">
91084           <doc xml:whitespace="preserve">a state</doc>
91085           <type name="StateType" c:type="GtkStateType"/>
91086         </parameter>
91087         <parameter name="area" transfer-ownership="none" allow-none="1">
91088           <doc xml:whitespace="preserve">rectangle to which the output is clipped, or %NULL if the output should not be clipped</doc>
91089           <type name="Gdk.Rectangle" c:type="GdkRectangle*"/>
91090         </parameter>
91091         <parameter name="widget" transfer-ownership="none" allow-none="1">
91092           <doc xml:whitespace="preserve">the widget</doc>
91093           <type name="Widget" c:type="GtkWidget*"/>
91094         </parameter>
91095         <parameter name="detail" transfer-ownership="none" allow-none="1">
91096           <doc xml:whitespace="preserve">a style detail</doc>
91097           <type name="utf8" c:type="gchar*"/>
91098         </parameter>
91099         <parameter name="y1_" transfer-ownership="none">
91100           <doc xml:whitespace="preserve">the starting y coordinate</doc>
91101           <type name="int" c:type="gint"/>
91102         </parameter>
91103         <parameter name="y2_" transfer-ownership="none">
91104           <doc xml:whitespace="preserve">the ending y coordinate</doc>
91105           <type name="int" c:type="gint"/>
91106         </parameter>
91107         <parameter name="x" transfer-ownership="none">
91108           <doc xml:whitespace="preserve">the x coordinate</doc>
91109           <type name="int" c:type="gint"/>
91110         </parameter>
91111       </parameters>
91112     </function>
91113     <function name="paper_size_get_default"
91114               c:identifier="gtk_paper_size_get_default"
91115               version="2.10">
91116       <doc xml:whitespace="preserve">Returns the name of the default paper size, which 
91117 depends on the current locale.  
91118 is owned by GTK+ and should not be modified.</doc>
91119       <return-value transfer-ownership="none">
91120         <doc xml:whitespace="preserve">the name of the default paper size. The string</doc>
91121         <type name="utf8" c:type="gchar*"/>
91122       </return-value>
91123     </function>
91124     <function name="paper_size_get_paper_sizes"
91125               c:identifier="gtk_paper_size_get_paper_sizes"
91126               version="2.12">
91127       <doc xml:whitespace="preserve">Creates a list of known paper sizes.
91128 allocated #GtkPaperSize objects</doc>
91129       <return-value transfer-ownership="full">
91130         <doc xml:whitespace="preserve">a newly allocated list of newly</doc>
91131         <type name="GLib.List" c:type="GList*">
91132           <type name="PaperSize"/>
91133         </type>
91134       </return-value>
91135       <parameters>
91136         <parameter name="include_custom" transfer-ownership="none">
91137           <doc xml:whitespace="preserve">whether to include custom paper sizes as defined in the page setup dialog</doc>
91138           <type name="boolean" c:type="gboolean"/>
91139         </parameter>
91140       </parameters>
91141     </function>
91142     <function name="parse_args" c:identifier="gtk_parse_args">
91143       <doc xml:whitespace="preserve">Parses command line arguments, and initializes global
91144 attributes of GTK+, but does not actually open a connection
91145 to a display. (See gdk_display_open(), gdk_get_display_arg_name())
91146 Any arguments used by GTK+ or GDK are removed from the array and
91147 You shouldn't call this function explicitely if you are using
91148 gtk_init(), or gtk_init_check().</doc>
91149       <return-value transfer-ownership="none">
91150         <doc xml:whitespace="preserve">%TRUE if initialization succeeded, otherwise %FALSE.</doc>
91151         <type name="boolean" c:type="gboolean"/>
91152       </return-value>
91153       <parameters>
91154         <parameter name="argc"
91155                    direction="inout"
91156                    caller-allocates="0"
91157                    transfer-ownership="full">
91158           <doc xml:whitespace="preserve">a pointer to the number of command line arguments.</doc>
91159           <type name="int" c:type="int*"/>
91160         </parameter>
91161         <parameter name="argv"
91162                    direction="inout"
91163                    caller-allocates="0"
91164                    transfer-ownership="full">
91165           <doc xml:whitespace="preserve">a pointer to the array of command line arguments.</doc>
91166           <array c:type="char***">
91167             <type name="utf8"/>
91168           </array>
91169         </parameter>
91170       </parameters>
91171     </function>
91172     <function name="print_run_page_setup_dialog"
91173               c:identifier="gtk_print_run_page_setup_dialog"
91174               version="2.10">
91175       <doc xml:whitespace="preserve">Runs a page setup dialog, letting the user modify the values from
91176 is identical to the passed in @page_setup, otherwise it contains the 
91177 modifications done in the dialog.
91178 Note that this function may use a recursive mainloop to show the page
91179 setup dialog. See gtk_print_run_page_setup_dialog_async() if this is 
91180 a problem.</doc>
91181       <return-value transfer-ownership="full">
91182         <doc xml:whitespace="preserve">a new #GtkPageSetup</doc>
91183         <type name="PageSetup" c:type="GtkPageSetup*"/>
91184       </return-value>
91185       <parameters>
91186         <parameter name="parent" transfer-ownership="none" allow-none="1">
91187           <doc xml:whitespace="preserve">transient parent</doc>
91188           <type name="Window" c:type="GtkWindow*"/>
91189         </parameter>
91190         <parameter name="page_setup" transfer-ownership="none" allow-none="1">
91191           <doc xml:whitespace="preserve">an existing #GtkPageSetup</doc>
91192           <type name="PageSetup" c:type="GtkPageSetup*"/>
91193         </parameter>
91194         <parameter name="settings" transfer-ownership="none">
91195           <doc xml:whitespace="preserve">a #GtkPrintSettings</doc>
91196           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
91197         </parameter>
91198       </parameters>
91199     </function>
91200     <function name="print_run_page_setup_dialog_async"
91201               c:identifier="gtk_print_run_page_setup_dialog_async"
91202               version="2.10">
91203       <doc xml:whitespace="preserve">Runs a page setup dialog, letting the user modify the values from @page_setup. 
91204 In contrast to gtk_print_run_page_setup_dialog(), this function  returns after 
91205 showing the page setup dialog on platforms that support this, and calls @done_cb 
91206 from a signal handler for the ::response signal of the dialog.</doc>
91207       <return-value transfer-ownership="none">
91208         <type name="none" c:type="void"/>
91209       </return-value>
91210       <parameters>
91211         <parameter name="parent" transfer-ownership="none" allow-none="1">
91212           <doc xml:whitespace="preserve">transient parent, or %NULL</doc>
91213           <type name="Window" c:type="GtkWindow*"/>
91214         </parameter>
91215         <parameter name="page_setup" transfer-ownership="none" allow-none="1">
91216           <doc xml:whitespace="preserve">an existing #GtkPageSetup, or %NULL</doc>
91217           <type name="PageSetup" c:type="GtkPageSetup*"/>
91218         </parameter>
91219         <parameter name="settings" transfer-ownership="none">
91220           <doc xml:whitespace="preserve">a #GtkPrintSettings</doc>
91221           <type name="PrintSettings" c:type="GtkPrintSettings*"/>
91222         </parameter>
91223         <parameter name="done_cb"
91224                    transfer-ownership="none"
91225                    scope="call"
91226                    closure="4">
91227           <doc xml:whitespace="preserve">a function to call when the user saves the modified page setup</doc>
91228           <type name="PageSetupDoneFunc" c:type="GtkPageSetupDoneFunc"/>
91229         </parameter>
91230         <parameter name="data" transfer-ownership="none">
91231           <doc xml:whitespace="preserve">user data to pass to @done_cb</doc>
91232           <type name="any" c:type="gpointer"/>
91233         </parameter>
91234       </parameters>
91235     </function>
91236     <function name="propagate_event" c:identifier="gtk_propagate_event">
91237       <doc xml:whitespace="preserve">Sends an event to a widget, propagating the event to parent widgets
91238 if the event remains unhandled. Events received by GTK+ from GDK
91239 normally begin in gtk_main_do_event(). Depending on the type of
91240 event, existence of modal dialogs, grabs, etc., the event may be
91241 propagated; if so, this function is used. gtk_propagate_event()
91242 calls gtk_widget_event() on each widget it decides to send the
91243 event to.  So gtk_widget_event() is the lowest-level function; it
91244 simply emits the "event" and possibly an event-specific signal on a
91245 widget.  gtk_propagate_event() is a bit higher-level, and
91246 gtk_main_do_event() is the highest level.
91247 All that said, you most likely don't want to use any of these
91248 functions; synthesizing events is rarely needed. Consider asking on
91249 the mailing list for better ways to achieve your goals. For
91250 example, use gdk_window_invalidate_rect() or
91251 gtk_widget_queue_draw() instead of making up expose events.</doc>
91252       <return-value transfer-ownership="none">
91253         <type name="none" c:type="void"/>
91254       </return-value>
91255       <parameters>
91256         <parameter name="widget" transfer-ownership="none">
91257           <doc xml:whitespace="preserve">a #GtkWidget</doc>
91258           <type name="Widget" c:type="GtkWidget*"/>
91259         </parameter>
91260         <parameter name="event" transfer-ownership="none">
91261           <doc xml:whitespace="preserve">an event</doc>
91262           <type name="Gdk.Event" c:type="GdkEvent*"/>
91263         </parameter>
91264       </parameters>
91265     </function>
91266     <function name="quit_add" c:identifier="gtk_quit_add">
91267       <return-value transfer-ownership="none">
91268         <type name="uint" c:type="guint"/>
91269       </return-value>
91270       <parameters>
91271         <parameter name="main_level" transfer-ownership="none">
91272           <type name="uint" c:type="guint"/>
91273         </parameter>
91274         <parameter name="function"
91275                    transfer-ownership="none"
91276                    scope="call"
91277                    closure="2">
91278           <type name="Function" c:type="GtkFunction"/>
91279         </parameter>
91280         <parameter name="data" transfer-ownership="none">
91281           <type name="any" c:type="gpointer"/>
91282         </parameter>
91283       </parameters>
91284     </function>
91285     <function name="quit_add_destroy" c:identifier="gtk_quit_add_destroy">
91286       <return-value transfer-ownership="none">
91287         <type name="none" c:type="void"/>
91288       </return-value>
91289       <parameters>
91290         <parameter name="main_level" transfer-ownership="none">
91291           <type name="uint" c:type="guint"/>
91292         </parameter>
91293         <parameter name="object" transfer-ownership="none">
91294           <type name="Object" c:type="GtkObject*"/>
91295         </parameter>
91296       </parameters>
91297     </function>
91298     <function name="quit_add_full" c:identifier="gtk_quit_add_full">
91299       <return-value transfer-ownership="none">
91300         <type name="uint" c:type="guint"/>
91301       </return-value>
91302       <parameters>
91303         <parameter name="main_level" transfer-ownership="none">
91304           <type name="uint" c:type="guint"/>
91305         </parameter>
91306         <parameter name="function" transfer-ownership="none" scope="call">
91307           <type name="Function" c:type="GtkFunction"/>
91308         </parameter>
91309         <parameter name="marshal"
91310                    transfer-ownership="none"
91311                    scope="notified"
91312                    closure="3"
91313                    destroy="4">
91314           <type name="CallbackMarshal" c:type="GtkCallbackMarshal"/>
91315         </parameter>
91316         <parameter name="data" transfer-ownership="none">
91317           <type name="any" c:type="gpointer"/>
91318         </parameter>
91319         <parameter name="destroy" transfer-ownership="none" scope="call">
91320           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
91321         </parameter>
91322       </parameters>
91323     </function>
91324     <function name="quit_remove" c:identifier="gtk_quit_remove">
91325       <return-value transfer-ownership="none">
91326         <type name="none" c:type="void"/>
91327       </return-value>
91328       <parameters>
91329         <parameter name="quit_handler_id" transfer-ownership="none">
91330           <type name="uint" c:type="guint"/>
91331         </parameter>
91332       </parameters>
91333     </function>
91334     <function name="quit_remove_by_data"
91335               c:identifier="gtk_quit_remove_by_data">
91336       <return-value transfer-ownership="none">
91337         <type name="none" c:type="void"/>
91338       </return-value>
91339       <parameters>
91340         <parameter name="data" transfer-ownership="none">
91341           <type name="any" c:type="gpointer"/>
91342         </parameter>
91343       </parameters>
91344     </function>
91345     <function name="rc_add_class_style" c:identifier="gtk_rc_add_class_style">
91346       <return-value transfer-ownership="none">
91347         <type name="none" c:type="void"/>
91348       </return-value>
91349       <parameters>
91350         <parameter name="rc_style" transfer-ownership="none">
91351           <type name="RcStyle" c:type="GtkRcStyle*"/>
91352         </parameter>
91353         <parameter name="pattern" transfer-ownership="none">
91354           <type name="utf8" c:type="gchar*"/>
91355         </parameter>
91356       </parameters>
91357     </function>
91358     <function name="rc_add_default_file"
91359               c:identifier="gtk_rc_add_default_file">
91360       <doc xml:whitespace="preserve">Adds a file to the list of files to be parsed at the
91361 end of gtk_init().</doc>
91362       <return-value transfer-ownership="none">
91363         <type name="none" c:type="void"/>
91364       </return-value>
91365       <parameters>
91366         <parameter name="filename" transfer-ownership="none">
91367           <doc xml:whitespace="preserve">the pathname to the file. If @filename is not absolute, it is searched in the current directory.</doc>
91368           <type name="utf8" c:type="gchar*"/>
91369         </parameter>
91370       </parameters>
91371     </function>
91372     <function name="rc_add_widget_class_style"
91373               c:identifier="gtk_rc_add_widget_class_style">
91374       <return-value transfer-ownership="none">
91375         <type name="none" c:type="void"/>
91376       </return-value>
91377       <parameters>
91378         <parameter name="rc_style" transfer-ownership="none">
91379           <type name="RcStyle" c:type="GtkRcStyle*"/>
91380         </parameter>
91381         <parameter name="pattern" transfer-ownership="none">
91382           <type name="utf8" c:type="gchar*"/>
91383         </parameter>
91384       </parameters>
91385     </function>
91386     <function name="rc_add_widget_name_style"
91387               c:identifier="gtk_rc_add_widget_name_style">
91388       <return-value transfer-ownership="none">
91389         <type name="none" c:type="void"/>
91390       </return-value>
91391       <parameters>
91392         <parameter name="rc_style" transfer-ownership="none">
91393           <type name="RcStyle" c:type="GtkRcStyle*"/>
91394         </parameter>
91395         <parameter name="pattern" transfer-ownership="none">
91396           <type name="utf8" c:type="gchar*"/>
91397         </parameter>
91398       </parameters>
91399     </function>
91400     <function name="rc_find_module_in_path"
91401               c:identifier="gtk_rc_find_module_in_path">
91402       <doc xml:whitespace="preserve">Searches for a theme engine in the GTK+ search path. This function
91403 is not useful for applications and should not be used.
91404 otherwise %NULL.</doc>
91405       <return-value transfer-ownership="full">
91406         <doc xml:whitespace="preserve">The filename, if found (must be freed with g_free()),</doc>
91407         <type name="utf8" c:type="gchar*"/>
91408       </return-value>
91409       <parameters>
91410         <parameter name="module_file" transfer-ownership="none">
91411           <doc xml:whitespace="preserve">name of a theme engine</doc>
91412           <type name="utf8" c:type="gchar*"/>
91413         </parameter>
91414       </parameters>
91415     </function>
91416     <function name="rc_find_pixmap_in_path"
91417               c:identifier="gtk_rc_find_pixmap_in_path">
91418       <doc xml:whitespace="preserve">Looks up a file in pixmap path for the specified #GtkSettings.
91419 If the file is not found, it outputs a warning message using
91420 g_warning() and returns %NULL.</doc>
91421       <return-value transfer-ownership="full">
91422         <doc xml:whitespace="preserve">the filename.</doc>
91423         <type name="utf8" c:type="gchar*"/>
91424       </return-value>
91425       <parameters>
91426         <parameter name="settings" transfer-ownership="none">
91427           <doc xml:whitespace="preserve">a #GtkSettings</doc>
91428           <type name="Settings" c:type="GtkSettings*"/>
91429         </parameter>
91430         <parameter name="scanner" transfer-ownership="none">
91431           <doc xml:whitespace="preserve">Scanner used to get line number information for the warning message, or %NULL</doc>
91432           <type name="GLib.Scanner" c:type="GScanner*"/>
91433         </parameter>
91434         <parameter name="pixmap_file" transfer-ownership="none">
91435           <doc xml:whitespace="preserve">name of the pixmap file to locate.</doc>
91436           <type name="utf8" c:type="gchar*"/>
91437         </parameter>
91438       </parameters>
91439     </function>
91440     <function name="rc_get_default_files"
91441               c:identifier="gtk_rc_get_default_files">
91442       <doc xml:whitespace="preserve">Retrieves the current list of RC files that will be parsed
91443 at the end of gtk_init().
91444 is owned by GTK+ and must not be freed by the application.
91445 If you want to store this information, you should make a copy.</doc>
91446       <return-value transfer-ownership="full">
91447         <doc xml:whitespace="preserve">A %NULL-terminated array of filenames. This memory</doc>
91448         <array c:type="gchar**">
91449           <type name="utf8"/>
91450         </array>
91451       </return-value>
91452     </function>
91453     <function name="rc_get_im_module_file"
91454               c:identifier="gtk_rc_get_im_module_file">
91455       <doc xml:whitespace="preserve">Obtains the path to the IM modules file. See the documentation
91456 of the &lt;link linkend="im-module-file"&gt;&lt;envar&gt;GTK_IM_MODULE_FILE&lt;/envar&gt;&lt;/link&gt;
91457 environment variable for more details.</doc>
91458       <return-value transfer-ownership="full">
91459         <doc xml:whitespace="preserve">a newly-allocated string containing the name of the file listing the IM modules available for loading</doc>
91460         <type name="utf8" c:type="gchar*"/>
91461       </return-value>
91462     </function>
91463     <function name="rc_get_im_module_path"
91464               c:identifier="gtk_rc_get_im_module_path">
91465       <doc xml:whitespace="preserve">Obtains the path in which to look for IM modules. See the documentation
91466 of the &lt;link linkend="im-module-path"&gt;&lt;envar&gt;GTK_PATH&lt;/envar&gt;&lt;/link&gt;
91467 environment variable for more details about looking up modules. This
91468 function is useful solely for utilities supplied with GTK+ and should
91469 not be used by applications under normal circumstances.</doc>
91470       <return-value transfer-ownership="full">
91471         <doc xml:whitespace="preserve">a newly-allocated string containing the path in which to look for IM modules.</doc>
91472         <type name="utf8" c:type="gchar*"/>
91473       </return-value>
91474     </function>
91475     <function name="rc_get_module_dir" c:identifier="gtk_rc_get_module_dir">
91476       <doc xml:whitespace="preserve">Returns a directory in which GTK+ looks for theme engines.
91477 For full information about the search for theme engines,
91478 see the docs for &lt;envar&gt;GTK_PATH&lt;/envar&gt; in
91479 &lt;xref linkend="gtk-running"/&gt;.</doc>
91480       <return-value transfer-ownership="full">
91481         <doc xml:whitespace="preserve">the directory. (Must be freed with g_free())</doc>
91482         <type name="utf8" c:type="gchar*"/>
91483       </return-value>
91484     </function>
91485     <function name="rc_get_style" c:identifier="gtk_rc_get_style">
91486       <doc xml:whitespace="preserve">Finds all matching RC styles for a given widget,
91487 composites them together, and then creates a 
91488 #GtkStyle representing the composite appearance.
91489 (GTK+ actually keeps a cache of previously 
91490 created styles, so a new style may not be
91491 created.)
91492 to the returned style, so if you want to save this
91493 style around, you should add a reference yourself.</doc>
91494       <return-value transfer-ownership="full">
91495         <doc xml:whitespace="preserve">the resulting style. No refcount is added</doc>
91496         <type name="Style" c:type="GtkStyle*"/>
91497       </return-value>
91498       <parameters>
91499         <parameter name="widget" transfer-ownership="none">
91500           <doc xml:whitespace="preserve">a #GtkWidget</doc>
91501           <type name="Widget" c:type="GtkWidget*"/>
91502         </parameter>
91503       </parameters>
91504     </function>
91505     <function name="rc_get_style_by_paths"
91506               c:identifier="gtk_rc_get_style_by_paths">
91507       <doc xml:whitespace="preserve">Creates up a #GtkStyle from styles defined in a RC file by providing
91508 the raw components used in matching. This function may be useful
91509 when creating pseudo-widgets that should be themed like widgets but
91510 don't actually have corresponding GTK+ widgets. An example of this
91511 would be items inside a GNOME canvas widget.
91512 The action of gtk_rc_get_style() is similar to:
91513 |[
91514 gtk_widget_path (widget, NULL, &amp;path, NULL);
91515 gtk_widget_class_path (widget, NULL, &amp;class_path, NULL);
91516 gtk_rc_get_style_by_paths (gtk_widget_get_settings (widget), 
91517 path, class_path,
91518 G_OBJECT_TYPE (widget));
91519 ]|
91520 or %NULL if nothing matching was specified and the default style should
91521 be used. The returned value is owned by GTK+ as part of an internal cache,
91522 so you must call g_object_ref() on the returned value if you want to
91523 keep a reference to it.</doc>
91524       <return-value transfer-ownership="full">
91525         <doc xml:whitespace="preserve">A style created by matching with the supplied paths,</doc>
91526         <type name="Style" c:type="GtkStyle*"/>
91527       </return-value>
91528       <parameters>
91529         <parameter name="settings" transfer-ownership="none">
91530           <doc xml:whitespace="preserve">a #GtkSettings object</doc>
91531           <type name="Settings" c:type="GtkSettings*"/>
91532         </parameter>
91533         <parameter name="widget_path" transfer-ownership="none" allow-none="1">
91534           <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>
91535           <type name="utf8" c:type="char*"/>
91536         </parameter>
91537         <parameter name="class_path" transfer-ownership="none" allow-none="1">
91538           <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>
91539           <type name="utf8" c:type="char*"/>
91540         </parameter>
91541         <parameter name="type" transfer-ownership="none">
91542           <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>
91543           <type name="GType" c:type="GType"/>
91544         </parameter>
91545       </parameters>
91546     </function>
91547     <function name="rc_get_theme_dir" c:identifier="gtk_rc_get_theme_dir">
91548       <return-value transfer-ownership="full">
91549         <type name="utf8" c:type="gchar*"/>
91550       </return-value>
91551     </function>
91552     <function name="rc_parse" c:identifier="gtk_rc_parse">
91553       <return-value transfer-ownership="none">
91554         <type name="none" c:type="void"/>
91555       </return-value>
91556       <parameters>
91557         <parameter name="filename" transfer-ownership="none">
91558           <type name="utf8" c:type="gchar*"/>
91559         </parameter>
91560       </parameters>
91561     </function>
91562     <function name="rc_parse_color" c:identifier="gtk_rc_parse_color">
91563       <doc xml:whitespace="preserve">Parses a color in the &lt;link linkend="color=format"&gt;format&lt;/link&gt; expected
91564 in a RC file. 
91565 Note that theme engines should use gtk_rc_parse_color_full() in 
91566 order to support symbolic colors.
91567 that was expected but not found</doc>
91568       <return-value transfer-ownership="none">
91569         <doc xml:whitespace="preserve">%G_TOKEN_NONE if parsing succeeded, otherwise the token</doc>
91570         <type name="uint" c:type="guint"/>
91571       </return-value>
91572       <parameters>
91573         <parameter name="scanner" transfer-ownership="none">
91574           <doc xml:whitespace="preserve">a #GScanner</doc>
91575           <type name="GLib.Scanner" c:type="GScanner*"/>
91576         </parameter>
91577         <parameter name="color" transfer-ownership="none">
91578           <doc xml:whitespace="preserve">a pointer to a #GdkColor structure in which to store the result</doc>
91579           <type name="Gdk.Color" c:type="GdkColor*"/>
91580         </parameter>
91581       </parameters>
91582     </function>
91583     <function name="rc_parse_color_full"
91584               c:identifier="gtk_rc_parse_color_full"
91585               version="2.12">
91586       <doc xml:whitespace="preserve">Parses a color in the &lt;link linkend="color=format"&gt;format&lt;/link&gt; expected
91587 in a RC file. If @style is not %NULL, it will be consulted to resolve
91588 references to symbolic colors.
91589 that was expected but not found</doc>
91590       <return-value transfer-ownership="none">
91591         <doc xml:whitespace="preserve">%G_TOKEN_NONE if parsing succeeded, otherwise the token</doc>
91592         <type name="uint" c:type="guint"/>
91593       </return-value>
91594       <parameters>
91595         <parameter name="scanner" transfer-ownership="none">
91596           <doc xml:whitespace="preserve">a #GScanner</doc>
91597           <type name="GLib.Scanner" c:type="GScanner*"/>
91598         </parameter>
91599         <parameter name="style" transfer-ownership="none" allow-none="1">
91600           <doc xml:whitespace="preserve">a #GtkRcStyle, or %NULL</doc>
91601           <type name="RcStyle" c:type="GtkRcStyle*"/>
91602         </parameter>
91603         <parameter name="color" transfer-ownership="none">
91604           <doc xml:whitespace="preserve">a pointer to a #GdkColor structure in which to store the result</doc>
91605           <type name="Gdk.Color" c:type="GdkColor*"/>
91606         </parameter>
91607       </parameters>
91608     </function>
91609     <function name="rc_parse_priority" c:identifier="gtk_rc_parse_priority">
91610       <return-value transfer-ownership="none">
91611         <type name="uint" c:type="guint"/>
91612       </return-value>
91613       <parameters>
91614         <parameter name="scanner" transfer-ownership="none">
91615           <type name="GLib.Scanner" c:type="GScanner*"/>
91616         </parameter>
91617         <parameter name="priority" transfer-ownership="none">
91618           <type name="PathPriorityType" c:type="GtkPathPriorityType*"/>
91619         </parameter>
91620       </parameters>
91621     </function>
91622     <function name="rc_parse_state" c:identifier="gtk_rc_parse_state">
91623       <return-value transfer-ownership="none">
91624         <type name="uint" c:type="guint"/>
91625       </return-value>
91626       <parameters>
91627         <parameter name="scanner" transfer-ownership="none">
91628           <type name="GLib.Scanner" c:type="GScanner*"/>
91629         </parameter>
91630         <parameter name="state" transfer-ownership="none">
91631           <type name="StateType" c:type="GtkStateType*"/>
91632         </parameter>
91633       </parameters>
91634     </function>
91635     <function name="rc_parse_string" c:identifier="gtk_rc_parse_string">
91636       <return-value transfer-ownership="none">
91637         <type name="none" c:type="void"/>
91638       </return-value>
91639       <parameters>
91640         <parameter name="rc_string" transfer-ownership="none">
91641           <type name="utf8" c:type="gchar*"/>
91642         </parameter>
91643       </parameters>
91644     </function>
91645     <function name="rc_property_parse_border"
91646               c:identifier="gtk_rc_property_parse_border">
91647       <doc xml:whitespace="preserve">A #GtkRcPropertyParser for use with gtk_settings_install_property_parser()
91648 or gtk_widget_class_install_style_property_parser() which parses
91649 borders in the form 
91650 &lt;literal&gt;"{ left, right, top, bottom }"&lt;/literal&gt; for integers 
91651 %left, %right, %top and %bottom.
91652 has been set to the resulting #GtkBorder.</doc>
91653       <return-value transfer-ownership="none">
91654         <doc xml:whitespace="preserve">%TRUE if @gstring could be parsed and @property_value</doc>
91655         <type name="boolean" c:type="gboolean"/>
91656       </return-value>
91657       <parameters>
91658         <parameter name="pspec" transfer-ownership="none">
91659           <doc xml:whitespace="preserve">a #GParamSpec</doc>
91660           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
91661         </parameter>
91662         <parameter name="gstring" transfer-ownership="none">
91663           <doc xml:whitespace="preserve">the #GString to be parsed</doc>
91664           <type name="GLib.String" c:type="GString*"/>
91665         </parameter>
91666         <parameter name="property_value" transfer-ownership="none">
91667           <doc xml:whitespace="preserve">a #GValue which must hold boxed values.</doc>
91668           <type name="GObject.Value" c:type="GValue*"/>
91669         </parameter>
91670       </parameters>
91671     </function>
91672     <function name="rc_property_parse_color"
91673               c:identifier="gtk_rc_property_parse_color">
91674       <doc xml:whitespace="preserve">A #GtkRcPropertyParser for use with gtk_settings_install_property_parser()
91675 or gtk_widget_class_install_style_property_parser() which parses a
91676 color given either by its name or in the form 
91677 &lt;literal&gt;{ red, green, blue }&lt;/literal&gt; where %red, %green and
91678 %blue are integers between 0 and 65535 or floating-point numbers
91679 between 0 and 1.
91680 has been set to the resulting #GdkColor.</doc>
91681       <return-value transfer-ownership="none">
91682         <doc xml:whitespace="preserve">%TRUE if @gstring could be parsed and @property_value</doc>
91683         <type name="boolean" c:type="gboolean"/>
91684       </return-value>
91685       <parameters>
91686         <parameter name="pspec" transfer-ownership="none">
91687           <doc xml:whitespace="preserve">a #GParamSpec</doc>
91688           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
91689         </parameter>
91690         <parameter name="gstring" transfer-ownership="none">
91691           <doc xml:whitespace="preserve">the #GString to be parsed</doc>
91692           <type name="GLib.String" c:type="GString*"/>
91693         </parameter>
91694         <parameter name="property_value" transfer-ownership="none">
91695           <doc xml:whitespace="preserve">a #GValue which must hold #GdkColor values.</doc>
91696           <type name="GObject.Value" c:type="GValue*"/>
91697         </parameter>
91698       </parameters>
91699     </function>
91700     <function name="rc_property_parse_enum"
91701               c:identifier="gtk_rc_property_parse_enum">
91702       <doc xml:whitespace="preserve">A #GtkRcPropertyParser for use with gtk_settings_install_property_parser()
91703 or gtk_widget_class_install_style_property_parser() which parses a single
91704 enumeration value.
91705 The enumeration value can be specified by its name, its nickname or
91706 its numeric value. For consistency with flags parsing, the value
91707 may be surrounded by parentheses.
91708 has been set to the resulting #GEnumValue.</doc>
91709       <return-value transfer-ownership="none">
91710         <doc xml:whitespace="preserve">%TRUE if @gstring could be parsed and @property_value</doc>
91711         <type name="boolean" c:type="gboolean"/>
91712       </return-value>
91713       <parameters>
91714         <parameter name="pspec" transfer-ownership="none">
91715           <doc xml:whitespace="preserve">a #GParamSpec</doc>
91716           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
91717         </parameter>
91718         <parameter name="gstring" transfer-ownership="none">
91719           <doc xml:whitespace="preserve">the #GString to be parsed</doc>
91720           <type name="GLib.String" c:type="GString*"/>
91721         </parameter>
91722         <parameter name="property_value" transfer-ownership="none">
91723           <doc xml:whitespace="preserve">a #GValue which must hold enum values.</doc>
91724           <type name="GObject.Value" c:type="GValue*"/>
91725         </parameter>
91726       </parameters>
91727     </function>
91728     <function name="rc_property_parse_flags"
91729               c:identifier="gtk_rc_property_parse_flags">
91730       <doc xml:whitespace="preserve">A #GtkRcPropertyParser for use with gtk_settings_install_property_parser()
91731 or gtk_widget_class_install_style_property_parser() which parses flags. 
91732 Flags can be specified by their name, their nickname or
91733 numerically. Multiple flags can be specified in the form 
91734 &lt;literal&gt;"( flag1 | flag2 | ... )"&lt;/literal&gt;.
91735 has been set to the resulting flags value.</doc>
91736       <return-value transfer-ownership="none">
91737         <doc xml:whitespace="preserve">%TRUE if @gstring could be parsed and @property_value</doc>
91738         <type name="boolean" c:type="gboolean"/>
91739       </return-value>
91740       <parameters>
91741         <parameter name="pspec" transfer-ownership="none">
91742           <doc xml:whitespace="preserve">a #GParamSpec</doc>
91743           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
91744         </parameter>
91745         <parameter name="gstring" transfer-ownership="none">
91746           <doc xml:whitespace="preserve">the #GString to be parsed</doc>
91747           <type name="GLib.String" c:type="GString*"/>
91748         </parameter>
91749         <parameter name="property_value" transfer-ownership="none">
91750           <doc xml:whitespace="preserve">a #GValue which must hold flags values.</doc>
91751           <type name="GObject.Value" c:type="GValue*"/>
91752         </parameter>
91753       </parameters>
91754     </function>
91755     <function name="rc_property_parse_requisition"
91756               c:identifier="gtk_rc_property_parse_requisition">
91757       <doc xml:whitespace="preserve">A #GtkRcPropertyParser for use with gtk_settings_install_property_parser()
91758 or gtk_widget_class_install_style_property_parser() which parses a
91759 requisition in the form 
91760 &lt;literal&gt;"{ width, height }"&lt;/literal&gt; for integers %width and %height.
91761 has been set to the resulting #GtkRequisition.</doc>
91762       <return-value transfer-ownership="none">
91763         <doc xml:whitespace="preserve">%TRUE if @gstring could be parsed and @property_value</doc>
91764         <type name="boolean" c:type="gboolean"/>
91765       </return-value>
91766       <parameters>
91767         <parameter name="pspec" transfer-ownership="none">
91768           <doc xml:whitespace="preserve">a #GParamSpec</doc>
91769           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
91770         </parameter>
91771         <parameter name="gstring" transfer-ownership="none">
91772           <doc xml:whitespace="preserve">the #GString to be parsed</doc>
91773           <type name="GLib.String" c:type="GString*"/>
91774         </parameter>
91775         <parameter name="property_value" transfer-ownership="none">
91776           <doc xml:whitespace="preserve">a #GValue which must hold boxed values.</doc>
91777           <type name="GObject.Value" c:type="GValue*"/>
91778         </parameter>
91779       </parameters>
91780     </function>
91781     <function name="rc_reparse_all" c:identifier="gtk_rc_reparse_all">
91782       <doc xml:whitespace="preserve">If the modification time on any previously read file for the
91783 default #GtkSettings has changed, discard all style information
91784 and then reread all previously read RC files.</doc>
91785       <return-value transfer-ownership="none">
91786         <doc xml:whitespace="preserve">%TRUE if the files were reread.</doc>
91787         <type name="boolean" c:type="gboolean"/>
91788       </return-value>
91789     </function>
91790     <function name="rc_reparse_all_for_settings"
91791               c:identifier="gtk_rc_reparse_all_for_settings">
91792       <doc xml:whitespace="preserve">If the modification time on any previously read file
91793 for the given #GtkSettings has changed, discard all style information
91794 and then reread all previously read RC files.</doc>
91795       <return-value transfer-ownership="none">
91796         <doc xml:whitespace="preserve">%TRUE if the files were reread.</doc>
91797         <type name="boolean" c:type="gboolean"/>
91798       </return-value>
91799       <parameters>
91800         <parameter name="settings" transfer-ownership="none">
91801           <doc xml:whitespace="preserve">a #GtkSettings</doc>
91802           <type name="Settings" c:type="GtkSettings*"/>
91803         </parameter>
91804         <parameter name="force_load" transfer-ownership="none">
91805           <doc xml:whitespace="preserve">load whether or not anything changed</doc>
91806           <type name="boolean" c:type="gboolean"/>
91807         </parameter>
91808       </parameters>
91809     </function>
91810     <function name="rc_reset_styles"
91811               c:identifier="gtk_rc_reset_styles"
91812               version="2.4">
91813       <doc xml:whitespace="preserve">This function recomputes the styles for all widgets that use a
91814 particular #GtkSettings object. (There is one #GtkSettings object
91815 per #GdkScreen, see gtk_settings_get_for_screen()); It is useful
91816 when some global parameter has changed that affects the appearance
91817 of all widgets, because when a widget gets a new style, it will
91818 both redraw and recompute any cached information about its
91819 appearance. As an example, it is used when the default font size
91820 set by the operating system changes. Note that this function
91821 doesn't affect widgets that have a style set explicitely on them
91822 with gtk_widget_set_style().</doc>
91823       <return-value transfer-ownership="none">
91824         <type name="none" c:type="void"/>
91825       </return-value>
91826       <parameters>
91827         <parameter name="settings" transfer-ownership="none">
91828           <doc xml:whitespace="preserve">a #GtkSettings</doc>
91829           <type name="Settings" c:type="GtkSettings*"/>
91830         </parameter>
91831       </parameters>
91832     </function>
91833     <function name="rc_scanner_new" c:identifier="gtk_rc_scanner_new">
91834       <return-value transfer-ownership="full">
91835         <type name="GLib.Scanner" c:type="GScanner*"/>
91836       </return-value>
91837     </function>
91838     <function name="rc_set_default_files"
91839               c:identifier="gtk_rc_set_default_files">
91840       <doc xml:whitespace="preserve">Sets the list of files that GTK+ will read at the
91841 end of gtk_init().</doc>
91842       <return-value transfer-ownership="none">
91843         <type name="none" c:type="void"/>
91844       </return-value>
91845       <parameters>
91846         <parameter name="filenames" transfer-ownership="none">
91847           <doc xml:whitespace="preserve">A %NULL-terminated list of filenames.</doc>
91848           <array c:type="gchar**">
91849             <type name="utf8"/>
91850           </array>
91851         </parameter>
91852       </parameters>
91853     </function>
91854     <function name="rgb_to_hsv" c:identifier="gtk_rgb_to_hsv" version="2.14">
91855       <doc xml:whitespace="preserve">Converts a color from RGB space to HSV.
91856 Input values must be in the [0.0, 1.0] range;
91857 output values will be in the same range.</doc>
91858       <return-value transfer-ownership="none">
91859         <type name="none" c:type="void"/>
91860       </return-value>
91861       <parameters>
91862         <parameter name="r" transfer-ownership="none">
91863           <doc xml:whitespace="preserve">Red</doc>
91864           <type name="double" c:type="gdouble"/>
91865         </parameter>
91866         <parameter name="g" transfer-ownership="none">
91867           <doc xml:whitespace="preserve">Green</doc>
91868           <type name="double" c:type="gdouble"/>
91869         </parameter>
91870         <parameter name="b" transfer-ownership="none">
91871           <doc xml:whitespace="preserve">Blue</doc>
91872           <type name="double" c:type="gdouble"/>
91873         </parameter>
91874         <parameter name="h"
91875                    direction="out"
91876                    caller-allocates="0"
91877                    transfer-ownership="full">
91878           <doc xml:whitespace="preserve">Return value for the hue component</doc>
91879           <type name="double" c:type="gdouble*"/>
91880         </parameter>
91881         <parameter name="s"
91882                    direction="out"
91883                    caller-allocates="0"
91884                    transfer-ownership="full">
91885           <doc xml:whitespace="preserve">Return value for the saturation component</doc>
91886           <type name="double" c:type="gdouble*"/>
91887         </parameter>
91888         <parameter name="v"
91889                    direction="out"
91890                    caller-allocates="0"
91891                    transfer-ownership="full">
91892           <doc xml:whitespace="preserve">Return value for the value component</doc>
91893           <type name="double" c:type="gdouble*"/>
91894         </parameter>
91895       </parameters>
91896     </function>
91897     <function name="selection_add_target"
91898               c:identifier="gtk_selection_add_target">
91899       <doc xml:whitespace="preserve">Appends a specified target to the list of supported targets for a 
91900 given widget and selection.</doc>
91901       <return-value transfer-ownership="none">
91902         <type name="none" c:type="void"/>
91903       </return-value>
91904       <parameters>
91905         <parameter name="widget" transfer-ownership="none">
91906           <doc xml:whitespace="preserve">a #GtkTarget</doc>
91907           <type name="Widget" c:type="GtkWidget*"/>
91908         </parameter>
91909         <parameter name="selection" transfer-ownership="none">
91910           <doc xml:whitespace="preserve">the selection</doc>
91911           <type name="Gdk.Atom" c:type="GdkAtom"/>
91912         </parameter>
91913         <parameter name="target" transfer-ownership="none">
91914           <doc xml:whitespace="preserve">target to add.</doc>
91915           <type name="Gdk.Atom" c:type="GdkAtom"/>
91916         </parameter>
91917         <parameter name="info" transfer-ownership="none">
91918           <doc xml:whitespace="preserve">A unsigned integer which will be passed back to the application.</doc>
91919           <type name="uint" c:type="guint"/>
91920         </parameter>
91921       </parameters>
91922     </function>
91923     <function name="selection_add_targets"
91924               c:identifier="gtk_selection_add_targets">
91925       <doc xml:whitespace="preserve">Prepends a table of targets to the list of supported targets
91926 for a given widget and selection.</doc>
91927       <return-value transfer-ownership="none">
91928         <type name="none" c:type="void"/>
91929       </return-value>
91930       <parameters>
91931         <parameter name="widget" transfer-ownership="none">
91932           <doc xml:whitespace="preserve">a #GtkWidget</doc>
91933           <type name="Widget" c:type="GtkWidget*"/>
91934         </parameter>
91935         <parameter name="selection" transfer-ownership="none">
91936           <doc xml:whitespace="preserve">the selection</doc>
91937           <type name="Gdk.Atom" c:type="GdkAtom"/>
91938         </parameter>
91939         <parameter name="targets" transfer-ownership="none">
91940           <doc xml:whitespace="preserve">a table of targets to add</doc>
91941           <type name="TargetEntry" c:type="GtkTargetEntry*"/>
91942         </parameter>
91943         <parameter name="ntargets" transfer-ownership="none">
91944           <doc xml:whitespace="preserve">number of entries in @targets</doc>
91945           <type name="uint" c:type="guint"/>
91946         </parameter>
91947       </parameters>
91948     </function>
91949     <function name="selection_clear"
91950               c:identifier="gtk_selection_clear"
91951               version="2.2"
91952               deprecated="Instead of calling this function, chain up from"
91953               deprecated-version="2.4">
91954       <doc xml:whitespace="preserve">The default handler for the #GtkWidget::selection-clear-event
91955 signal. 
91956 your selection-clear-event handler. Calling this function
91957 from any other context is illegal.</doc>
91958       <return-value transfer-ownership="none">
91959         <doc xml:whitespace="preserve">%TRUE if the event was handled, otherwise false</doc>
91960         <type name="boolean" c:type="gboolean"/>
91961       </return-value>
91962       <parameters>
91963         <parameter name="widget" transfer-ownership="none">
91964           <doc xml:whitespace="preserve">a #GtkWidget</doc>
91965           <type name="Widget" c:type="GtkWidget*"/>
91966         </parameter>
91967         <parameter name="event" transfer-ownership="none">
91968           <doc xml:whitespace="preserve">the event</doc>
91969           <type name="Gdk.EventSelection" c:type="GdkEventSelection*"/>
91970         </parameter>
91971       </parameters>
91972     </function>
91973     <function name="selection_clear_targets"
91974               c:identifier="gtk_selection_clear_targets">
91975       <doc xml:whitespace="preserve">Remove all targets registered for the given selection for the
91976 widget.</doc>
91977       <return-value transfer-ownership="none">
91978         <type name="none" c:type="void"/>
91979       </return-value>
91980       <parameters>
91981         <parameter name="widget" transfer-ownership="none">
91982           <doc xml:whitespace="preserve">a #GtkWidget</doc>
91983           <type name="Widget" c:type="GtkWidget*"/>
91984         </parameter>
91985         <parameter name="selection" transfer-ownership="none">
91986           <doc xml:whitespace="preserve">an atom representing a selection</doc>
91987           <type name="Gdk.Atom" c:type="GdkAtom"/>
91988         </parameter>
91989       </parameters>
91990     </function>
91991     <function name="selection_convert" c:identifier="gtk_selection_convert">
91992       <doc xml:whitespace="preserve">Requests the contents of a selection. When received, 
91993 a "selection-received" signal will be generated.
91994 request. (e.g., there was already a request in process for
91995 this widget).</doc>
91996       <return-value transfer-ownership="none">
91997         <doc xml:whitespace="preserve">%TRUE if requested succeeded. %FALSE if we could not process</doc>
91998         <type name="boolean" c:type="gboolean"/>
91999       </return-value>
92000       <parameters>
92001         <parameter name="widget" transfer-ownership="none">
92002           <doc xml:whitespace="preserve">The widget which acts as requestor</doc>
92003           <type name="Widget" c:type="GtkWidget*"/>
92004         </parameter>
92005         <parameter name="selection" transfer-ownership="none">
92006           <doc xml:whitespace="preserve">Which selection to get</doc>
92007           <type name="Gdk.Atom" c:type="GdkAtom"/>
92008         </parameter>
92009         <parameter name="target" transfer-ownership="none">
92010           <doc xml:whitespace="preserve">Form of information desired (e.g., STRING)</doc>
92011           <type name="Gdk.Atom" c:type="GdkAtom"/>
92012         </parameter>
92013         <parameter name="time_" transfer-ownership="none">
92014           <doc xml:whitespace="preserve">Time of request (usually of triggering event)</doc>
92015           <type name="uint32" c:type="guint32"/>
92016         </parameter>
92017       </parameters>
92018     </function>
92019     <function name="selection_owner_set"
92020               c:identifier="gtk_selection_owner_set">
92021       <doc xml:whitespace="preserve">Claims ownership of a given selection for a particular widget,
92022 or, if @widget is %NULL, release ownership of the selection.</doc>
92023       <return-value transfer-ownership="none">
92024         <doc xml:whitespace="preserve">%TRUE if the operation succeeded</doc>
92025         <type name="boolean" c:type="gboolean"/>
92026       </return-value>
92027       <parameters>
92028         <parameter name="widget" transfer-ownership="none" allow-none="1">
92029           <doc xml:whitespace="preserve">a #GtkWidget, or %NULL.</doc>
92030           <type name="Widget" c:type="GtkWidget*"/>
92031         </parameter>
92032         <parameter name="selection" transfer-ownership="none">
92033           <doc xml:whitespace="preserve">an interned atom representing the selection to claim</doc>
92034           <type name="Gdk.Atom" c:type="GdkAtom"/>
92035         </parameter>
92036         <parameter name="time_" transfer-ownership="none">
92037           <doc xml:whitespace="preserve">timestamp with which to claim the selection</doc>
92038           <type name="uint32" c:type="guint32"/>
92039         </parameter>
92040       </parameters>
92041     </function>
92042     <function name="selection_owner_set_for_display"
92043               c:identifier="gtk_selection_owner_set_for_display"
92044               version="2.2">
92045       <doc xml:whitespace="preserve">Claim ownership of a given selection for a particular widget, or,
92046 if @widget is %NULL, release ownership of the selection.</doc>
92047       <return-value transfer-ownership="none">
92048         <doc xml:whitespace="preserve">TRUE if the operation succeeded</doc>
92049         <type name="boolean" c:type="gboolean"/>
92050       </return-value>
92051       <parameters>
92052         <parameter name="display" transfer-ownership="none">
92053           <doc xml:whitespace="preserve">the #Gdkdisplay where the selection is set</doc>
92054           <type name="Gdk.Display" c:type="GdkDisplay*"/>
92055         </parameter>
92056         <parameter name="widget" transfer-ownership="none" allow-none="1">
92057           <doc xml:whitespace="preserve">new selection owner (a #GdkWidget), or %NULL.</doc>
92058           <type name="Widget" c:type="GtkWidget*"/>
92059         </parameter>
92060         <parameter name="selection" transfer-ownership="none">
92061           <doc xml:whitespace="preserve">an interned atom representing the selection to claim.</doc>
92062           <type name="Gdk.Atom" c:type="GdkAtom"/>
92063         </parameter>
92064         <parameter name="time_" transfer-ownership="none">
92065           <doc xml:whitespace="preserve">timestamp with which to claim the selection</doc>
92066           <type name="uint32" c:type="guint32"/>
92067         </parameter>
92068       </parameters>
92069     </function>
92070     <function name="selection_remove_all"
92071               c:identifier="gtk_selection_remove_all">
92072       <doc xml:whitespace="preserve">Removes all handlers and unsets ownership of all 
92073 selections for a widget. Called when widget is being
92074 destroyed. This function will not generally be
92075 called by applications.</doc>
92076       <return-value transfer-ownership="none">
92077         <type name="none" c:type="void"/>
92078       </return-value>
92079       <parameters>
92080         <parameter name="widget" transfer-ownership="none">
92081           <doc xml:whitespace="preserve">a #GtkWidget</doc>
92082           <type name="Widget" c:type="GtkWidget*"/>
92083         </parameter>
92084       </parameters>
92085     </function>
92086     <function name="set_locale" c:identifier="gtk_set_locale">
92087       <doc xml:whitespace="preserve">Initializes internationalization support for GTK+. gtk_init()
92088 automatically does this, so there is typically no point
92089 in calling this function.
92090 If you are calling this function because you changed the locale
92091 after GTK+ is was initialized, then calling this function
92092 may help a bit. (Note, however, that changing the locale
92093 after GTK+ is initialized may produce inconsistent results and
92094 is not really supported.)
92095 In detail - sets the current locale according to the
92096 program environment. This is the same as calling the C library function
92097 &lt;literal&gt;setlocale (LC_ALL, "")&lt;/literal&gt; but also takes care of the 
92098 locale specific setup of the windowing system used by GDK.
92099 form lang_COUNTRY, where lang is an ISO-639 language code, and
92100 COUNTRY is an ISO-3166 country code. On Unix, this form matches the
92101 result of the setlocale(); it is also used on other machines, such as 
92102 Windows, where the C library returns a different result. The string is 
92103 owned by GTK+ and should not be modified or freed.</doc>
92104       <return-value transfer-ownership="full">
92105         <doc xml:whitespace="preserve">a string corresponding to the locale set, typically in the</doc>
92106         <type name="utf8" c:type="gchar*"/>
92107       </return-value>
92108     </function>
92109     <function name="show_about_dialog"
92110               c:identifier="gtk_show_about_dialog"
92111               version="2.6"
92112               introspectable="0">
92113       <doc xml:whitespace="preserve">This is a convenience function for showing an application's about box.
92114 The constructed dialog is associated with the parent window and
92115 reused for future invocations of this function.</doc>
92116       <return-value transfer-ownership="none">
92117         <type name="none" c:type="void"/>
92118       </return-value>
92119       <parameters>
92120         <parameter name="parent" transfer-ownership="none" allow-none="1">
92121           <doc xml:whitespace="preserve">transient parent, or %NULL for none</doc>
92122           <type name="Window" c:type="GtkWindow*"/>
92123         </parameter>
92124         <parameter name="first_property_name" transfer-ownership="none">
92125           <doc xml:whitespace="preserve">the name of the first property</doc>
92126           <type name="utf8" c:type="gchar*"/>
92127         </parameter>
92128         <parameter transfer-ownership="none">
92129           <varargs>
92130           </varargs>
92131         </parameter>
92132       </parameters>
92133     </function>
92134     <function name="show_uri"
92135               c:identifier="gtk_show_uri"
92136               version="2.14"
92137               throws="1">
92138       <doc xml:whitespace="preserve">This is a convenience function for launching the default application
92139 to show the uri. The uri must be of a form understood by GIO. Typical
92140 examples are
92141 &lt;simplelist&gt;
92142 &lt;member&gt;&lt;filename&gt;file:///home/gnome/pict.jpg&lt;/filename&gt;&lt;/member&gt;
92143 &lt;member&gt;&lt;filename&gt;http://www.gnome.org&lt;/filename&gt;&lt;/member&gt;
92144 &lt;member&gt;&lt;filename&gt;mailto:me&amp;commat;gnome.org&lt;/filename&gt;&lt;/member&gt;
92145 &lt;/simplelist&gt;
92146 Ideally the timestamp is taken from the event triggering
92147 the gtk_show_uri() call. If timestamp is not known you can take
92148 %GDK_CURRENT_TIME.
92149 This function can be used as a replacement for gnome_vfs_url_show()
92150 and gnome_url_show().</doc>
92151       <return-value transfer-ownership="none">
92152         <doc xml:whitespace="preserve">%TRUE on success, %FALSE on error.</doc>
92153         <type name="boolean" c:type="gboolean"/>
92154       </return-value>
92155       <parameters>
92156         <parameter name="screen" transfer-ownership="none" allow-none="1">
92157           <doc xml:whitespace="preserve">screen to show the uri on or %NULL for the default screen</doc>
92158           <type name="Gdk.Screen" c:type="GdkScreen*"/>
92159         </parameter>
92160         <parameter name="uri" transfer-ownership="none">
92161           <doc xml:whitespace="preserve">the uri to show</doc>
92162           <type name="utf8" c:type="gchar*"/>
92163         </parameter>
92164         <parameter name="timestamp" transfer-ownership="none">
92165           <doc xml:whitespace="preserve">a timestamp to prevent focus stealing.</doc>
92166           <type name="uint32" c:type="guint32"/>
92167         </parameter>
92168       </parameters>
92169     </function>
92170     <function name="signal_compat_matched"
92171               c:identifier="gtk_signal_compat_matched">
92172       <return-value transfer-ownership="none">
92173         <type name="none" c:type="void"/>
92174       </return-value>
92175       <parameters>
92176         <parameter name="object" transfer-ownership="none">
92177           <type name="Object" c:type="GtkObject*"/>
92178         </parameter>
92179         <parameter name="func"
92180                    transfer-ownership="none"
92181                    scope="call"
92182                    closure="2">
92183           <type name="GObject.Callback" c:type="GCallback"/>
92184         </parameter>
92185         <parameter name="data" transfer-ownership="none">
92186           <type name="any" c:type="gpointer"/>
92187         </parameter>
92188         <parameter name="match" transfer-ownership="none">
92189           <type name="GObject.SignalMatchType" c:type="GSignalMatchType"/>
92190         </parameter>
92191         <parameter name="action" transfer-ownership="none">
92192           <type name="uint" c:type="guint"/>
92193         </parameter>
92194       </parameters>
92195     </function>
92196     <function name="signal_connect_full"
92197               c:identifier="gtk_signal_connect_full">
92198       <return-value transfer-ownership="none">
92199         <type name="ulong" c:type="gulong"/>
92200       </return-value>
92201       <parameters>
92202         <parameter name="object" transfer-ownership="none">
92203           <type name="Object" c:type="GtkObject*"/>
92204         </parameter>
92205         <parameter name="name" transfer-ownership="none">
92206           <type name="utf8" c:type="gchar*"/>
92207         </parameter>
92208         <parameter name="func" transfer-ownership="none" scope="call">
92209           <type name="GObject.Callback" c:type="GCallback"/>
92210         </parameter>
92211         <parameter name="unsupported"
92212                    transfer-ownership="none"
92213                    scope="notified"
92214                    closure="4"
92215                    destroy="5">
92216           <type name="CallbackMarshal" c:type="GtkCallbackMarshal"/>
92217         </parameter>
92218         <parameter name="data" transfer-ownership="none">
92219           <type name="any" c:type="gpointer"/>
92220         </parameter>
92221         <parameter name="destroy_func" transfer-ownership="none" scope="call">
92222           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
92223         </parameter>
92224         <parameter name="object_signal" transfer-ownership="none">
92225           <type name="int" c:type="gint"/>
92226         </parameter>
92227         <parameter name="after" transfer-ownership="none">
92228           <type name="int" c:type="gint"/>
92229         </parameter>
92230       </parameters>
92231     </function>
92232     <function name="signal_connect_object_while_alive"
92233               c:identifier="gtk_signal_connect_object_while_alive">
92234       <return-value transfer-ownership="none">
92235         <type name="none" c:type="void"/>
92236       </return-value>
92237       <parameters>
92238         <parameter name="object" transfer-ownership="none">
92239           <type name="Object" c:type="GtkObject*"/>
92240         </parameter>
92241         <parameter name="name" transfer-ownership="none">
92242           <type name="utf8" c:type="gchar*"/>
92243         </parameter>
92244         <parameter name="func" transfer-ownership="none" scope="call">
92245           <type name="GObject.Callback" c:type="GCallback"/>
92246         </parameter>
92247         <parameter name="alive_object" transfer-ownership="none">
92248           <type name="Object" c:type="GtkObject*"/>
92249         </parameter>
92250       </parameters>
92251     </function>
92252     <function name="signal_connect_while_alive"
92253               c:identifier="gtk_signal_connect_while_alive">
92254       <return-value transfer-ownership="none">
92255         <type name="none" c:type="void"/>
92256       </return-value>
92257       <parameters>
92258         <parameter name="object" transfer-ownership="none">
92259           <type name="Object" c:type="GtkObject*"/>
92260         </parameter>
92261         <parameter name="name" transfer-ownership="none">
92262           <type name="utf8" c:type="gchar*"/>
92263         </parameter>
92264         <parameter name="func"
92265                    transfer-ownership="none"
92266                    scope="call"
92267                    closure="3">
92268           <type name="GObject.Callback" c:type="GCallback"/>
92269         </parameter>
92270         <parameter name="func_data" transfer-ownership="none">
92271           <type name="any" c:type="gpointer"/>
92272         </parameter>
92273         <parameter name="alive_object" transfer-ownership="none">
92274           <type name="Object" c:type="GtkObject*"/>
92275         </parameter>
92276       </parameters>
92277     </function>
92278     <function name="signal_emit"
92279               c:identifier="gtk_signal_emit"
92280               introspectable="0">
92281       <return-value transfer-ownership="none">
92282         <type name="none" c:type="void"/>
92283       </return-value>
92284       <parameters>
92285         <parameter name="object" transfer-ownership="none">
92286           <type name="Object" c:type="GtkObject*"/>
92287         </parameter>
92288         <parameter name="signal_id" transfer-ownership="none">
92289           <type name="uint" c:type="guint"/>
92290         </parameter>
92291         <parameter transfer-ownership="none">
92292           <varargs>
92293           </varargs>
92294         </parameter>
92295       </parameters>
92296     </function>
92297     <function name="signal_emit_by_name"
92298               c:identifier="gtk_signal_emit_by_name"
92299               introspectable="0">
92300       <return-value transfer-ownership="none">
92301         <type name="none" c:type="void"/>
92302       </return-value>
92303       <parameters>
92304         <parameter name="object" transfer-ownership="none">
92305           <type name="Object" c:type="GtkObject*"/>
92306         </parameter>
92307         <parameter name="name" transfer-ownership="none">
92308           <type name="utf8" c:type="gchar*"/>
92309         </parameter>
92310         <parameter transfer-ownership="none">
92311           <varargs>
92312           </varargs>
92313         </parameter>
92314       </parameters>
92315     </function>
92316     <function name="signal_emit_stop_by_name"
92317               c:identifier="gtk_signal_emit_stop_by_name">
92318       <return-value transfer-ownership="none">
92319         <type name="none" c:type="void"/>
92320       </return-value>
92321       <parameters>
92322         <parameter name="object" transfer-ownership="none">
92323           <type name="Object" c:type="GtkObject*"/>
92324         </parameter>
92325         <parameter name="name" transfer-ownership="none">
92326           <type name="utf8" c:type="gchar*"/>
92327         </parameter>
92328       </parameters>
92329     </function>
92330     <function name="signal_emitv" c:identifier="gtk_signal_emitv">
92331       <return-value transfer-ownership="none">
92332         <type name="none" c:type="void"/>
92333       </return-value>
92334       <parameters>
92335         <parameter name="object" transfer-ownership="none">
92336           <type name="Object" c:type="GtkObject*"/>
92337         </parameter>
92338         <parameter name="signal_id" transfer-ownership="none">
92339           <type name="uint" c:type="guint"/>
92340         </parameter>
92341         <parameter name="args" transfer-ownership="none">
92342           <type name="Arg" c:type="GtkArg*"/>
92343         </parameter>
92344       </parameters>
92345     </function>
92346     <function name="signal_emitv_by_name"
92347               c:identifier="gtk_signal_emitv_by_name">
92348       <return-value transfer-ownership="none">
92349         <type name="none" c:type="void"/>
92350       </return-value>
92351       <parameters>
92352         <parameter name="object" transfer-ownership="none">
92353           <type name="Object" c:type="GtkObject*"/>
92354         </parameter>
92355         <parameter name="name" transfer-ownership="none">
92356           <type name="utf8" c:type="gchar*"/>
92357         </parameter>
92358         <parameter name="args" transfer-ownership="none">
92359           <type name="Arg" c:type="GtkArg*"/>
92360         </parameter>
92361       </parameters>
92362     </function>
92363     <function name="signal_new"
92364               c:identifier="gtk_signal_new"
92365               introspectable="0">
92366       <return-value transfer-ownership="none">
92367         <type name="uint" c:type="guint"/>
92368       </return-value>
92369       <parameters>
92370         <parameter name="name" transfer-ownership="none">
92371           <type name="utf8" c:type="gchar*"/>
92372         </parameter>
92373         <parameter name="signal_flags" transfer-ownership="none">
92374           <type name="SignalRunType" c:type="GtkSignalRunType"/>
92375         </parameter>
92376         <parameter name="object_type" transfer-ownership="none">
92377           <type name="GType" c:type="GType"/>
92378         </parameter>
92379         <parameter name="function_offset" transfer-ownership="none">
92380           <type name="uint" c:type="guint"/>
92381         </parameter>
92382         <parameter name="marshaller" transfer-ownership="none">
92383           <type name="GObject.SignalCMarshaller" c:type="GSignalCMarshaller"/>
92384         </parameter>
92385         <parameter name="return_val" transfer-ownership="none">
92386           <type name="GType" c:type="GType"/>
92387         </parameter>
92388         <parameter name="n_args" transfer-ownership="none">
92389           <type name="uint" c:type="guint"/>
92390         </parameter>
92391         <parameter transfer-ownership="none">
92392           <varargs>
92393           </varargs>
92394         </parameter>
92395       </parameters>
92396     </function>
92397     <function name="signal_newv" c:identifier="gtk_signal_newv">
92398       <return-value transfer-ownership="none">
92399         <type name="uint" c:type="guint"/>
92400       </return-value>
92401       <parameters>
92402         <parameter name="name" transfer-ownership="none">
92403           <type name="utf8" c:type="gchar*"/>
92404         </parameter>
92405         <parameter name="signal_flags" transfer-ownership="none">
92406           <type name="SignalRunType" c:type="GtkSignalRunType"/>
92407         </parameter>
92408         <parameter name="object_type" transfer-ownership="none">
92409           <type name="GType" c:type="GType"/>
92410         </parameter>
92411         <parameter name="function_offset" transfer-ownership="none">
92412           <type name="uint" c:type="guint"/>
92413         </parameter>
92414         <parameter name="marshaller" transfer-ownership="none">
92415           <type name="GObject.SignalCMarshaller" c:type="GSignalCMarshaller"/>
92416         </parameter>
92417         <parameter name="return_val" transfer-ownership="none">
92418           <type name="GType" c:type="GType"/>
92419         </parameter>
92420         <parameter name="n_args" transfer-ownership="none">
92421           <type name="uint" c:type="guint"/>
92422         </parameter>
92423         <parameter name="args"
92424                    direction="out"
92425                    caller-allocates="0"
92426                    transfer-ownership="full">
92427           <type name="GType" c:type="GType*"/>
92428         </parameter>
92429       </parameters>
92430     </function>
92431     <function name="stock_add" c:identifier="gtk_stock_add">
92432       <doc xml:whitespace="preserve">Registers each of the stock items in @items. If an item already
92433 exists with the same stock ID as one of the @items, the old item
92434 gets replaced. The stock items are copied, so GTK+ does not hold
92435 any pointer into @items and @items can be freed. Use
92436 gtk_stock_add_static() if @items is persistent and GTK+ need not
92437 copy the array.</doc>
92438       <return-value transfer-ownership="none">
92439         <type name="none" c:type="void"/>
92440       </return-value>
92441       <parameters>
92442         <parameter name="items" transfer-ownership="none">
92443           <doc xml:whitespace="preserve">a #GtkStockItem or array of items</doc>
92444           <type name="StockItem" c:type="GtkStockItem*"/>
92445         </parameter>
92446         <parameter name="n_items" transfer-ownership="none">
92447           <doc xml:whitespace="preserve">number of #GtkStockItem in @items</doc>
92448           <type name="uint" c:type="guint"/>
92449         </parameter>
92450       </parameters>
92451     </function>
92452     <function name="stock_add_static" c:identifier="gtk_stock_add_static">
92453       <doc xml:whitespace="preserve">Same as gtk_stock_add(), but doesn't copy @items, so</doc>
92454       <return-value transfer-ownership="none">
92455         <type name="none" c:type="void"/>
92456       </return-value>
92457       <parameters>
92458         <parameter name="items" transfer-ownership="none">
92459           <doc xml:whitespace="preserve">a #GtkStockItem or array of #GtkStockItem</doc>
92460           <type name="StockItem" c:type="GtkStockItem*"/>
92461         </parameter>
92462         <parameter name="n_items" transfer-ownership="none">
92463           <doc xml:whitespace="preserve">number of items</doc>
92464           <type name="uint" c:type="guint"/>
92465         </parameter>
92466       </parameters>
92467     </function>
92468     <function name="stock_list_ids" c:identifier="gtk_stock_list_ids">
92469       <doc xml:whitespace="preserve">Retrieves a list of all known stock IDs added to a #GtkIconFactory
92470 or registered with gtk_stock_add(). The list must be freed with g_slist_free(),
92471 and each string in the list must be freed with g_free().</doc>
92472       <return-value transfer-ownership="full">
92473         <doc xml:whitespace="preserve">a list of known stock IDs</doc>
92474         <type name="GLib.SList" c:type="GSList*">
92475           <type name="utf8"/>
92476         </type>
92477       </return-value>
92478     </function>
92479     <function name="stock_lookup" c:identifier="gtk_stock_lookup">
92480       <doc xml:whitespace="preserve">Fills @item with the registered values for @stock_id, returning %TRUE
92481 if @stock_id was known.</doc>
92482       <return-value transfer-ownership="none">
92483         <doc xml:whitespace="preserve">%TRUE if @item was initialized</doc>
92484         <type name="boolean" c:type="gboolean"/>
92485       </return-value>
92486       <parameters>
92487         <parameter name="stock_id" transfer-ownership="none">
92488           <doc xml:whitespace="preserve">a stock item name</doc>
92489           <type name="utf8" c:type="gchar*"/>
92490         </parameter>
92491         <parameter name="item" transfer-ownership="none">
92492           <doc xml:whitespace="preserve">stock item to initialize with values</doc>
92493           <type name="StockItem" c:type="GtkStockItem*"/>
92494         </parameter>
92495       </parameters>
92496     </function>
92497     <function name="stock_set_translate_func"
92498               c:identifier="gtk_stock_set_translate_func"
92499               version="2.8">
92500       <doc xml:whitespace="preserve">Sets a function to be used for translating the @label of 
92501 a stock item.
92502 If no function is registered for a translation domain,
92503 g_dgettext() is used.
92504 The function is used for all stock items whose
92505 to use strings different from the actual gettext translation domain
92506 of your application for this, as long as your #GtkTranslateFunc uses
92507 the correct domain when calling dgettext(). This can be useful, e.g.
92508 when dealing with message contexts:
92509 |[
92510 GtkStockItem items[] = { 
92511 { MY_ITEM1, NC_("odd items", "Item 1"), 0, 0, "odd-item-domain" },
92512 { MY_ITEM2, NC_("even items", "Item 2"), 0, 0, "even-item-domain" },
92513 };
92514 gchar *
92515 my_translate_func (const gchar *msgid,
92516 gpointer     data)
92517 {
92518 gchar *msgctxt = data;
92519 return (gchar*)g_dpgettext2 (GETTEXT_PACKAGE, msgctxt, msgid);
92520 }
92521 /&amp;ast; ... &amp;ast;/
92522 gtk_stock_add (items, G_N_ELEMENTS (items));
92523 gtk_stock_set_translate_func ("odd-item-domain", my_translate_func, "odd items"); 
92524 gtk_stock_set_translate_func ("even-item-domain", my_translate_func, "even items"); 
92525 ]|</doc>
92526       <return-value transfer-ownership="none">
92527         <type name="none" c:type="void"/>
92528       </return-value>
92529       <parameters>
92530         <parameter name="domain" transfer-ownership="none">
92531           <doc xml:whitespace="preserve">the translation domain for which @func shall be used</doc>
92532           <type name="utf8" c:type="gchar*"/>
92533         </parameter>
92534         <parameter name="func"
92535                    transfer-ownership="none"
92536                    scope="notified"
92537                    closure="2"
92538                    destroy="3">
92539           <doc xml:whitespace="preserve">a #GtkTranslateFunc</doc>
92540           <type name="TranslateFunc" c:type="GtkTranslateFunc"/>
92541         </parameter>
92542         <parameter name="data" transfer-ownership="none">
92543           <doc xml:whitespace="preserve">data to pass to @func</doc>
92544           <type name="any" c:type="gpointer"/>
92545         </parameter>
92546         <parameter name="notify" transfer-ownership="none" scope="call">
92547           <doc xml:whitespace="preserve">a #GDestroyNotify that is called when @data is no longer needed</doc>
92548           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
92549         </parameter>
92550       </parameters>
92551     </function>
92552     <function name="target_table_free"
92553               c:identifier="gtk_target_table_free"
92554               version="2.10">
92555       <doc xml:whitespace="preserve">This function frees a target table as returned by
92556 gtk_target_table_new_from_list()</doc>
92557       <return-value transfer-ownership="none">
92558         <type name="none" c:type="void"/>
92559       </return-value>
92560       <parameters>
92561         <parameter name="targets" transfer-ownership="none">
92562           <doc xml:whitespace="preserve">a #GtkTargetEntry array</doc>
92563           <type name="TargetEntry" c:type="GtkTargetEntry*"/>
92564         </parameter>
92565         <parameter name="n_targets" transfer-ownership="none">
92566           <doc xml:whitespace="preserve">the number of entries in the array</doc>
92567           <type name="int" c:type="gint"/>
92568         </parameter>
92569       </parameters>
92570     </function>
92571     <function name="target_table_new_from_list"
92572               c:identifier="gtk_target_table_new_from_list"
92573               version="2.10">
92574       <doc xml:whitespace="preserve">This function creates an #GtkTargetEntry array that contains the
92575 same targets as the passed %list. The returned table is newly
92576 allocated and should be freed using gtk_target_table_free() when no
92577 longer needed.</doc>
92578       <return-value transfer-ownership="full">
92579         <doc xml:whitespace="preserve">the new table.</doc>
92580         <type name="TargetEntry" c:type="GtkTargetEntry*"/>
92581       </return-value>
92582       <parameters>
92583         <parameter name="list" transfer-ownership="none">
92584           <doc xml:whitespace="preserve">a #GtkTargetList</doc>
92585           <type name="TargetList" c:type="GtkTargetList*"/>
92586         </parameter>
92587         <parameter name="n_targets"
92588                    direction="out"
92589                    caller-allocates="0"
92590                    transfer-ownership="full">
92591           <doc xml:whitespace="preserve">return location for the number ot targets in the table</doc>
92592           <type name="int" c:type="gint*"/>
92593         </parameter>
92594       </parameters>
92595     </function>
92596     <function name="targets_include_image"
92597               c:identifier="gtk_targets_include_image"
92598               version="2.10">
92599       <doc xml:whitespace="preserve">Determines if any of the targets in @targets can be used to
92600 provide a #GdkPixbuf.
92601 otherwise %FALSE.</doc>
92602       <return-value transfer-ownership="none">
92603         <doc xml:whitespace="preserve">%TRUE if @targets include a suitable target for images,</doc>
92604         <type name="boolean" c:type="gboolean"/>
92605       </return-value>
92606       <parameters>
92607         <parameter name="targets" transfer-ownership="none">
92608           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s</doc>
92609           <type name="Gdk.Atom" c:type="GdkAtom*"/>
92610         </parameter>
92611         <parameter name="n_targets" transfer-ownership="none">
92612           <doc xml:whitespace="preserve">the length of @targets</doc>
92613           <type name="int" c:type="gint"/>
92614         </parameter>
92615         <parameter name="writable" transfer-ownership="none">
92616           <doc xml:whitespace="preserve">whether to accept only targets for which GTK+ knows how to convert a pixbuf into the format</doc>
92617           <type name="boolean" c:type="gboolean"/>
92618         </parameter>
92619       </parameters>
92620     </function>
92621     <function name="targets_include_rich_text"
92622               c:identifier="gtk_targets_include_rich_text"
92623               version="2.10">
92624       <doc xml:whitespace="preserve">Determines if any of the targets in @targets can be used to
92625 provide rich text.
92626 otherwise %FALSE.</doc>
92627       <return-value transfer-ownership="none">
92628         <doc xml:whitespace="preserve">%TRUE if @targets include a suitable target for rich text,</doc>
92629         <type name="boolean" c:type="gboolean"/>
92630       </return-value>
92631       <parameters>
92632         <parameter name="targets" transfer-ownership="none">
92633           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s</doc>
92634           <type name="Gdk.Atom" c:type="GdkAtom*"/>
92635         </parameter>
92636         <parameter name="n_targets" transfer-ownership="none">
92637           <doc xml:whitespace="preserve">the length of @targets</doc>
92638           <type name="int" c:type="gint"/>
92639         </parameter>
92640         <parameter name="buffer" transfer-ownership="none">
92641           <doc xml:whitespace="preserve">a #GtkTextBuffer</doc>
92642           <type name="TextBuffer" c:type="GtkTextBuffer*"/>
92643         </parameter>
92644       </parameters>
92645     </function>
92646     <function name="targets_include_text"
92647               c:identifier="gtk_targets_include_text"
92648               version="2.10">
92649       <doc xml:whitespace="preserve">Determines if any of the targets in @targets can be used to
92650 provide text.
92651 otherwise %FALSE.</doc>
92652       <return-value transfer-ownership="none">
92653         <doc xml:whitespace="preserve">%TRUE if @targets include a suitable target for text,</doc>
92654         <type name="boolean" c:type="gboolean"/>
92655       </return-value>
92656       <parameters>
92657         <parameter name="targets" transfer-ownership="none">
92658           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s</doc>
92659           <type name="Gdk.Atom" c:type="GdkAtom*"/>
92660         </parameter>
92661         <parameter name="n_targets" transfer-ownership="none">
92662           <doc xml:whitespace="preserve">the length of @targets</doc>
92663           <type name="int" c:type="gint"/>
92664         </parameter>
92665       </parameters>
92666     </function>
92667     <function name="targets_include_uri"
92668               c:identifier="gtk_targets_include_uri"
92669               version="2.10">
92670       <doc xml:whitespace="preserve">Determines if any of the targets in @targets can be used to
92671 provide an uri list.
92672 otherwise %FALSE.</doc>
92673       <return-value transfer-ownership="none">
92674         <doc xml:whitespace="preserve">%TRUE if @targets include a suitable target for uri lists,</doc>
92675         <type name="boolean" c:type="gboolean"/>
92676       </return-value>
92677       <parameters>
92678         <parameter name="targets" transfer-ownership="none">
92679           <doc xml:whitespace="preserve">an array of #GdkAtom&lt;!-- --&gt;s</doc>
92680           <type name="Gdk.Atom" c:type="GdkAtom*"/>
92681         </parameter>
92682         <parameter name="n_targets" transfer-ownership="none">
92683           <doc xml:whitespace="preserve">the length of @targets</doc>
92684           <type name="int" c:type="gint"/>
92685         </parameter>
92686       </parameters>
92687     </function>
92688     <function name="test_create_simple_window"
92689               c:identifier="gtk_test_create_simple_window">
92690       <return-value transfer-ownership="full">
92691         <type name="Widget" c:type="GtkWidget*"/>
92692       </return-value>
92693       <parameters>
92694         <parameter name="window_title" transfer-ownership="none">
92695           <type name="utf8" c:type="gchar*"/>
92696         </parameter>
92697         <parameter name="dialog_text" transfer-ownership="none">
92698           <type name="utf8" c:type="gchar*"/>
92699         </parameter>
92700       </parameters>
92701     </function>
92702     <function name="test_create_widget"
92703               c:identifier="gtk_test_create_widget"
92704               introspectable="0">
92705       <return-value transfer-ownership="full">
92706         <type name="Widget" c:type="GtkWidget*"/>
92707       </return-value>
92708       <parameters>
92709         <parameter name="widget_type" transfer-ownership="none">
92710           <type name="GType" c:type="GType"/>
92711         </parameter>
92712         <parameter name="first_property_name" transfer-ownership="none">
92713           <type name="utf8" c:type="gchar*"/>
92714         </parameter>
92715         <parameter transfer-ownership="none">
92716           <varargs>
92717           </varargs>
92718         </parameter>
92719       </parameters>
92720     </function>
92721     <function name="test_display_button_window"
92722               c:identifier="gtk_test_display_button_window"
92723               introspectable="0">
92724       <return-value transfer-ownership="full">
92725         <type name="Widget" c:type="GtkWidget*"/>
92726       </return-value>
92727       <parameters>
92728         <parameter name="window_title" transfer-ownership="none">
92729           <type name="utf8" c:type="gchar*"/>
92730         </parameter>
92731         <parameter name="dialog_text" transfer-ownership="none">
92732           <type name="utf8" c:type="gchar*"/>
92733         </parameter>
92734         <parameter transfer-ownership="none">
92735           <varargs>
92736           </varargs>
92737         </parameter>
92738       </parameters>
92739     </function>
92740     <function name="test_find_label" c:identifier="gtk_test_find_label">
92741       <return-value transfer-ownership="full">
92742         <type name="Widget" c:type="GtkWidget*"/>
92743       </return-value>
92744       <parameters>
92745         <parameter name="widget" transfer-ownership="none">
92746           <type name="Widget" c:type="GtkWidget*"/>
92747         </parameter>
92748         <parameter name="label_pattern" transfer-ownership="none">
92749           <type name="utf8" c:type="gchar*"/>
92750         </parameter>
92751       </parameters>
92752     </function>
92753     <function name="test_find_sibling" c:identifier="gtk_test_find_sibling">
92754       <return-value transfer-ownership="full">
92755         <type name="Widget" c:type="GtkWidget*"/>
92756       </return-value>
92757       <parameters>
92758         <parameter name="base_widget" transfer-ownership="none">
92759           <type name="Widget" c:type="GtkWidget*"/>
92760         </parameter>
92761         <parameter name="widget_type" transfer-ownership="none">
92762           <type name="GType" c:type="GType"/>
92763         </parameter>
92764       </parameters>
92765     </function>
92766     <function name="test_find_widget" c:identifier="gtk_test_find_widget">
92767       <return-value transfer-ownership="full">
92768         <type name="Widget" c:type="GtkWidget*"/>
92769       </return-value>
92770       <parameters>
92771         <parameter name="widget" transfer-ownership="none">
92772           <type name="Widget" c:type="GtkWidget*"/>
92773         </parameter>
92774         <parameter name="label_pattern" transfer-ownership="none">
92775           <type name="utf8" c:type="gchar*"/>
92776         </parameter>
92777         <parameter name="widget_type" transfer-ownership="none">
92778           <type name="GType" c:type="GType"/>
92779         </parameter>
92780       </parameters>
92781     </function>
92782     <function name="test_init"
92783               c:identifier="gtk_test_init"
92784               version="2.14"
92785               introspectable="0">
92786       <doc xml:whitespace="preserve">This function is used to initialize a GTK+ test program.
92787 It will in turn call g_test_init() and gtk_init() to properly
92788 initialize the testing framework and graphical toolkit. It'll 
92789 also set the program's locale to "C" and prevent loading of rc 
92790 files and Gtk+ modules. This is done to make tets program
92791 environments as deterministic as possible.
92792 Like gtk_init() and g_test_init(), any known arguments will be
92793 processed and stripped from @argc and @argv.</doc>
92794       <return-value transfer-ownership="none">
92795         <type name="none" c:type="void"/>
92796       </return-value>
92797       <parameters>
92798         <parameter name="argcp"
92799                    direction="out"
92800                    caller-allocates="0"
92801                    transfer-ownership="full">
92802           <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>
92803           <type name="int" c:type="int*"/>
92804         </parameter>
92805         <parameter name="argvp" transfer-ownership="none">
92806           <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>
92807           <type name="utf8" c:type="char***"/>
92808         </parameter>
92809         <parameter transfer-ownership="none">
92810           <varargs>
92811           </varargs>
92812         </parameter>
92813       </parameters>
92814     </function>
92815     <function name="test_list_all_types"
92816               c:identifier="gtk_test_list_all_types">
92817       <return-value transfer-ownership="none">
92818         <type name="GType" c:type="GType*"/>
92819       </return-value>
92820       <parameters>
92821         <parameter name="n_types"
92822                    direction="out"
92823                    caller-allocates="0"
92824                    transfer-ownership="full">
92825           <type name="uint" c:type="guint*"/>
92826         </parameter>
92827       </parameters>
92828     </function>
92829     <function name="test_register_all_types"
92830               c:identifier="gtk_test_register_all_types">
92831       <return-value transfer-ownership="none">
92832         <type name="none" c:type="void"/>
92833       </return-value>
92834     </function>
92835     <function name="test_slider_get_value"
92836               c:identifier="gtk_test_slider_get_value">
92837       <return-value transfer-ownership="none">
92838         <type name="double" c:type="double"/>
92839       </return-value>
92840       <parameters>
92841         <parameter name="widget" transfer-ownership="none">
92842           <type name="Widget" c:type="GtkWidget*"/>
92843         </parameter>
92844       </parameters>
92845     </function>
92846     <function name="test_slider_set_perc"
92847               c:identifier="gtk_test_slider_set_perc">
92848       <return-value transfer-ownership="none">
92849         <type name="none" c:type="void"/>
92850       </return-value>
92851       <parameters>
92852         <parameter name="widget" transfer-ownership="none">
92853           <type name="Widget" c:type="GtkWidget*"/>
92854         </parameter>
92855         <parameter name="percentage" transfer-ownership="none">
92856           <type name="double" c:type="double"/>
92857         </parameter>
92858       </parameters>
92859     </function>
92860     <function name="test_spin_button_click"
92861               c:identifier="gtk_test_spin_button_click">
92862       <return-value transfer-ownership="none">
92863         <type name="boolean" c:type="gboolean"/>
92864       </return-value>
92865       <parameters>
92866         <parameter name="spinner" transfer-ownership="none">
92867           <type name="SpinButton" c:type="GtkSpinButton*"/>
92868         </parameter>
92869         <parameter name="button" transfer-ownership="none">
92870           <type name="uint" c:type="guint"/>
92871         </parameter>
92872         <parameter name="upwards" transfer-ownership="none">
92873           <type name="boolean" c:type="gboolean"/>
92874         </parameter>
92875       </parameters>
92876     </function>
92877     <function name="test_text_get" c:identifier="gtk_test_text_get">
92878       <return-value transfer-ownership="full">
92879         <type name="utf8" c:type="gchar*"/>
92880       </return-value>
92881       <parameters>
92882         <parameter name="widget" transfer-ownership="none">
92883           <type name="Widget" c:type="GtkWidget*"/>
92884         </parameter>
92885       </parameters>
92886     </function>
92887     <function name="test_text_set" c:identifier="gtk_test_text_set">
92888       <return-value transfer-ownership="none">
92889         <type name="none" c:type="void"/>
92890       </return-value>
92891       <parameters>
92892         <parameter name="widget" transfer-ownership="none">
92893           <type name="Widget" c:type="GtkWidget*"/>
92894         </parameter>
92895         <parameter name="string" transfer-ownership="none">
92896           <type name="utf8" c:type="gchar*"/>
92897         </parameter>
92898       </parameters>
92899     </function>
92900     <function name="test_widget_click" c:identifier="gtk_test_widget_click">
92901       <return-value transfer-ownership="none">
92902         <type name="boolean" c:type="gboolean"/>
92903       </return-value>
92904       <parameters>
92905         <parameter name="widget" transfer-ownership="none">
92906           <type name="Widget" c:type="GtkWidget*"/>
92907         </parameter>
92908         <parameter name="button" transfer-ownership="none">
92909           <type name="uint" c:type="guint"/>
92910         </parameter>
92911         <parameter name="modifiers" transfer-ownership="none">
92912           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
92913         </parameter>
92914       </parameters>
92915     </function>
92916     <function name="test_widget_send_key"
92917               c:identifier="gtk_test_widget_send_key">
92918       <return-value transfer-ownership="none">
92919         <type name="boolean" c:type="gboolean"/>
92920       </return-value>
92921       <parameters>
92922         <parameter name="widget" transfer-ownership="none">
92923           <type name="Widget" c:type="GtkWidget*"/>
92924         </parameter>
92925         <parameter name="keyval" transfer-ownership="none">
92926           <type name="uint" c:type="guint"/>
92927         </parameter>
92928         <parameter name="modifiers" transfer-ownership="none">
92929           <type name="Gdk.ModifierType" c:type="GdkModifierType"/>
92930         </parameter>
92931       </parameters>
92932     </function>
92933     <function name="text_anchored_child_set_layout"
92934               c:identifier="gtk_text_anchored_child_set_layout">
92935       <return-value transfer-ownership="none">
92936         <type name="none" c:type="void"/>
92937       </return-value>
92938       <parameters>
92939         <parameter name="child" transfer-ownership="none">
92940           <type name="Widget" c:type="GtkWidget*"/>
92941         </parameter>
92942         <parameter name="layout" transfer-ownership="none">
92943           <type name="TextLayout" c:type="GtkTextLayout*"/>
92944         </parameter>
92945       </parameters>
92946     </function>
92947     <function name="timeout_add" c:identifier="gtk_timeout_add">
92948       <return-value transfer-ownership="none">
92949         <type name="uint" c:type="guint"/>
92950       </return-value>
92951       <parameters>
92952         <parameter name="interval" transfer-ownership="none">
92953           <type name="uint32" c:type="guint32"/>
92954         </parameter>
92955         <parameter name="function"
92956                    transfer-ownership="none"
92957                    scope="call"
92958                    closure="2">
92959           <type name="Function" c:type="GtkFunction"/>
92960         </parameter>
92961         <parameter name="data" transfer-ownership="none">
92962           <type name="any" c:type="gpointer"/>
92963         </parameter>
92964       </parameters>
92965     </function>
92966     <function name="timeout_add_full" c:identifier="gtk_timeout_add_full">
92967       <return-value transfer-ownership="none">
92968         <type name="uint" c:type="guint"/>
92969       </return-value>
92970       <parameters>
92971         <parameter name="interval" transfer-ownership="none">
92972           <type name="uint32" c:type="guint32"/>
92973         </parameter>
92974         <parameter name="function" transfer-ownership="none" scope="call">
92975           <type name="Function" c:type="GtkFunction"/>
92976         </parameter>
92977         <parameter name="marshal"
92978                    transfer-ownership="none"
92979                    scope="notified"
92980                    closure="3"
92981                    destroy="4">
92982           <type name="CallbackMarshal" c:type="GtkCallbackMarshal"/>
92983         </parameter>
92984         <parameter name="data" transfer-ownership="none">
92985           <type name="any" c:type="gpointer"/>
92986         </parameter>
92987         <parameter name="destroy" transfer-ownership="none" scope="call">
92988           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
92989         </parameter>
92990       </parameters>
92991     </function>
92992     <function name="timeout_remove" c:identifier="gtk_timeout_remove">
92993       <return-value transfer-ownership="none">
92994         <type name="none" c:type="void"/>
92995       </return-value>
92996       <parameters>
92997         <parameter name="timeout_handler_id" transfer-ownership="none">
92998           <type name="uint" c:type="guint"/>
92999         </parameter>
93000       </parameters>
93001     </function>
93002     <function name="tree_get_row_drag_data"
93003               c:identifier="gtk_tree_get_row_drag_data">
93004       <doc xml:whitespace="preserve">Obtains a @tree_model and @path from selection data of target type
93005 %GTK_TREE_MODEL_ROW. Normally called from a drag_data_received handler.
93006 This function can only be used if @selection_data originates from the same
93007 process that's calling this function, because a pointer to the tree model
93008 is being passed around. If you aren't in the same process, then you'll
93009 get memory corruption. In the #GtkTreeDragDest drag_data_received handler,
93010 you can assume that selection data of type %GTK_TREE_MODEL_ROW is
93011 in from the current process. The returned path must be freed with
93012 gtk_tree_path_free().
93013 is otherwise valid</doc>
93014       <return-value transfer-ownership="none">
93015         <doc xml:whitespace="preserve">%TRUE if @selection_data had target type %GTK_TREE_MODEL_ROW and</doc>
93016         <type name="boolean" c:type="gboolean"/>
93017       </return-value>
93018       <parameters>
93019         <parameter name="selection_data" transfer-ownership="none">
93020           <doc xml:whitespace="preserve">a #GtkSelectionData</doc>
93021           <type name="SelectionData" c:type="GtkSelectionData*"/>
93022         </parameter>
93023         <parameter name="tree_model" transfer-ownership="none">
93024           <doc xml:whitespace="preserve">a #GtkTreeModel</doc>
93025           <type name="TreeModel" c:type="GtkTreeModel**"/>
93026         </parameter>
93027         <parameter name="path" transfer-ownership="none">
93028           <doc xml:whitespace="preserve">row in @tree_model</doc>
93029           <type name="TreePath" c:type="GtkTreePath**"/>
93030         </parameter>
93031       </parameters>
93032     </function>
93033     <function name="tree_row_reference_deleted"
93034               c:identifier="gtk_tree_row_reference_deleted">
93035       <doc xml:whitespace="preserve">Lets a set of row reference created by gtk_tree_row_reference_new_proxy()
93036 know that the model emitted the "row_deleted" signal.</doc>
93037       <return-value transfer-ownership="none">
93038         <type name="none" c:type="void"/>
93039       </return-value>
93040       <parameters>
93041         <parameter name="proxy" transfer-ownership="none">
93042           <doc xml:whitespace="preserve">A #GObject</doc>
93043           <type name="GObject.Object" c:type="GObject*"/>
93044         </parameter>
93045         <parameter name="path" transfer-ownership="none">
93046           <doc xml:whitespace="preserve">The path position that was deleted</doc>
93047           <type name="TreePath" c:type="GtkTreePath*"/>
93048         </parameter>
93049       </parameters>
93050     </function>
93051     <function name="tree_row_reference_inserted"
93052               c:identifier="gtk_tree_row_reference_inserted">
93053       <doc xml:whitespace="preserve">Lets a set of row reference created by gtk_tree_row_reference_new_proxy()
93054 know that the model emitted the "row_inserted" signal.</doc>
93055       <return-value transfer-ownership="none">
93056         <type name="none" c:type="void"/>
93057       </return-value>
93058       <parameters>
93059         <parameter name="proxy" transfer-ownership="none">
93060           <doc xml:whitespace="preserve">A #GObject</doc>
93061           <type name="GObject.Object" c:type="GObject*"/>
93062         </parameter>
93063         <parameter name="path" transfer-ownership="none">
93064           <doc xml:whitespace="preserve">The row position that was inserted</doc>
93065           <type name="TreePath" c:type="GtkTreePath*"/>
93066         </parameter>
93067       </parameters>
93068     </function>
93069     <function name="tree_row_reference_reordered"
93070               c:identifier="gtk_tree_row_reference_reordered">
93071       <doc xml:whitespace="preserve">Lets a set of row reference created by gtk_tree_row_reference_new_proxy()
93072 know that the model emitted the "rows_reordered" signal.</doc>
93073       <return-value transfer-ownership="none">
93074         <type name="none" c:type="void"/>
93075       </return-value>
93076       <parameters>
93077         <parameter name="proxy" transfer-ownership="none">
93078           <doc xml:whitespace="preserve">A #GObject</doc>
93079           <type name="GObject.Object" c:type="GObject*"/>
93080         </parameter>
93081         <parameter name="path" transfer-ownership="none">
93082           <doc xml:whitespace="preserve">The parent path of the reordered signal</doc>
93083           <type name="TreePath" c:type="GtkTreePath*"/>
93084         </parameter>
93085         <parameter name="iter" transfer-ownership="none">
93086           <doc xml:whitespace="preserve">The iter pointing to the parent of the reordered</doc>
93087           <type name="TreeIter" c:type="GtkTreeIter*"/>
93088         </parameter>
93089         <parameter name="new_order"
93090                    direction="out"
93091                    caller-allocates="0"
93092                    transfer-ownership="full">
93093           <doc xml:whitespace="preserve">The new order of rows</doc>
93094           <type name="int" c:type="gint*"/>
93095         </parameter>
93096       </parameters>
93097     </function>
93098     <function name="tree_set_row_drag_data"
93099               c:identifier="gtk_tree_set_row_drag_data">
93100       <doc xml:whitespace="preserve">Sets selection data of target type %GTK_TREE_MODEL_ROW. Normally used
93101 in a drag_data_get handler.</doc>
93102       <return-value transfer-ownership="none">
93103         <doc xml:whitespace="preserve">%TRUE if the #GtkSelectionData had the proper target type to allow us to set a tree row</doc>
93104         <type name="boolean" c:type="gboolean"/>
93105       </return-value>
93106       <parameters>
93107         <parameter name="selection_data" transfer-ownership="none">
93108           <doc xml:whitespace="preserve">some #GtkSelectionData</doc>
93109           <type name="SelectionData" c:type="GtkSelectionData*"/>
93110         </parameter>
93111         <parameter name="tree_model" transfer-ownership="none">
93112           <doc xml:whitespace="preserve">a #GtkTreeModel</doc>
93113           <type name="TreeModel" c:type="GtkTreeModel*"/>
93114         </parameter>
93115         <parameter name="path" transfer-ownership="none">
93116           <doc xml:whitespace="preserve">a row in @tree_model</doc>
93117           <type name="TreePath" c:type="GtkTreePath*"/>
93118         </parameter>
93119       </parameters>
93120     </function>
93121     <function name="true" c:identifier="gtk_true">
93122       <return-value transfer-ownership="none">
93123         <type name="boolean" c:type="gboolean"/>
93124       </return-value>
93125     </function>
93126     <function name="type_class" c:identifier="gtk_type_class">
93127       <return-value transfer-ownership="none">
93128         <type name="any" c:type="gpointer"/>
93129       </return-value>
93130       <parameters>
93131         <parameter name="type" transfer-ownership="none">
93132           <type name="Type" c:type="GtkType"/>
93133         </parameter>
93134       </parameters>
93135     </function>
93136     <function name="type_enum_find_value"
93137               c:identifier="gtk_type_enum_find_value">
93138       <return-value transfer-ownership="full">
93139         <type name="EnumValue" c:type="GtkEnumValue*"/>
93140       </return-value>
93141       <parameters>
93142         <parameter name="enum_type" transfer-ownership="none">
93143           <type name="Type" c:type="GtkType"/>
93144         </parameter>
93145         <parameter name="value_name" transfer-ownership="none">
93146           <type name="utf8" c:type="gchar*"/>
93147         </parameter>
93148       </parameters>
93149     </function>
93150     <function name="type_enum_get_values"
93151               c:identifier="gtk_type_enum_get_values">
93152       <return-value transfer-ownership="full">
93153         <type name="EnumValue" c:type="GtkEnumValue*"/>
93154       </return-value>
93155       <parameters>
93156         <parameter name="enum_type" transfer-ownership="none">
93157           <type name="Type" c:type="GtkType"/>
93158         </parameter>
93159       </parameters>
93160     </function>
93161     <function name="type_flags_find_value"
93162               c:identifier="gtk_type_flags_find_value">
93163       <return-value transfer-ownership="full">
93164         <type name="FlagValue" c:type="GtkFlagValue*"/>
93165       </return-value>
93166       <parameters>
93167         <parameter name="flags_type" transfer-ownership="none">
93168           <type name="Type" c:type="GtkType"/>
93169         </parameter>
93170         <parameter name="value_name" transfer-ownership="none">
93171           <type name="utf8" c:type="gchar*"/>
93172         </parameter>
93173       </parameters>
93174     </function>
93175     <function name="type_flags_get_values"
93176               c:identifier="gtk_type_flags_get_values">
93177       <return-value transfer-ownership="full">
93178         <type name="FlagValue" c:type="GtkFlagValue*"/>
93179       </return-value>
93180       <parameters>
93181         <parameter name="flags_type" transfer-ownership="none">
93182           <type name="Type" c:type="GtkType"/>
93183         </parameter>
93184       </parameters>
93185     </function>
93186     <function name="type_init" c:identifier="gtk_type_init">
93187       <return-value transfer-ownership="none">
93188         <type name="none" c:type="void"/>
93189       </return-value>
93190       <parameters>
93191         <parameter name="debug_flags" transfer-ownership="none">
93192           <type name="GObject.TypeDebugFlags" c:type="GTypeDebugFlags"/>
93193         </parameter>
93194       </parameters>
93195     </function>
93196     <function name="type_new" c:identifier="gtk_type_new">
93197       <return-value transfer-ownership="none">
93198         <type name="any" c:type="gpointer"/>
93199       </return-value>
93200       <parameters>
93201         <parameter name="type" transfer-ownership="none">
93202           <type name="Type" c:type="GtkType"/>
93203         </parameter>
93204       </parameters>
93205     </function>
93206     <function name="type_unique" c:identifier="gtk_type_unique">
93207       <return-value transfer-ownership="full">
93208         <type name="Type" c:type="GtkType"/>
93209       </return-value>
93210       <parameters>
93211         <parameter name="parent_type" transfer-ownership="none">
93212           <type name="Type" c:type="GtkType"/>
93213         </parameter>
93214         <parameter name="gtkinfo" transfer-ownership="none">
93215           <type name="TypeInfo" c:type="GtkTypeInfo*"/>
93216         </parameter>
93217       </parameters>
93218     </function>
93219   </namespace>
93220 </repository>